Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ์๋ฆฌ์ ์์ฉ์ ๋ํ ์ฌ์ธต ๋ถ์


Intro
Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ๋ฐ์ดํฐ ํต์ ์์ ๋น๋ฐ ํค๋ฅผ ์์ ํ๊ฒ ๊ณต์ ํ๋ ์ค์ํ ๋ฐฉ๋ฒ์ด๋ค. ์ด ์๊ณ ๋ฆฌ์ฆ์ ์๋ก์ ๋น๋ฐ ์ ๋ณด๋ฅผ SMS ์ ๊ฐ์ ์ฑ๋์ ํตํด ๋ ธ์ถํ์ง ์๊ณ ๋ ๊ณต์ ํ ์ ์๊ฒ ๋์์ค๋ค. ์ด๋ฌํ ํน์ฑ ๋๋ถ์ ์ ๋ณด ๋ณด์์์ ์ค์ํ ์ญํ ์ ํ๋ฉฐ, ํนํ ์ํธํํ ๋ฐ ๋์งํธ ํํ ๊ฑฐ๋์์ ๊ทธ ์ด์ฉ๋๊ฐ ํฌ๊ฒ ์ฆ๊ฐํ๊ณ ์๋ค.
์ด ๊ธ์์๋ Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ์ด ์๋ฆฌ์์๋ถํฐ ์์ํ์ฌ, ์ํ์ ๋ฐฐ๊ฒฝ, ๋ค์ํ ์์ฉ ์ฌ๋ก, ๊ทธ๋ฆฌ๊ณ ์ด ๊ธฐ์ ์ ํ๊ณ ๋ฐ ๋ฏธ๋ ๊ฐ๋ฅ์ฑ๊น์ง ํญ๋๊ฒ ๋ค๋ฃฐ ๊ฒ์ด๋ค.
์ํธํํ ์์ฅ ๋ํฅ
Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ์ํธํํ์ ๊ธฐ์ด ๊ธฐ์ ๋ก ๋ง์ ์ฃผ๋ชฉ์ ๋ฐ๊ณ ์๋ค. ๋นํธ์ฝ์ธ, ์ด๋๋ฆฌ์ ๊ฐ์ ์ํธํํ๋ ์๋ฒ๊ฐ ์๋ ๊ฑฐ๋๋ฅผ ๊ฐ๋ฅํ๊ฒ ํจ์ผ๋ก์จ ์ฌ์ฉ์์ ๊ฐ์ธ ์ ๋ณด ๋ณดํธ๋ฅผ ๋์ด๊ณ ์๋ค.
์ต์ ํธ๋ ๋ ๋ถ์


