PKI/Cryptography

ECIES ์•Œ๊ณ ๋ฆฌ์ฆ˜

JayKim๐Ÿ™‚ 2022. 12. 9. 18:45

* ECIES(Elliptic Curve Integreated Encryption Scheme)
: ํ†ตํ•ฉ ์•”ํ˜ธํ™” ๋ฐฉ์‹(Public Key๋กœ ์•”ํ˜ธํ™”ํ•˜๊ณ  Private Key๋กœ ๋ณตํ˜ธํ™”)

ECIES ๋Š” ECC ํ‚ค๋ฅผ ์‚ฌ์šฉํ•ด ECDH ๋ฅผ ์ด์šฉํ•˜์—ฌ ํ‚ค ๊ตํ™˜ ํ›„ ๋Œ€์นญํ‚ค ์•”ํ˜ธํ™”๋ฅผ ํ•˜๋Š”๊ฒƒ์ด๋‹ค.

  1. Receiver loads the EC key (public/private/curve)
  2. Receiver sends its public key and curve to the Transmitter
  3. Transmitter generates a new ephemeral EC key on the curve
  4. Transmitter generates the shared symmetric key
  5. Transmitter encrypts the data and sends its public key and ciphertext to the Receiver
  6. Receiver generates the shared symmetric key
  7. Receiver descrypts the data

 

์˜ˆ์ œ ์†Œ์Šค

https://jykim74.tistory.com/77

 

[OpenSSL] ECIES ์˜ˆ์ œ

/* * Home: https://github.com/insanum/ecies * Author: Eric Davis */ #include #include #include #include #include #include #include #include #define err(fmt, ...) \ do { \ printf("ERROR:" fmt, ##__VA_ARGS__); \ exit(1); \ } while (0) #define log(fmt, ...) \

jykim74.tistory.com