<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>tls13 on SecDoc</title>
    <link>https://secdoc.jazor.net/tags/tls13/</link>
    <description>Recent content in tls13 on SecDoc</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-cn</language>
    <copyright>© 2026 黑豆子</copyright>
    <lastBuildDate>Mon, 06 Jul 2026 00:00:00 +0800</lastBuildDate><atom:link href="https://secdoc.jazor.net/tags/tls13/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>TLS 1.3 加密客户端问候：ECH 实战指南</title>
      <link>https://secdoc.jazor.net/posts/tls13-encrypted-client-hello-ech-guide/</link>
      <pubDate>Mon, 06 Jul 2026 00:00:00 +0800</pubDate>
      
      <guid>https://secdoc.jazor.net/posts/tls13-encrypted-client-hello-ech-guide/</guid>
      <description>本文介绍 TLS 1.3 中的 Encrypted Client Hello (ECH) 扩展，如何解决 SNI 明文泄露隐私问题。
SNI 隐私问题 在 TLS 握手过程中，客户端发送的 ClientHello 消息包含 Server Name Indication (SNI) 扩展，用于告知服务器希望连接的域名。问题在于：SNI 是明文传输的，任何中间设备（如 ISP、代理、防火墙）都可以看到用户正在访问哪个域名。
1 2 3 4 ClientHello ├── SNI: example.com ← 明文暴露！ ├── supported_versions: TLS 1.3 └── cipher_suites: [...] 这意味着即使流量本身被加密，网络观察者仍能知道你访问了哪些网站。
ECH 解决方案 Encrypted Client Hello (ECH) 是 RFC 8446 的扩展，旨在加密 SNI 及其他敏感的 ClientHello 扩展。ECH 在 ClientHello 外层使用 ECH公钥 加密敏感的内部 ClientHello，只有目标服务器能解密。
工作原理 DNS 配置：服务器在 DNS 的 HTTPS 记录中发布 ECH 公钥 客户端加密：客户端使用 ECH 公钥加密敏感的 ClientHello 信息 服务器解密：服务器用私钥解密，确认 ECH 隧道建立成功 握手继续：后续握手正常进行，SNI 已被加密 1 2 3 4 5 6 7 8 Outer ClientHello (明文) ├── SNI: ech.</description>
    </item>
    
  </channel>
</rss>
