암호 기술의 기초와 응용

TLS에서 서버 인증서의 개인 키가 나중에 유출되더라도 그 이전에 기록된 통신은 복호화되지 않는 성질(전방향 안전성)을 얻을 수 있는 키 교환 방법은?

  1. A연결마다 일회용 값을 만들어 수행하는 ECDHE 등의 키 교환
  2. B클라이언트가 만든 키 재료를 서버 인증서의 RSA 공개 키로 암호화하여 보내는 방식
  3. C서버와 클라이언트가 미리 정한 같은 대칭 키를 모든 연결에서 계속 사용하는 방식
정답과 해설 보기

정답: A. 연결마다 일회용 값을 만들어 수행하는 ECDHE 등의 키 교환

ECDHE의 마지막 E는 에페메랄(일회용)이라는 의미로, 연결마다 새로운 비밀 값으로 키 교환을 하고 끝나면 버립니다. 인증서의 개인 키는 서명에만 사용하므로, 나중에 유출되더라도 과거 연결의 공유 비밀은 계산할 수 없습니다. 반면 키 재료를 서버의 RSA 공개 키로 암호화하여 보내는 방식에서는 기록해 둔 통신과 나중에 유출된 개인 키가 있으면 과거의 통신을 모두 복호화할 수 있어 버립니다. TLS 1.3에서는 이 방식이 폐지되어, 키 교환은 전방향 안전성이 있는 (EC)DHE가 기본이 되었습니다(사전 공유 키만으로 연결을 재개하는 경우는 제외합니다).

이 분야 연습하기 분야로 돌아가기

암호 기술의 기초와 응용의 다른 문제

  1. ECDSA 디지털 서명에서는 서명마다 비밀 난수 k를 사용한다. k의 취급에 대한 설명으로 올바른 것은?
  2. 브라우저가 웹 서버의 인증서를 검증할 때의 인증서 체인에 대한 설명으로 올바른 것은?
  3. TLS 인증서 검증에서는 서명 체인과 유효 기간을 확인할 뿐만 아니라, 접속하려 한 호스트 이름이 인증서의 SAN(주체 대체 이름)에 포함되는지도 확인한다. 이 확인이 꼭 필요한 이유로 올바른 것은?
  4. 인증서 투명성(Certificate Transparency, CT) 구조에 대한 설명으로 올바른 것은?
  5. TLS 1.3(RFC 8446)에서 TLS 1.2로부터 바뀐 점으로 올바른 것은?