跳到正文
AirPick

Trojan 协议是什么?原理、优缺点与现状(2026)

发布: 更新: 资料核实:

本页目录(7) 展开
  1. 1名字背后的思路
  2. 2Trojan 原理
  3. 3Trojan 需要证书吗
  4. 4Trojan-Go 是什么
  5. 5优缺点与横向对比
  6. 6Trojan 客户端与使用步骤
  7. 7注意事项

直接答案

Trojan 是一种代理协议,核心思路是让代理流量和普通 HTTPS 网站访问看起来一样:客户端与服务器之间建立标准的 TLS 连接,用密码认证身份;如果有人用非 Trojan 的方式访问这个服务器,它会把请求交给一个真实的网站,对方只会看到正常网页。它结构简单、兼容性好,在 2026 年仍是机场常见协议之一。

名字背后的思路

Trojan 这个名字取自“特洛伊木马”的典故:把东西藏在一个看起来正常的外壳里。在 Trojan 协议里,这个外壳就是 HTTPS。

HTTPS 是互联网上最普遍的流量类型,网站、应用、系统更新都在使用。一个协议如果能让自己在外观上和 HTTPS 无法区分,就能“混在人群里”。Trojan 选择的方法不是自己发明一套加密,而是直接使用成熟的 TLS,并尽量让每个细节都符合正常 HTTPS 服务的样子。

Trojan 原理

一次 Trojan 连接大致经过这些步骤:

  1. TLS 握手:客户端和服务器完成标准 TLS 握手,服务器出示为自己域名签发的有效证书。
  2. 发送认证信息:客户端在加密通道里发送经过哈希处理的密码和目标地址。
  3. 验证与转发:密码正确,服务器就替客户端连接目标地址并转发数据;密码错误或者请求格式不符,服务器就把整个连接转交给后端的一个真实网站。

第三步中的“回落”机制是 Trojan 的关键设计。主动探测者如果尝试连接服务器,看到的是一个正常运行的网站,而不是一个会拒绝连接的可疑端口。

Trojan 需要证书吗

需要。Trojan 依赖标准 TLS,服务端必须有一个域名和该域名的有效证书,客户端会校验证书。这意味着:

  • 服务商需要维护域名和证书,证书过期会导致连接失败。
  • 客户端里如果设置了“跳过证书验证”,会削弱安全性,一般不建议开启,除非服务商明确说明原因。

这也是 Trojan 和 VLESS Reality 的一个明显区别:Reality 不需要自有证书。

Trojan-Go 是什么

Trojan-Go 是 Trojan 的一个社区实现,在兼容原版协议的基础上增加了 WebSocket 传输、多路复用等功能,WebSocket 让它可以配合 CDN 使用。部分机场的节点会标注 Trojan-Go 或 Trojan WS,这类节点需要客户端支持对应的传输方式。

优缺点与横向对比

对比项TrojanVLESSShadowsocks
加密来源标准 TLSTLS 或 Reality协议自带
流量外观标准 HTTPS类似 HTTPS无明显特征的随机流
需要证书需要TLS 需要,Reality 不需要不需要
主动探测时回落到真实网站视配置而定视实现而定
针对 TLS 嵌套特征无专门设计有 Vision 流控不适用
客户端兼容广需较新内核最广

优点:设计简单、依赖成熟的 TLS、客户端支持广泛,性能开销主要来自 TLS 本身。

缺点:需要维护证书;对“TLS 套 TLS”的流量特征没有专门处理,这也是后来 VLESS Vision、AnyTLS 等方案尝试改进的方向。

所以 Trojan 还能用吗?在大多数客户端和服务端中它仍被支持和使用,但任何协议的长期表现都取决于外部环境,没有人能做出保证。

Trojan 客户端与使用步骤

Trojan 客户端的支持面很广:Clash 系列(包括 mihomo 内核)、sing-box、v2rayN 等基于 Xray 的客户端,以及 iOS 上的 Shadowrocket、Stash 等,都支持 Trojan。Trojan-Go 的 WebSocket 传输需要客户端额外支持。

  1. 从机场用户中心复制订阅链接,导入客户端并更新。
  2. 在节点列表中确认 Trojan 节点正常显示,单条节点链接以 trojan 开头。
  3. 保持证书验证开启,对节点做延迟测试。
  4. 如果连接失败并提示证书错误,先检查设备的系统时间是否准确,时间错误会导致证书校验失败。

注意事项

  • Trojan 性能和速度主要由线路决定,协议本身开销不大,不要期待换协议带来明显提速。
  • 节点链接里包含密码,泄露后他人可直接使用,应和订阅链接一样保管。
  • 本文只做协议原理科普,请在遵守所在地法律法规的前提下了解和使用。