์ต๊ทผ ๋ช ๋ ๋์ ๋ธ๋ก์ฒด์ธ ๊ธฐ์ ๊ณผ ์ํธํํ ์์ฅ์ ๊ธ๊ฒฉํ ๋ณํ๋ฅผ ๊ฒช๊ณ ์๋ค. ํนํ:
- ํ์ค์ํ ๊ฑฐ๋์์ ๋ถ์: ๊ฑฐ๋์๋ ์ ์ ๋ ๊ณ ๋ฆฝ๋ ํ์ฌ๋ค์ด ์๋๋ผ ์ฌ์ฉ์๋ค์ด ์ง์ ์ด์ํ๋ ํ๋ซํผ์ผ๋ก ์ด๋ํ๊ณ ์๋ค.
- ์ค๋งํธ ๊ณ์ฝ์ ์ธ๊ธฐ: ์ด๋๋ฆฌ์๊ณผ ๊ฐ์ ํ๋ซํผ์์๋ ์ํธ ์์ฉ์ด ๊ฐ๋ฅํด์ง๋ฉด์, ์ฌ์ฉ์ ๊ฐ ์ ๋ขฐ๋ฅผ ๋ฐํ์ผ๋ก ํ ๊ณ์ฝ์ด ๊ฐ๋ฅํด์ก๋ค.
์ด์ฒ๋ผ ์ํธํํ ์์ฅ์ ๋์์์ด ๋ณํํ๋ฉฐ, ์ค๊ฐ์๋ฅผ ์ ๊ฑฐํ๊ณ ๊ฑฐ๋์ ์์ ์ฑ์ ๋์ด๋ ๋ฐฉํฅ์ผ๋ก ๋์๊ฐ๊ณ ์๋ค. ์ด ๊ณผ์ ์์์ Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ด ์ด๋ป๊ฒ ๊ธฐ์ฌํ๋์ง๋ฅผ ์ดํดํ๋ ๊ฒ์ ๋งค์ฐ ์ค์ํ๋ค.
์ฃผ์ ์ํธํํ ํํฉ
ํ์ฌ ์์ฅ์์ ๊ฐ์ฅ ๋๋๋ฌ์ง ์ํธํํ๋ ๋ค์๊ณผ ๊ฐ๋ค:
- ๋นํธ์ฝ์ธ (Bitcoin): ๋์งํธ ๊ธ์ผ๋ก ๋ถ๋ฆฌ๋ฉฐ, ์์ฅ์์์ ์ง๋ฐฐ๋ ฅ์ ์ ์งํ๊ณ ์๋ค.
- ์ด๋๋ฆฌ์ (Ethereum): ์ค๋งํธ ๊ณ์ฝ ํ๋ซํผ์ผ๋ก์ ๋ง์ ์ ํ๋ฆฌ์ผ์ด์ ์ด ๊ตฌ์ถ๋๊ณ ์๋ค.
- ๋ฆฌํ (Ripple): ๊ธ์ต ๊ฑฐ๋๋ฅผ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌํ ์ ์๋ ์๋ฃจ์ ์ ์ ๊ณตํ๋ค.
์ด ์ธ์๋ ์๋ง์ ์ฝ์ธ๋ค์ด ์์ผ๋ฉฐ, Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ์ด๋ฌํ ๋ชจ๋ ๊ฑฐ๋์ ์์ ์ฑ์ ๋์ด๋ ์ค์ํ ์ญํ ์ ํ๋ค.


