TLS 1.3 Defense Map
TLS는 인증된 키 교환으로 협상을 묶고, AEAD 레코드로 데이터를 보호한다
HTTPS에서 TLS는 단순 암호화가 아니다. 서버 인증서 검증, ECDHE 키 교환, handshake transcript 검증, AEAD record protection이 함께 맞아야 중간자 변조와 도청을 실패시킨다.
Client lane
SNI, ALPN, key_share를 내고 서버 증명을 검증한다.
ClientHello ↔ ServerHello
ECDHE 공유 비밀과 cipher suite가 정해진다.
Certificate + Verify
CA 체인과 transcript 서명이 서버 신원을 묶는다.
Finished
양쪽 transcript MAC이 중간자 변조를 닫는다.
Server lane
인증서와 handshake key로 협상 결과를 증명한다.
Application key
Handshake가 끝나면 record protection key로 전환한다.
HTTP payload는 AEAD nonce, tag와 함께 레코드 단위로
보호된다.
협상
무작위값, 버전, 알고리즘, 임시 공개키가 만난다.
인증
인증서 이름과 체인이 서버 신원 검사의 중심이다.
무결성
Finished가 앞선 메시지 전체를 해시로 묶는다.
레코드
애플리케이션 데이터는 AEAD tag 실패 시 폐기된다.
오해 방지: HSTS는 TLS handshake 단계가 아니라 브라우저의 HTTPS 강제 정책이다. TLS가 보호하는 것은 정상 검증된 연결의 내용과 협상 무결성이며, 모든 네트워크 메타데이터를 숨기는 기술은 아니다.