Shadowsocks(SS)是什么?SS 协议原理、加密方式与优缺点
Shadowsocks(简称 SS)是一种基于 SOCKS5 思路设计的轻量级加密代理协议。它用预先共享的密码对流量进行对称加密,结构简单、速度快,是机场订阅里最常见、兼容性最好的协议之一。
Shadowsocks 的原理简述
Shadowsocks 由客户端(本地端)和服务端两部分组成:
- 浏览器或其他软件把请求交给本地的 SS 客户端;
- 客户端用双方约定好的密码和加密方式把数据加密,再发往服务端;
- 服务端解密后,替你访问目标网站,再把返回内容加密发回来。
整个过程中,SS 没有复杂的握手,也不依赖 TLS 证书,只需要四个参数:服务器地址、端口、密码、加密方式。这也是它“轻”的原因——协议本身几乎没有额外开销,在低性能设备(路由器、旧手机)上也能跑得比较顺畅。
常见加密方式与 SS2022
SS 的加密方式经历过几次演进:
- 早期流加密:如
rc4-md5、aes-256-cfb等,已被认为不够安全,现在基本不再推荐。 - AEAD 加密:如
aes-128-gcm、aes-256-gcm、chacha20-ietf-poly1305,是目前最常见的配置。AEAD 同时提供加密和完整性校验,安全性明显好于流加密。 - SS2022:加密方式名称以
2022-blake3-开头,例如2022-blake3-aes-128-gcm。它改进了密钥派生和防重放机制,对密码格式也有要求(需要特定长度的 Base64 密钥)。较新的客户端内核一般都已支持。
一般来说,手机等没有 AES 硬件加速的设备上,chacha20-ietf-poly1305 表现会更好;电脑和较新的手机上,aes-128-gcm 通常更快。机场下发订阅时已经替你选好,用户一般不需要手动修改。
另外,SS 还可以搭配插件(如 simple-obfs、v2ray-plugin)改变流量外观,但这属于服务端的部署选择,普通用户只要客户端支持对应插件即可。
Shadowsocks 的特点与优缺点
优点:
- 配置参数少,出错概率低
- 性能开销小,对设备要求低
- 客户端支持面最广,几乎所有主流代理软件都能用
- 历史悠久,实现成熟稳定
缺点:
- 原始 SS 流量是“看起来随机”的加密数据,没有伪装成常见网站流量,特征相对单一
- 在网络环境较紧张的时期,纯 SS 节点的稳定性通常不如带 TLS 伪装的协议
- 同一个密码在多个客户端共享,权限管理较粗
正因为这些特点,很多机场会把 SS 用在中转或专线节点上:入口在国内中转服务器,出境段走专线,协议本身是否有伪装就不那么关键,反而能发挥它轻量、快速的优势。
与其他协议的对比
| 协议 | 是否需要 TLS/证书 | 配置复杂度 | 性能开销 | 客户端兼容性 |
|---|---|---|---|---|
| Shadowsocks | 否 | 低 | 低 | 最好 |
| VMess | 可选 | 中 | 中 | 很好 |
| VLESS | 一般搭配 TLS 或 Reality | 中 | 低 | 较好 |
| Trojan | 是 | 中 | 低 | 很好 |
| Hysteria2 | 基于 QUIC | 中 | 依网络而定 | 较好 |
需要注意的是,ShadowsocksR(SSR)是早年从 SS 分支出来的另一个协议,已经很久没有积极维护,和现在的 SS 不是一回事。
支持 Shadowsocks 的常见客户端
- Clash Meta / Mihomo:支持 AEAD 和 SS2022,也支持部分插件
- sing-box:支持 AEAD 和 SS2022
- v2rayN(Windows):通过 Xray 或 sing-box 内核支持
- Shadowrocket(iOS):支持
- 各平台基于上述内核的图形客户端,一般也都支持
如果你的客户端比较老旧,可能不支持 SS2022,导入订阅后节点会报错,更新客户端即可。
选购建议
- 不必刻意追求或回避 SS:机场线路质量(专线、中转、直连)对体验的影响远大于协议本身。
- SS 节点 + 专线/中转是很常见、也很实用的组合,延迟和速度通常不错。
- 如果机场只有直连的纯 SS 节点,晚高峰或特殊时期的稳定性可能波动较大,可以留意是否同时提供 Trojan、VLESS 等其他协议作为备选。
- 购买前先试用或买月付,实际测一测常用时段的速度。
常见问题
SS 节点和 SSR 节点能混用吗?
不能。SS 和 SSR 是两个不同的协议,参数格式也不同。现在主流客户端普遍支持 SS,但对 SSR 的支持越来越少,例如 Mihomo 和 sing-box 的支持情况就和 SS 不同。如果机场仍在大量使用 SSR,说明其技术栈可能比较陈旧,可以作为一个参考信号。
为什么同一个 SS 节点,电脑快、手机慢?
常见原因有几个:手机所在的网络(移动数据或家里的无线网络)质量不同;手机客户端版本较旧;或者加密方式在手机上没有硬件加速。前两者最常见,可以先切换网络、更新客户端再对比。加密方式一般由机场决定,用户不必自行修改。
SS 安全吗?
使用 AEAD 或 SS2022 加密时,传输内容本身是加密的,第三方很难直接看到内容。但要注意,机场服务端可以看到你访问了哪些网站(就像任何代理服务一样),访问 HTTPS 网站时内容仍受网站自身的加密保护。选择运营时间长、口碑稳定的服务更重要。