"๋น๋ฐ ํค ๊ณต์ ์ ์๋ฆฌ๋ฅผ ์ดํดํ๋ ๊ฒ์ ์ค๋๋ ๊ธ๋ณํ๋ ์ ๋ณด ๋ณด์ ํ๊ฒฝ์์ ๋งค์ฐ ์ค๋ํ ๊ฐ์น๊ฐ ์๋ค."
๋ค์ ์น์ ์์๋ Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ๋ณธ ์๋ฆฌ์ ์ํ์ ๋ฐฐ๊ฒฝ์ ๋ค๋ฃฐ ์์ ์ด๋ค. ์ดํด๋ฅผ ๋๊ธฐ ์ํด ๋ค์ํ ์ฌ๋ก๋ฅผ ์ถ๊ฐํ์ฌ ๋ ์๋ค์ด ์ค์ ๋ก ์ด๋ค ๋ฐฉ์์ผ๋ก ์ด ๊ธฐ์ ์ด ์ ์ฉ๋๋์ง๋ฅผ ์ดํด๋ณด๊ฒ ๋ค.
Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ ๊ฐ์
Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ์์ ํ ํต์ ์ ์ํ ์ค์ํ ๊ธฐ๋ฒ์ผ๋ก, ๋ ์ฌ์ฉ์๊ฐ ๋น๋ฐ ํค๋ฅผ ๊ณต์ ํ ์ ์๋ ํ์ ์ ์ธ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค. ํ๋์ ์ ๋ณด ๋ณด์ ๋ถ์ผ์์ ํ์์ ์ธ ์ญํ ์ ๋งก๊ณ ์๋ ์ด ์๊ณ ๋ฆฌ์ฆ์ ์ฌ๋ฌ ์ฐ์ ์์ ๋๋ฆฌ ์ด์ฉ๋๊ณ ์๋ค. ๊ธฐ๋ณธ์ ์ธ ์ดํด ์์ด ์ด ์๊ณ ๋ฆฌ์ฆ์ ์๋ ์๋ฆฌ๋ฅผ ์ดํดํ๊ธฐ๋ ์ฝ์ง ์๋ค. ๋ฐ๋ผ์ ์ด ๋ ผ์์์๋ ๊ธฐ๋ณธ ์ ์์ ์ญ์ฌ์ ๋ฐฐ๊ฒฝ์ ํตํด ์ด ์๊ณ ๋ฆฌ์ฆ์ ๋ํ ๊น์ ์์์ ์ ๊ณตํ ๊ฒ์ด๋ค.
๊ธฐ๋ณธ ์ ์
Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ 1976๋ ์ ๋ฐ๋ช ๋ ๊ฒ์ผ๋ก, ๋ณธ์ง์ ์ผ๋ก ์ ๋ณด๋ฅผ ์ํธํํ๊ธฐ ์ํ ๊ธฐ๋ณธ ํ๋ซํผ์ ์ ๊ณตํ๋ค. ์ด ์๊ณ ๋ฆฌ์ฆ์ ํต์ฌ์ ๋ ์ฌ์ฉ์๊ฐ ๋น๊ณต์์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก ๊ณต์ ํ๊ณ ์ ํ๋ ๋ฐ์ดํฐ๋ ์ ๋ณด๋ฅผ ๋ณดํธํ๊ธฐ ์ํด ๊ณ์ฐํ๋ ๋น๋ฐ ํค์ด๋ค. ์ด ํค๋ ๊ณต๊ฐ ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก ์์ฑ๋๋ฉฐ, ์ 3์๊ฐ ์ ๊ทผํ๊ธฐ ์ด๋ ต๋๋ก ์ค๊ณ๋์ด ์๋ค. ์ด ๊ธฐ์ ์ ๊ธฐ๋ฐ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด, ๋ณด์์ฑ์ด ์๊ตฌ๋๋ ๋ค์ํ ์์คํ ์์ ํ์์ ์ผ๋ก ์ ์ฉ๋๋ค. ๋ฐ๋ผ์ Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ์ดํด๋ ํ๋ ์ ๋ณด ๊ธฐ์ ์ ๊ตฌํ๊ณผ ์ด์์ ์์ด ๋งค์ฐ ์ค์ํ๋ค.
์ญ์ฌ์ ๋ฐฐ๊ฒฝ


Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ๋ ๋ช ์ ์ํธํ์, Whitfield Diffie์ Martin Hellman์ ์ํด ์ ์๋์๋ค. ์ด๋ค์ ์๋ก ๋ค๋ฅธ ์์น์ ์๋ ์ฌ์ฉ์๊ฐ ๋น๋ฐ ํค๋ฅผ ์์ ํ๊ฒ ๊ตํํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ชจ์ํ์๋ค. ๊ทธ ๋น์๋ ์ ๋ณด ๋ณด์์ ๊ธฐ์ ๊ณผ ์ ๋ถ์ ์์ด ๋งค์ฐ ์ค์ํ ๋ฌธ์ ์๋๋ฐ, ์ด๋ ค์ด ์ํฉ ์์์ ์๋ก์ด ์์ด๋์ด๊ฐ ํ์ํ๊ฒ ๋์๋ค. ์ด ์๊ณ ๋ฆฌ์ฆ์ด ๋ฐํ๋ ์ดํ, ๊ทธ๊ฒ์ ๊ธฐ์กด์ ๋์นญํค ์ํธํ ๋ฐฉ์์์ ๋ฐ์ํ ์ ์๋ ์ฌ๋ฌ ๊ฐ์ง ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ธฐ์ค์ผ๋ก ์๋ฆฌ์ก๊ฒ ๋์๋ค.
Diffie-Hellman์ ํน์ ํ ๋ฌธ์ ํด๊ฒฐ ๋ฐฉ์์ผ๋ก ํ์ธ์ ์ ๊ทผ์ ๋ฏธ๋ฆฌ ์ฐจ๋จํ ์ ์์์ผ๋ฉฐ, ์ด๋ก ์ธํด ๋ณด๊ณ ๋ ์๋ง์ ๊ณต๊ฒฉ ์ฌ๋ก ์์์๋ ์์ ์ฑ์ ์ธ์ ๋ฐ์๋ค. ์ด๋ ํ์ ๋ค์ํ ๋ถ์ผ์์์ ์ํธ ๊ธฐ์ ๋ฐ์ ์ ์ค์ํ ๊ธฐ์ด๊ฐ ๋์๋ค. ์ญ์ฌ๋ฅผ ๋์๋ณด๋ฉด, ์ ๋ณด ๋ณดํธ์ ํ์์ฑ๊ณผ ํ์ ๊ทธ ์์ฒด๊ฐ ํ๋ฐ ์ฎ์ฌ ์๋ ๋ชจ์ต์ด ์ธ์์ ์ด ๋ค.
์ํ์ ์๋ฆฌ์ ๊ธฐ์ด
Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ์ํ์ ์๋ฆฌ๋ ์ด ์๊ณ ๋ฆฌ์ฆ์ ํต์ฌ์ ์ด๋ฃจ๋ ๋ถ๋ถ์ด๋ค. ์ด ์น์ ์์๋ ๋ชจ๋๋ฌ ์ฐ์ , ์์์ ์ญํ , ๊ทธ๋ฆฌ๊ณ ๋น๋ฐ ํค ์์ฑ ๊ณผ์ ์ ๋ํด ๋ค๋ฃจ๋ฉฐ, ์๊ณ ๋ฆฌ์ฆ์ ์ ๋ขฐ์ฑ๊ณผ ์์ ์ฑ์ ์ ๊ณตํ๋ ๋ค์ํ ์์๋ค์ ์ฌ์ธต์ ์ผ๋ก ์ดํด๋ณด๊ฒ ๋ค. ์ด๋ฌํ ๊ธฐ์ด ๊ฐ๋ ์ ์ดํดํ๋ ๊ฒ์ Diffie-Hellman ์๊ณ ๋ฆฌ์ฆ์ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํ๊ณ ์์ ํ ํต์ ์ ๊ฐ๋ฅ์ผ ํ๋ ๋ฐ ํ์์ ์ด๋ค.
๋ชจ๋๋ฌ ์ฐ์ ์ ์ดํด
๋ชจ๋๋ฌ ์ฐ์ ์ ํน์ ํ ์(๋ชจ๋๋ก)์ ๋ํ ๋๋จธ์ง๋ฅผ ๋ค๋ฃจ๋ ์ํ์ ์ฐ์ฐ์ด๋ค. ์๋ฅผ ๋ค์ด, 17๋ฅผ 5๋ก ๋๋๋ค๋ฉด, ๊ทธ ๋๋จธ์ง๋ 2๊ฐ ๋๋ค. ์ด๋ฌํ ํน์ฑ์ ํ์ฉํจ์ผ๋ก์จ ์ฐ๋ฆฌ๊ฐ ์ฒ๋ฆฌํ๋ ์ซ์๋ค์ ์ค์ ๋ก ๋งค์ฐ ์ปค์ง๋๋ผ๋, ๊ทธ ๊ณ์ฐ ๊ฒฐ๊ณผ๋ฅผ ์๋์ ์ผ๋ก ์์ ์ซ์๋ก ๋์ฒดํ ์ ์๋ค. ์ด ๋ฐฉ๋ฒ์ ํจ์จ์ฑ๊ณผ ๊ณ์ฐ ์๋๋ฅผ ๋์ด๋ ๋ฐ ํฐ ์ญํ ์ ํ๋ค.
- ๋ชจ๋๋ฌ ์ฐ์ ์ ์ค์์ฑ:
- ํฐ ์ซ์๋ฅผ ๋ค๋ฃจ๋ ๋์ ์์ ์ซ์๋ก ๊ณ์ฐ์ด ๊ฐ๋ฅ
- ์ํ์ ๋์นญ์ฑ์ผ๋ก ์ธํด ๋ณด์์ฑ์ ๊ฐํ
plaintext ์์: 7 mod 3 = 1 (7์ 3์ผ๋ก ๋๋ ๋ ๋๋จธ์ง)











