Перейти к содержимому
ecdsa.com

ECH (Encrypted Client Hello)

Расширение TLS 1.3 из RFC 9849, которое шифрует настоящий ClientHello, включая имя сервера, ключом, опубликованным в DNS, так что в сети видно только общее публичное имя (public name).
Другие написанияECHEncrypted ClientHelloESNIRFC 9849

Оператор сервера публикует конфигурацию ECH (открытый ключ HPKE, публичное имя и параметры) в параметре ech HTTPS-записей DNS (RFC 9848, поверх RFC 9460). Клиент отправляет внешний ClientHello, адресованный публичному имени (например, общему хосту CDN), а внутри него, в расширении 0xfe0d, — зашифрованный внутренний; сервер расшифровывает его и продолжает с параметрами внутреннего. Если ключи устарели, сервер возвращает новые, и клиент повторяет попытку.

ECH что-то скрывает, только если многие сайты используют одного провайдера, а сам DNS-запрос защищён (DoH или DoT); иначе запрос HTTPS-записи раскрывает имя. Cloudflare широко включил ECH в 2023 году; Firefox использует его по умолчанию с версии 119 (вместе с DNS over HTTPS), Chrome начал внедрять его в версии 117, а nginx и другие серверы получили поддержку позже. Сети, которые фильтруют трафик по SNI, лишаются этой информации, поэтому некоторые компании блокируют ECH.

Стандарты и ссылки

Все термины