[์ด ๊ธฐ๋ฅ์ ๋ผ์ด์ ์ค ๋ฒ์ ๊ธฐ๋ฅ์
๋๋ค]
๋ผ์ด์ ์ค๊ฐ ํ์ํ ๋ถ์ [ํ๋ก๊ทธ๋จ ํค ๋ฐ๊ธ] ํ์ด์ง์์ 30์ผ ๋ผ์ด์ ์ค ๋ฐ๊ธ ๊ฐ๋ฅํฉ๋๋ค
ECDH๋ DH ์๊ณ ๋ฆฌ์ฆ๊ณผ ๊ฐ์ ํค ๊ตํ ๋๋ ํค ๋์ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
์ด ์๊ณ ๋ฆฌ์ฆ์ ECC ํค ์์ ์ด์ฉํด ์์ ๊ณผ ์๋๋ฐฉ๊ณผ์ ๋์นญํค๋ฅผ ์ป๊ธฐ ์ํ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
DH ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋น๊ตํ๋ฉด DH ๊ฒฝ์ฐ๋ ๋ณ๋์ ํ๋ผ๋ฏธํฐ๋ฅผ ์ฌ์ฉํ๊ฒ ๋๊ณ
ํ๋ผ๋ฏธํฐ ์์ฑ ์์ด ์ฌ์ฉํ ECC์์ ์ฌ์ฉํ๋ ๋๋ฉ์ธ ํ๋ผ๋ฏธํฐ๋ฅผ ์ ํ ํ๋ฉด ๋๋ค.
ECDH ๋ ECC ํค ์์ ์๋ ํ๋ผ๋ฏธํฐ ์ปค๋ธ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด๋ค.
์ฆ ECDH ๋ ECDSA ์์ ์ฌ์ฉํ๋ ํค๋ฅผ ๊ทธ๋๋ก ์ฌ์ฉํ๋ฉด ๋๋ค.
ECDH ์๊ณ ๋ฆฌ์ฆ ์ค๋ช
ECDH ๋ ๋ค์๊ณผ ๊ฐ์ ์์์ผ๋ก ๋ง๋ค์ด ์ง๋ค.
ECC ์์ฒด์ ์ํ์ ์ด๋ ต์ง๋ง ECDH ๊ฐ๋
์ ์ดํด์ ํ์ํ ์ํ์ ๊ฐ๋จํ๋ค.^^
G : ECC elliptice curve
์ด๋ ๊ฒ secret ๊ฐ์ a ์ b์ ๊ฐ์ ๊ฐ์ ๊ตฌํ๋ฉด ๋๋ค.
- Alice ECC ํค ์ ์์ฑ : {alicePrivKey, alicePubKey = alicePrivKey * G}
- Bob ECC ํค ์ ์์ฑ: {bobPrivKey, bobPubKey = bobPrivKey * G}
- Alice ์ Bob ์ ๋ณ๋์ ์ฑ๋์ ํตํ์ฌ ๊ณต๊ฐํค ๊ตํ
- Alice ๊ณต์ ํค ๊ณ์ฐ = bobPubKey * alicePrivKey
- Bob ๊ณต์ ํค ๊ณ์ฐ = alicePubKey * bobPrivKey
- Alice์ Bob ์ ๊ฐ์ ๊ณต์ ํค ๊ตฌํจ ( bobPubKey * alicePrivKey == alicePubKey * bobPrivKey )
ECDH ํค ๊ตํ ๊ฐ ๊ตฌํ๊ธฐ

