오늘 끝나면
키 교환 문제
- ✓키 교환 문제의 핵심 문제를 한 문장으로 설명한다
- ✓오른쪽 실습에서 키이 어떻게 움직이는지 관찰한다
- ✓다음 강의와 이어지는 한계를 말할 수 있다
실습 미션
열쇠를 어떻게 몰래 건네나 — 디피-헬만(1976), 섞는 페인트 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.
성공 조건
- □실습의 기본값을 먼저 관찰
- □입력값이나 모드를 한 번 이상 바꿔 결과 비교
- □왜 결과가 바뀌었는지 한 문장으로 설명
암호 & 보안 · 06
키 교환
몰래 합의하기
공개된 채널에서, 도청자가 다 봐도 둘만의 비밀 키를 만들 수 있음. 이게 디피-헬만(1976)임. 비밀을 보내지 않고 비밀을 공유함.
암호를 쓰려면 먼저 같은 키가 필요함
5강에서 본 대칭키(AES)는 빠르고 강함. 근데 한 가지 발이 묶임. 둘이 같은 키를 미리 갖고 있어야 함.
그럼 그 키를 어떻게 먼저 나누나? 인터넷으로 보내면 도청자(이브)가 본 채로 다 가져감. 키를 보내는 순간 비밀이 아님.
만나서 직접 건네면 됨. 근데 처음 보는 서버끼리 만날 수가 없음.
공개된 채널에서, 도청자가 다 보는데도 둘만 아는 키를 만들어야 함. 불가능해 보이는데 가능함.
키를 보내는 순간 = 비밀이 아님
섞기는 쉽고 · 되돌리기는 어렵다
열쇠는 페인트의 한 가지 성질임. 섞기는 쉬운데 되돌리기는 어렵다는 것.
노랑에 파랑을 부으면 초록이 됨. 1초면 됨. 근데 그 초록만 보고 원래 노랑·파랑이 정확히 뭐였는지 다시 뽑아내라 하면? 사실상 못 함.
이게 일방향성임. 한쪽은 거저고 반대쪽은 막힘.
디피-헬만은 이 비대칭을 그대로 빌려옴. 진짜 암호에선 페인트 대신 큰 수의 거듭제곱이 그 역할을 함.
섞기 — 1초면 됨 ✓
되돌리기 — 사실상 불가능 ✕
비밀을 보내지 않고 · 비밀을 공유한다
핵심 트릭임. 공개색 하나를 정해두고, 각자 자기 비밀색을 섞어 그 혼합색만 서로 교환함.
그다음 받은 혼합색에 자기 비밀색을 한 번 더 섞음. 그러면 둘 다 공개색 + 앨리스비밀 + 밥비밀 이라는 똑같은 최종색에 도달함. 섞는 순서가 달라도 결과는 같음.
오른쪽에서 직접 해봄. 슬라이더로 둘의 비밀색을 바꾸고 교환을 단계별로 굴려도 앨리스·밥 최종색은 항상 똑같이 나옴. 비밀색 자체는 채널에 한 번도 안 나감.
이브는 다 봤는데도 못 맞춘다
이브는 채널을 통째로 도청함. 그래서 공개색도 갖고, 오가는 두 혼합색도 다 가짐. 숨긴 게 없는데 왜 못 맞추나?
최종색을 만들려면 마지막에 누군가의 비밀색을 한 번 더 섞어야 함. 근데 비밀색은 애초에 채널에 안 나갔음. 이브 손엔 없음.
혼합색에서 비밀색을 도로 뽑아내면 되지 않나? 그게 바로 02강의 일방향성임. 섞인 색은 되돌릴 수 없음. 그래서 이브는 마지막 한 수를 영원히 못 둠.
| 공개색 | 가짐 |
| 앨리스가 보낸 혼합색 | 가짐 |
| 밥이 보낸 혼합색 | 가짐 |
| 앨리스 비밀색 | 못 가짐 |
| 밥 비밀색 | 못 가짐 |
| 최종 공유색 (키) | 못 가짐 |
다 봐도 — 비밀색 한 번을 못 섞어 키를 못 만듦
이렇게 만든 공유색이 곧 키다
앨리스와 밥은 이제 똑같은 색 하나를 공유함. 이 색을 숫자로 바꾸면 둘만 아는 대칭키가 됨. 이걸로 5강의 AES를 돌리면 끝임.
정리하면 세 줄임. 일방향 성질이 열쇠고 · 비밀은 안 보내고 공유 비밀을 만들며 · 도청자는 다 봐도 최종 키를 못 구함.
이게 1976년 디피-헬만의 충격이었음. 만난 적 없는 둘이 공개된 선 위에서, 도청 속에서 비밀을 합의함. 다음 7강에선 한 걸음 더 나가 공개키(RSA)를 봄.