代理协议独立百科词条全生态兼容

Trojan + TLS

经典 HTTPS 伪装鼻祖 · 主动探测透明回落 · 跨平台客户端无死角支持

由 GreaterFire 于 2017 年首创提出[1],放弃传统的对称密文混淆思路,直接伪装成互联网最常见的合法 HTTPS 流量。 客户端与服务端进行标准的 TLS 握手[2],在加密隧道内校验密码; 遭遇未授权连接或审查防火墙主动探测时,透明回落(Fallback)至真实 Web 服务器(如 Nginx 或 Caddy)[3]。 奠定了现代翻墙协议防御主动探测的基础范式。

核心作者GreaterFire
正式发布2018.01.25
核心机制仿冒标准 HTTPS + 探测回落
历史地位现代翻墙协议 TLS 伪装范式开创者

日期辨析:2017 年 11 月立项构想 vs 2018 年 1 月 25 日 v1.0.0 正式发布

项目创建与构想公开2017.11.14

GreaterFire 在 GitHub 开源 trojan 项目,提出放弃传统纯密文混淆思路,完全假冒为标准互联网 HTTPS 流量。

正式发布 · v1.0.0 首个稳定版2018.01.25

发布 C++ 原生参考实现 v1.0.0,确立以 SHA-224 密码哈希认证与未授权主动探测透明回落为核心的协议体系。

Go 语言重构与全生态普及2020.05.02

p4gefau1t 开源 Trojan-Go,随后 V2Ray、Xray 与 sing-box 全面内置,Trojan 成为全平台客户端标配协议。

编写口径:Trojan 项目从诞生到流行经过多代演化,所有重要发布日期均以 GitHub 官方 Commit 与 Release 注记核验。

词条概览与核心定位

01

在 2017 年之前,翻墙工具普遍采用 Shadowsocks 类的“纯密文随机流”模式。然而随着机器学习算法在 GFW 的部署, 缺乏标准协议头、熵值(随机度)极高的非标准流量极易被统计学模型定点标记并进行重放或探针扫描。

Trojan 逆向思考:最安全的方式不是隐藏特征,而是表现得毫无特征。 它完全假借真实 Web 站点的身份,使用标准 443 端口与合法的 CA 证书进行 TLS 1.3 握手。 更为关键的是其透明回落(Pass-Through)机制:当防火墙使用探测脚本扫描服务器端口、或者审查员直接在浏览器打开域名时, Trojan 服务端会将其悄无声息地导向真实的 Web 服务,展示正常的博客或企业主页,彻底打消了审查系统的怀疑。

定位结论

Trojan + TLS 是翻墙技术发展史上最具里程碑意义的协议之一。尽管后续的 REALITY 免除了域名配置、Hysteria 2 强化了弱网, 但 Trojan 凭借极高的稳定性与全平台所有客户端 100% 支持的成熟度,至今仍是所有机场与自建用户最信赖的保底协议。

标准 HTTPS 与透明回落原理

02
1. 标准 TLS 1.2 / 1.3 加密包装层外层完全是符合 RFC 8446 标准的 TLS 握手,拥有合法机构签发的证书链; 在网络嗅探器看来,与全球数十亿正规 HTTPS 银行或电商网站没有任何二致。
2. 紧凑的密文认证与路由协议帧(Trojan Header)解密后的内层仅包含 56 字节的密码 SHA-224 十六进制哈希串以及目标请求地址; 无多余的对称协商开销,认证成功后双向流量无损透传。
3. 探测透明回落网关(Fallback Gateway)首包校验未通过或接收到非标准 Trojan 帧时,服务端不报错不断流, 直接透明转发给本地 Nginx / Caddy 的 80/8080 端口,返回真实的静态网页。

握手与回落详细流程

  1. TLS 客户端 ClientHello 握手客户端发起正常的 TLS 握手,携带自备域名的 SNI 标头,完成证书验证。
  2. 解密 Trojan 头部认证服务端在 TLS 隧道内读取第一包数据,匹配密码 SHA-224 哈希值。
  3. 分支 A:合法用户正常代理密码匹配成功,服务端根据目标地址发起 TCP/UDP 远程连接,开始转发数据。
  4. 分支 B:恶意探测透明回落密码错误或为常规 HTTP GET 请求,直接交由后端 Web 服务响应,表现为正常网站。

回落设计的重大意义

在 Trojan 之前,被探测的代理服务器通常会直接超时丢包或发送 RST 中断; 而这种“与普通网站不同的异常网络响应”恰恰成为了 GFW 封锁的铁证。 Trojan 的回落彻底消除了这一统计学异常!

精确到日的核验时间线(10 个关键节点)

03

所有节点均依据 GitHub 官方 Releases 发行注记与上游代码提交核验:

范式开创从纯密文走向 HTTPS 伪装:Trojan 的诞生(2017–2018)

Trojan 项目立项与核心思想公开

GreaterFire 在 GitHub 创建 trojan-gfw/trojan 仓库,直言不讳地指出“尝试隐藏特征永远落后于深度包检测,最安全的伪装就是成为真实的 HTTPS”。

核验来源:Trojan Initial Commit
创世纪里程碑

发布 Trojan v1.0.0 首个正式版本

官方 C++ 稳定版正式发布!确立 TLS 1.2/1.3 证书验证、SHA-224 密码校验与未授权流量透明回落给本地 Web 服务器的完整工作规范。

发布 Trojan v1.8.0:完善多路复用与并发连接

优化底层 Boost.Asio 异步事件模型,提升高并发网页请求时的连接复用率,降低频繁 TLS 握手的开销。

核验来源:Trojan v1.8.0 Release

发布 Trojan v1.13.0:经历数次封锁潮检验屹立不倒