๊ทธ๋ผ ECDH ๋ฅผ BerEditor ๋ฅผ ์ด์ฉํด ๊ฐ์ ๊ตฌํด ๋ณด์
BerEdior ๋ฅผ ์คํ ํ ์ํธ->ํค ๋์->ECDH ํญ์ ์ ํ ํ์
- ECC ํ๋ผ๋ฏธํฐ ์์ฑ
- A์ ๊ฐ์ธํค ์์ฑ
- A์ ๊ณต๊ฐํค ์์ฑ
- B์ ๊ฐ์ธํค ์์ฑ
- B์ ๊ณต๊ฐํค ์์ฑ
- A์ ๋น๋ฐํค ์์ฑ
- B์ ๋น๋ฐํค ์์ฑ
์ด๋ ๊ฒ ์์๋๋ก ์คํ์ ํด ๋ณด๋ฉด A์ ๋น๋ฐํค์ B์ ๋น๋ฐํค๋ ๊ฐ์ ๊ฐ์ด ๋์จ๋ค.
์ฌ์ค A์ ๋น๋ฐํค๋ A์ ๊ฐ์ธํค์ B์ ๊ณต๊ฐํค ๊ฐ๋ง ์์ผ๋ฉด ๊ตฌํด์ง๋ค.
๊ทธ๋ฆฌ๊ณ B์ ๋น๋ฐํค๋ B์ ๊ฐ์ธํค์ A์ ๊ณต๊ฐํค ๊ฐ๋ง์ผ๋ก ๊ตฌํด ์ง๋ค.
์ฐธ๊ณ ๋ก ์์์๋ ๋ณ๋๋ก ๋ฒํผ์ ๋ํ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ๋ค.
๊ณต๊ฐํค ์ฒดํฌ : ์ด๋ฏธ ์์ฑ๋ ๊ฐ์ธํค์ ๋ง๋ ๊ณต๊ฐ์ด ์ธ์ง ์ฒดํฌ
ํค ์ ์ฒดํฌ : ๊ฐ์ธํค์ ๊ณต๊ฐํค ์์ด ๋ง๋์ง ์ฒดํฌ
ํค์ ์์ฑ : ๊ฐ์ธํค์ ๊ณต๊ฐํค๋ฅผ ๋์์ ๊ฐ์ ์์ฑ
TLS ์์ ECDH ์ ECDHE ์ ๋ํ ์ดํด
์ฌ์ค TLS ๋ฅผ ์ฌ์ฉํ๋ค ๋ณด๋ฉด Cipher Suite ์์ ECDH ์ ECDHE ๋ผ๋ ๋ฌธ์๋ฅผ ๋ง๋๊ฒ ๋๋ค.
ECDH๋ ์ฌ์ค ์๋ฒ์ ECDSA ์ธ์ฆ์์ ํค๋ฅผ ๊ฐ์ง๊ณ ํค ๊ตํ์ ํ๋ ๊ฒ์ด๋ค.
์ฆ ์ฐ๊ฒฐ์ด ์์ ๋๋ง๋ค ๊ฐ์ ํค๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ค.
(์ฌ์ค ํด๋ผ์ด์ธํธ๋ ECDH๋ฅผ ์ฌ์ฉํด๋ ์๋กญ๊ฒ ECDH ํค๋ฅผ ๋ง๋ค๊ธฐ๋ ํ๋ค)
์๋ฒ์์ ๊ฐ์ ํค๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ฉด ๋ณด์ ๊ฐ๋๊ฐ ์ฝํด์ง๋ฏ๋ก
์๋ฒ์ชฝ์์๋ ๋งค๋ฒ ์๋ก์ด ํค์์ ๋ง๋ค์ด์ ์ฌ์ฉํ๋๊ฒ ECDHE ์ด๋ค.
์ด๋ ๊ฒ ECDH ๊ธฐ๋ฅ์ BerEditor๋ฅผ ์ด์ฉํด ๊ฐ๋จํ ๊ตฌํด ๋ณด์๋ค.
'Manual > BerEditor' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BerEditor] ์ ์ ์๋ช ๋ฐ ๊ฒ์ฆ ํ๊ธฐ (0) | 2023.06.12 |
---|---|
[BerEditor] Message Digest (Hash) ๊ธฐ๋ฅ ์ฌ์ฉ๋ฒ (0) | 2023.06.05 |
[BerEditor] OTP ( One Time Password ) ๊ธฐ๋ฅ์ ๊ดํด (0) | 2023.05.31 |
[BerEditor] DH (Diffie-Hellman ) Key Agreement ๊ธฐ๋ฅ (1) | 2023.05.30 |
[BerEditor] SSS(Sharmir's Secret Sharing) Scheme ์ ๋ํด์ (0) | 2023.05.25 |