1) 키 배송문제(키 분배 문제)란?
대칭키 암호는 암호화/복호화에 같은 키(비밀키) 를 쓰는데, 문제는 이거예요:
“서로 통신하기 전에 그 비밀키를 안전하게 어떻게 전달하지?”
키를 전달하는 과정에서 도청/탈취되면 암호화가 무의미해집니다.
2) 키 배송문제 해결방법 비교표
| 해결방법 | 핵심 아이디어 | 장점 | 단점/주의 | 대표 예시 |
|---|---|---|---|---|
| 사전 공유(오프라인 전달) | 직접 만나서/안전 채널로 키 전달 | 단순하고 확실 | 규모 커지면 불가능(관리 지옥) | USB/대면 전달, 전용 보안채널 |
| 키 분배 센터(KDC) | 중앙 서버가 사용자에게 세션키 발급 | 대규모 사용자 관리 용이 | KDC가 공격/장애 나면 전체 영향(단일 장애점) | Kerberos(인증/세션키) |
| 공개키 암호로 세션키 전달(하이브리드) | 대칭키(세션키)를 공개키로 암호화해 전달 | 인터넷 환경에 적합, 널리 사용 | 공개키 신뢰(인증서) 필요 | HTTPS에서 RSA로 세션키 전달(개념) |
| Diffie-Hellman(DH) 키 교환 | 서로 공개 정보 교환으로 같은 세션키 생성 | 키 “전달” 없이도 키 합의 가능 | MITM 공격 위험 → 인증과 함께 사용 | DH/ECDH, TLS의 ECDHE |
| PKI(인증서) 기반 | CA가 공개키의 주인을 보증 | 신원 확인 + 안전한 키 교환 기반 | 인증서 관리 필요(발급/갱신/폐지) | SSL/TLS 인증서, 전자서명 |
3) 시험에 잘 나오는 “정답 느낌” 정리
실무와 시험 모두에서 가장 대표적인 해법은 이 조합이에요.
-
공개키 기반(PKI)으로 상대를 인증하고
-
DH(ECDHE) 또는 RSA로 세션키를 안전하게 합의/전달한 뒤
-
실제 데이터는 대칭키(AES) 로 빠르게 암호화
즉,
비대칭키는 “키 교환/인증”, 대칭키는 “데이터 암호화” 담당!
4) 초간단 예시(상황으로 이해)
-
A와 B가 채팅하려고 함
-
대칭키를 이메일로 보내면? → 도청되면 끝
-
그래서:
-
B가 인증서(공개키)로 “나 B 맞음” 증명(PKI)
-
A-B가 ECDHE로 세션키 합의(키 배송 없이도 생성)
-
그 세션키로 AES 암호화 채팅
-