在多次大型敏感事件的 GFW 严重封锁中,基于真实 HTTPS 证书的 Trojan 节点表现出惊人的存活率,引发全行业大规模从 Shadowsocks 转向 Trojan。

核验来源:Trojan v1.13.0 Release
生态大一统Trojan-Go 与多核心原生支持(2019–2021)

官方 C++ 版本发布 v1.16.0 最终维护分支

GreaterFire 完成核心架构定型并发布最终稳定版,协议设计完全成熟,社区开始主导后续生态发展。

核验来源:Trojan v1.16.0 Release

p4gefau1t 开源 Trojan-Go 项目

采用 Go 语言重写 Trojan,原生引入多路复用(smux)与 WebSocket 传输支持,使 Trojan 可以进一步挂载 CDN 运行。

V2Ray 与 Xray 原生内置 Trojan 协议

主流通用代理内核全面合并 Trojan 协议栈,用户无需单独编译安装 C++ 守护进程,直接通过同一统一配置文件管理。

经典常青抗特征演进与稳健保底基石(2022–2026)

sing-box 原生接入 Trojan 协议

新一代通用代理核心 sing-box 正式发布并标配 Trojan 入站与出站,保持卓越的内存利用率。

核验来源:sing-box Documentation

确立“全平台客户端 100% 兼容”保底地位

即便后期涌现出 REALITY 与 Hysteria 2 等前沿协议,Trojan 仍凭借无与伦比的跨平台通用性,成为任何机场与自建服务不可或缺的保底节点。

协议诞生 8 周年:HTTPS 伪装翻墙思想的开山鼻祖

Trojan 奠定的“主动探测透明回落到真实站点”理念,直接启发了后来的 VLESS Fallback、REALITY 以及现代抗审查体系。

生态实现与客户端兼容性

04

Trojan 是除 Shadowsocks 之外兼容性最强、支持软件最广的通用代理协议:

软件 / 内核类型支持平台支持级别起始版本发布日期特性支持与备注
Trojan 官方参考实现 (C++)核心内核Linux / macOS / Windows官方参考实现v1.0.02018.01.25GreaterFire 官方使用 C++ 开发的极简守护进程,基于 Boost.Asio 与 OpenSSL 构建,专注于高效率回落。
Trojan-Go核心内核全平台 (Linux / macOS / Windows / BSD)完整原生支持v0.5.02020.05.02p4gefau1t 使用 Go 语言深度重写的增强版,扩展支持 WebSocket 传输与多路复用。
Xray-core核心内核全平台 (Linux / Android / macOS / Windows)完整原生支持v1.0.02020.11.29Project X 原生支持 Trojan 协议入站与出站,支持与分流规则链及 XTLS 高级流控无缝衔接。
sing-box核心内核全平台 (Linux / Android / iOS / macOS / Windows)完整原生支持v1.0.02022.03.18SagerNet 团队原生接入 Trojan 协议栈,提供极速轻量内存控制与全平台通用分流。
Shadowrocket / Surge / Quantumult X客户端iOS / macOS出站客户端支持全系主流版本2019.06.15各大苹果生态代理工具 100% 完美支持 Trojan 协议,成为跨应用兼容性最好的标准协议之一。
Clash / Mihomo / v2rayN客户端Windows / Android / Linux出站客户端支持全系主流版本2019.08.20全平台主流图形客户端均全面兼容 Trojan 订阅节点格式与自定义证书校验参数。

适用场景与网络边界限制

05

最推荐使用场景:

  • 全平台多设备混用与保底备用:拥有老旧设备(旧款路由器、电视盒子、Surge 老版本)时的万能兼容协议。
  • 拥有正规自备域名与建站需求:前置搭建真实个人博客或静态官网,既能正规建站又能隐蔽代理。
  • 纯 TCP 端口环境:标准 443 端口在绝大多数封锁 UDP 的企事业单位网络中均可无障碍连接。

不适用或受限场景:

  • 不想购买自备域名的用户:必须自备合法域名并申请配置有效证书(此场景更推荐 VLESS REALITY)。
  • 极高丢包率普通网络:由于纯基于 TCP 传输,弱网抢带宽能力不如 Hysteria 2。

证书要求、嵌套 TLS 隐患与局限性

06

1. 证书有效性至关重要:客户端必须开启证书校验(allowInsecure=false), 若允许不受信任的自签证书,中间人防火墙可发起伪造证书阻断并确信该服务为翻墙代理。

2. 内部嵌套 TLS 特征(TLS in TLS):当用户通过 Trojan 访问外部 HTTPS 网站时,外层是 Trojan 的 TLS,内层是用户目标站点的 TLS。 若不使用 XTLS 类似流控,在特定握手阶段会暴露出内层 TLS ClientHello 的长度特征,这是后来 Project X 研发 XTLS Vision 的动力之一。

文献引注与第一手资料出处

07

百科词条中所有架构数据、算法定义及发布时间均以官方公开发行物为基准:

包含 GreaterFire 编写的初始 C++ 参考实现、发行注记与架构原理。

https://github.com/trojan-gfw/trojan

Trojan 传输安全所完全依赖的现代互联网标准传输层安全规范。

https://datatracker.ietf.org/doc/html/rfc8446

GreaterFire 关于 Trojan 如何利用主动探测回落击破 GFW 扫描的经典设计陈述。

https://trojan-gfw.github.io/trojan/overview

现代多平台通用代理内核对 Trojan 协议的配置定义与使用指南。

https://sing-box.sagernet.org/configuration/inbound/trojan/

Go 语言实现的增强型 Trojan 核心,引入了多路复用与 WebSocket 扩展支持。

https://github.com/p4gefau1t/trojan-go