什么是 Shadow-TLS?
Shadow-TLS 是一种轻量级的代理插件(或称传输层协议)。它的核心思路是:在握手阶段,直接“透传”一个真实、合法网站的 TLS 握手包。简单来说,当审查者观察你的连接时,他看到的不是你在连接代理服务器,而是你在访问一个完全合法的网站(比如 www.microsoft.com 或 www.icloud.com)。只有当握手完成后,Shadow-TLS 才会通过特定的逻辑接管连接,传输实际的代理数据。
Shadow-TLS 的工作原理
Shadow-TLS 的运行涉及到三个角色:客户端、Shadow-TLS 服务端、以及受信任的远程网站(Decoy Server)。
- 握手阶段: 客户端发起请求,Shadow-TLS 服务端并不直接响应,而是将请求转发给一个真实的网站(例如 Microsoft 的服务器)。
- 身份复刻: 真实网站返回合法的 TLS 证书和握手响应,Shadow-TLS 服务端再把这些原封不动地传回给客户端。
- 流量切换: 此时,对于任何中间审查设备来说,你已经和 Microsoft 建立了合法的 TLS 连接。随后,Shadow-TLS 客户端利用预共享密钥(Password)在数据层进行验证,验证通过后,正式开始传输加密的代理流量。
为什么 Shadow-TLS 备受推崇?
1. 完美的指纹(Fingerprint)
很多协议(如旧版 Trojan 或普通 TLS)在握手特征上可能存在细微瑕疵,导致被 DPI(深度数据包检测)识别。由于 Shadow-TLS 使用的是真正的合法服务器证书,它的指纹与真实网站完全一致,达到了“无法辨伪”的效果。
2. 无需域名和证书申请
这是 Shadow-TLS 最大的便捷之处。传统的 TLS 代理(如 Trojan、VLESS+TLS)需要你自备域名并申请 SSL 证书。而 Shadow-TLS 不需要域名,它直接“借用”别人的证书。你只需要在配置里填上一个大厂的地址即可。
3. 极高性能与低开销
Shadow-TLS 本身不参与复杂的加解密计算(它只负责转发和简单的身份校验),因此对 CPU 的占用极低。在 v2/v3 版本引入多路复用后,其延迟表现也非常优秀。
Shadow-TLS vs. Xray REALITY
| 维度 | Shadow-TLS | Xray REALITY |
| 原理 | 侧重于“透传”真实 TLS 响应。 | 侧重于“消除”TLS 握手的特征漏洞。 |
| 部署难度 | 极低(无需配置 TLS 证书环境)。 | 中等(需配置 Xray 核心及具体参数)。 |
| 客户端支持 | Surge、Clash、Loon、Stash 等。 | 主要支持 Xray 内核的客户端。 |
| 隐蔽性 | 极高(利用现成合法流量)。 | 极高(目前公认的最强抗封锁技术之一)。 |
Shadow-TLS 并不是一个独立的代理协议,它更像是一个加强版的隐身斗篷。它解决了“流量像什么”的问题,让你的代理流量在逻辑上变成了合法的互联网行为。如果你正面临严重的网络干扰,或者厌倦了频繁维护域名证书,Shadow-TLS 配合 Shadowsocks 或 Trojan 使用,是一个兼顾速度与安全的顶级方案。