Glossary
Encrypted Client Hello

Encrypted Client Hello

Alex Khazanovich

HTTPS encrypts what you send to a website, but the first message of every connection has long named that website in plain text. Encrypted Client Hello (ECH) hides it, and it became an IETF standard in March 2026.

Key Takeaways

  • Encrypted Client Hello encrypts the sensitive parts of the TLS ClientHello, including the SNI hostname.
  • Browsers get ECH keys from DNS HTTPS records, so full privacy also needs encrypted DNS.
  • ECH replaced ESNI, which encrypted only the SNI and broke when its DNS keys went stale.
  • Cloudflare is the main CDN supporting ECH, and enterprises that filter by SNI need to adjust.

What Is Encrypted Client Hello?

Encrypted Client Hello is a TLS 1.3 extension that encrypts the ClientHello, the first message a browser sends during the TLS handshake. The browser sends an outer ClientHello with a generic server name and hides the real one in an encrypted inner ClientHello. ECH is defined in RFC 9849, and RFC 9848 covers how its keys are published in DNS.

{{cool-component}}

What SNI Leaks and Why ECH Was Developed to Fix It

Server Name Indication (SNI) tells a server which hostname the client wants, so one IP address can host many sites. TLS 1.3 already encrypts the server's certificate, and RFC 9849 calls SNI perhaps the most sensitive information still unencrypted. Anyone on the network path, from an ISP to a national censor, can read it to log, filter or block visits. ECH was developed to close that gap.

How ECH Works and What It Requires From the Infrastructure

  1. The site publishes an ECH configuration, with a public key and a public name, in its DNS HTTPS record.
  2. The browser looks up that record before connecting.
  3. It encrypts the real ClientHello inside an outer ClientHello that shows only the public name, such as cloudflare-ech.com.
  4. The client-facing server decrypts it and routes the connection to the right site.

If the keys are stale, the server returns fresh ones and the browser retries. The infrastructure needs TLS 1.3, DNS that serves HTTPS records, servers that hold and rotate ECH keys, and a certificate for the public name. OpenSSL 4.0 and NGINX 1.29.4 support ECH.

How ECH Differs From ESNI and What Changed

ESNI (Encrypted SNI), launched by Cloudflare and Firefox in 2018, encrypted only the SNI field, so extensions such as ALPN still leaked. Its keys sat in a TXT record, and when they went stale, connections failed. China's Great Firewall began blocking it in July 2020. ECH encrypts the whole inner ClientHello, uses standard HTTPS records and adds retries. Firefox 85 replaced ESNI with ECH in January 2021.

{{cool-component}}

What ECH Means for CDN Providers and Enterprise Security Teams

ECH works best at scale: the more sites share one public name, the less an observer learns. That concentration also makes ECH easy to spot: Russia began blocking Cloudflare ECH in November 2024. In a multi-CDN setup, each user's HTTPS record must match the CDN serving them, since each provider has its own keys and public name.

Enterprise firewalls and gateways that filter by SNI lose sight of real hostnames. A CDN WAF is unaffected, because the CDN terminates TLS and sees the full request. Weigh ECH alongside other security risks for CDN operations.

Conclusion

Encrypted Client Hello closes one of the last plaintext gaps in HTTPS. Its value depends on encrypted DNS and shared providers, so decide whether your network will support it or manage it by policy.

FAQs

Does ECH Require DNS over HTTPS to Work?

Not technically. ECH works with any resolver that returns HTTPS records, and Chrome can fetch them over regular DNS. But RFC 9849 says ECH needs encrypted DNS to protect privacy, since a plaintext query reveals the hostname anyway and an attacker can strip the ECH keys. DNS over HTTPS closes that gap.

Can Enterprise Firewalls Still Inspect Traffic When ECH Is Enabled?

Yes, with changes. Firewalls that decrypt and re-sign TLS still see the real hostname on managed devices, while those that only read SNI lose visibility. Cisco advises against blocking ECH with firewall rules and suggests disabling it through Chrome, Edge or Firefox policies, or stripping ECH keys from DNS responses.

Which CDN Providers Currently Support Encrypted Client Hello?

Cloudflare is the main one. ECH has been on by default for free plan zones since September 2024 and is opt-in on paid plans. Vercel added limited support in August 2026. Other major CDNs, including Fastly, Akamai, Amazon CloudFront and Google Cloud CDN, have not announced ECH support.

Does ECH Protect Against All Forms of TLS Traffic Analysis?

No. Observers still see the destination IP, the outer ClientHello and traffic timing and size. TLS fingerprinting can still profile the client from the outer handshake, and researchers have inferred visited domains from traffic patterns despite ECH. It hides the name, not the connection.

How Does ECH Interact With TLS Certificate Issuance?

Very little. Sites keep their usual TLS certificates, which TLS 1.3 already sends encrypted. The client-facing server also needs a certificate for its public name, which browsers use to trust refreshed keys. Hostnames still appear in public Certificate Transparency logs, so ECH hides which site you visit, not that it exists.

Published on:
October 26, 2026

Related Glossary

See All Terms
This is some text inside of a div block.