비대칭키는 상대와 합의를 증명하고, 대칭키 AEAD가 실제 트래픽을 보호한다

“공개키로 HTTP를 암호화한다”가 아니라 handshake가 신원·공유 비밀·기록 무결성을 묶고 record layer가 파생된 키를 쓰는 구조다.

1. ClientHello지원 버전·AEAD/HKDF 조합과 임시 key share를 제안한다.
2. ServerHello선택값과 key share로 양쪽이 같은 handshake secret을 만든다.
3. CertificateVerify인증서 경로·서비스 이름을 검증하고 서명으로 개인키 보유와 transcript를 확인한다.
4. Finished파생 키로 전체 handshake 기록이 변조되지 않았음을 상호 확인한다.
5. Application records방향별 traffic key와 nonce로 각 record를 AEAD 보호한다.

인증서 + 서명

신뢰 경로, 서비스 신원, handshake 출처를 증명한다. 본문 암호가 아니다.

(EC)DHE

비밀을 전송하지 않고 공유 비밀에 도달하며 전방 비밀성을 제공한다.

HKDF + transcript

handshake·application, client·server 키를 목적별로 분리한다.

AEAD

record의 기밀성과 무결성을 함께 제공하고 변조를 탐지한다.

끝점 경계TLS는 전송 구간을 보호한다. 감염된 client/server와 애플리케이션 권한 버그는 막지 못한다.

메타데이터 경계record 길이와 통신 상대 같은 모든 메타데이터를 숨기는 프로토콜은 아니다.

0-RTT 경계early data는 재전송될 수 있으므로 비멱등 변경을 무조건 허용하지 않는다.