IPIPCombo
术语表

Encrypted Client Hello(ECH)

TLS 1.3 扩展,把 SNI 加密,让网络观察者看不到你访问的站点。

Encrypted Client Hello(ECH,draft-ietf-tls-esni)是 TLS 1.3 扩展,用 DNS HTTPS 记录里发布的公钥加密 SNI 字段——以及整个 ClientHello。当你连接一个 Cloudflare 托管的站点时,浏览器先查找父域的 ECH 公钥,然后用它加密内层 ClientHello(含真实 SNI)。外层 ClientHello 只暴露外层 SNI(通常是 Cloudflare 的前置域),真实目的地藏在加密负载里。

当前支持:Cloudflare 1.1.1.1(解析器侧),以及任何发布了 ECH 密钥的 Cloudflare 前置站点(服务端)。Firefox 从 118 版(2023 年 10 月,带 network.ECHConfig.enabled 选项)开始支持。Chrome 在 120 版后用 flag 推出,2024 年开始对合格解析器的用户默认开启。没有返回 ECH 密钥的支持 DoH 的解析器,浏览器会回退到未加密 SNI 路径。

ECH 之所以重要,是因为 SNI 是 TLS 连接里最后一段未加密的域名。一旦 IP 被拿到,证书里反正会暴露目的服务器,但其他所有字段都被隐藏。有了 ECH,网络只能看到你在和 Cloudflare 前置通信,看不到 Cloudflare 几百万客户里的哪一个。对处于基于 SNI 审查下的用户(GFW 封禁特定 SNI 而非 IP),ECH 移除了区分点。

相关术语

Encrypted Client Hello(ECH) — 术语 · IPCombo