Program executes scalar multiplication on a provided x-coordinate point, P (input) and a provided 256-bit randomly generated private-key, d (input). The program defaults to the point (x=9) which is the base point for curve-25519. Inputs should be in hex (little endian). Program has only been tested on a few points using a variety of private-keys. User generates the user's public-key by Q=dP and provides it the another user. The other user provides their public-key which generates the shared-key, S=dQ. The shared-key is used to encrypt and decrypt messages shared between the two users using an algorithm such as AES (Advanced_Encryption_Standard). This program was not designed for high speed but executes rather quickly none the less. Program uses a Montgomery ladder for the scalar multiplication.
Had fun learning about elliptic curve cryptography. It was quite interesting to learn how point addition and scalar multiplication could be easily done and why the discrete logarithm reverse was so difficult. If anyone has any suggestions please let me know.
인용 양식
David Hill (2025). Curve25519 Shared-Key Generation GUI (https://www.mathworks.com/matlabcentral/fileexchange/73314-curve25519-shared-key-generation-gui), MATLAB Central File Exchange. 검색 날짜: .
MATLAB 릴리스 호환 정보
플랫폼 호환성
Windows macOS Linux카테고리
태그
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!버전 | 게시됨 | 릴리스 정보 | |
---|---|---|---|
1.0.0 |