아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
레딧 favicon레딧

SNI 암호화, TLS 핸드셰이크 보안을 강화하다!

by DD
2026-03-04
4개월 전
조회수 6

TLS 1.3에서 SNI(Server Name Indication)를 암호화하여 개인 정보 보호(Privacy)를 강화하는 기술

Encrypted Client Hello(ECH)는 클라이언트의 ClientHello 메시지를 서버의 공개 키로 암호화

Shared Mode와 Split Mode 두 가지 토폴로지(Topology)를 지원하며, 클라이언트-페이싱 서버(Client-Facing Server)와 백엔드 서버(Backend Server) 간의 역할 분담

GREASE ECH 메커니즘을 통해 ECH 미지원 서버와의 연결에서도 ECH 사용을 시뮬레이션하여 추적(Tracking) 방지

ECH(Encrypted Client Hello)의 핵심 원리

ECH는 ClientHelloOuter와 ClientHelloInner 두 가지 메시지를 활용하여 SNI를 보호한다. 클라이언트는 ClientHelloInner를 암호화하여 ClientHelloOuter에 담아 전송하며, 서버는 이를 복호화하여 ClientHelloInner를 획득한다. 이 과정에서 HPKE(Hybrid Public Key Encryption)를 사용하여 ClientHelloInner를 암호화하고, ClientHelloOuterAAD를 통해 무결성을 보장한다. 특히, ClientHelloOuter는 SNI를 포함하지 않아 중간자 공격(Man-in-the-Middle Attack)으로부터 안전하다.

ECH 구성 및 동작 방식

ECH는 ECHConfig를 통해 서버의 공개 키와 관련 메타데이터를 클라이언트에 제공한다. 클라이언트는 이 정보를 기반으로 ClientHelloInner를 생성하고, 이를 암호화하여 ClientHelloOuter를 구성한다. 서버는 ECHConfig를 사용하여 ClientHelloOuter를 복호화하고, ECH 지원 여부에 따라 ServerHello 또는 HelloRetryRequest를 전송한다. ECH가 거부될 경우, 클라이언트는 public_name을 사용하여 서버를 인증하고, 재시도를 수행한다.

GREASE ECH를 통한 추적 방지

GREASE ECH는 ECH를 지원하지 않는 서버와의 연결에서도 ECH를 시뮬레이션하여 ECH 사용 여부(ECH Usage)를 숨기는 기술이다. 클라이언트는 GREASE 값을 사용하여 encrypted_client_hello 확장을 전송하고, 서버는 이를 무시한다. 이를 통해 ECH를 사용하는 클라이언트와 그렇지 않은 클라이언트 간의 차이를 줄여 추적(Tracking)을 어렵게 만든다. 특히, HelloRetryRequest 발생 시에도 동일한 값을 유지하여 ECH 사용 여부를 숨긴다.

보안 고려 사항 및 공격 완화

ECH는 다양한 보안 공격에 대한 완화 메커니즘을 포함한다. ClientHelloOuterAAD를 사용하여 ClientHelloOuter의 무결성을 보장하고, config_id를 랜덤하게 생성하여 구성 식별자(Configuration Identifiers)를 숨긴다. 또한, 패딩(Padding)을 통해 ClientHelloInner의 길이 정보를 숨기고, HelloRetryRequest Hijack Mitigation 등 다양한 공격에 대한 방어 기법을 제공한다. 이러한 조치들을 통해 SNI 암호화(SNI Encryption)의 안전성을 확보한다.

RFC 9849. TLS Encrypted Client Hello
고급
아키텍처
TLS
HPKE
Security
원문 읽기
원문 읽기

댓글 0

첫 번째 댓글을 남겨보세요!

관련 추천 글

TLS 핸드셰이크(TLS Handshake) 과정, 그림으로 쉽게 이해하기

레딧 로고

macOS 27, 네트워크 설정 대격변: AFP는 안녕, TLS 1.2는 필수!

해커뉴스 로고

클라우드플레어(Cloudflare), 2029년까지 양자 보안(Post-Quantum Security) 완성을 목표로!

해커뉴스 로고

TLS 인증서 만료, 이제 KrakenKey로 간편하게 관리하세요!

데브투 로고

H&R Block, 세금 소프트웨어에 백도어 의혹?

랍스타즈 로고

ECH, 검열 우회와 보안 강화에 기여할까?

해커뉴스 로고
레딧 favicon레딧
고급
아키텍처
TLS
HPKE
Security

관련 추천 글

TLS 핸드셰이크(TLS Handshake) 과정, 그림으로 쉽게 이해하기

레딧 로고

macOS 27, 네트워크 설정 대격변: AFP는 안녕, TLS 1.2는 필수!

해커뉴스 로고

클라우드플레어(Cloudflare), 2029년까지 양자 보안(Post-Quantum Security) 완성을 목표로!

해커뉴스 로고