키 배포 센터
From CS Wiki
- KDC, Key Distribute Center
- 대칭키 암호 구조에서 암호키의 안전한 공유를 위한 체계
- 대칭키 암호화
- 하나의 키로 암호화와 복호화를 모두 수행한다.
- 키 사전 공유
- 메시지를 전달하는 시점에 이미 비밀키가 안전하게 공유된 상대라면 문제가 없다.(Optimal)
- 하지만 사전에 키를 안전하게 공유하는 것이 어렵기에 키 배송 문제를 해결해야 한다.
- 키 배송 문제
- 메시지를 암호화해서 전달하기 위해선 키도 보내 줘야 한다.
- 키를 보내주는 과정에서 탈취당하면 메시지의 기밀성이 침해된다.
절차[edit | edit source]
- A는 키 배포 센터에 "B와 통신하고 싶다"라고 신청한다.
- 키 배포 센터는 데이터베이스로부터 A의 키와 B의 키를 꺼낸다.
- 키 배포 센터는 난수 생성기를 써서 임시 세션 키를 만든다.
- 키 배포 센터는 A의 키를 써서 세션 키를 암호화해서 A에게 보낸다.
- 키 배포 센터는 B의 키를 써서 세션 키를 암호화해서 B에게 보낸다.
- A는 키 배포 센터로부터 온 세션 키(A의 키로 암호화되어 있음)를 복호화해서 세션키를 얻는다.
- B는 키 배포 센터에서 온 세션 키(B의 키로 암호화되어 있음)를 복호화해서 세션 키를 얻는다.
- A는 세션 키를 써서 메시지를 암호화해서 B에게 보낸다.
- B는 세션 키를 써서 A에게 온 암호문을 복호화한다.
- A와 B는 세션 키를 삭제한다.