TG Telegram Group & Channel
Project V 公告 | United States America (US)
Create: Update:

随便说几句关于单端口多用户的设计。简单来说这是一个先有鸡还是先有蛋的问题,服务器要知道连进来的是哪个用户,但流量是加密的,要知道用户ID才能进行解密。于是用户ID需要一套额外的沟通机制。

1. 总体性能最优的方案是 TLS 的证书交换机制,除了证书相关的几百个字节之外没有额外的开销,通讯性能也相当好。唯一的问题是证书交换时有明显的握手特征。
2. Shadowsocks 不支持多用户。服务器唯一的兼容做法是尝试使用每一个用户密钥解密流量,在用户量大的时候会影响握手性能。
3. SSR 支持多用户但有一个问题,其对用户ID的加密没有满足密码学的要求。
4. VMess 对于多用户的解决方案是预生成大量的密钥(每秒钟N个,N = AlterID + 1)并缓存哈希后的数据,用空间换时间的方式判断用户ID,并保证ID不会被破解。

Q: 用户ID被破解有什么意义?
A: 由于单个客户端长期使用单个ID(密钥),如果能从流量反推出稳定的ID,那也就间接证明了这些流量都用了某一种协议。

Forwarded from Project V 官方公告
随便说几句关于单端口多用户的设计。简单来说这是一个先有鸡还是先有蛋的问题,服务器要知道连进来的是哪个用户,但流量是加密的,要知道用户ID才能进行解密。于是用户ID需要一套额外的沟通机制。

1. 总体性能最优的方案是 TLS 的证书交换机制,除了证书相关的几百个字节之外没有额外的开销,通讯性能也相当好。唯一的问题是证书交换时有明显的握手特征。
2. Shadowsocks 不支持多用户。服务器唯一的兼容做法是尝试使用每一个用户密钥解密流量,在用户量大的时候会影响握手性能。
3. SSR 支持多用户但有一个问题,其对用户ID的加密没有满足密码学的要求。
4. VMess 对于多用户的解决方案是预生成大量的密钥(每秒钟N个,N = AlterID + 1)并缓存哈希后的数据,用空间换时间的方式判断用户ID,并保证ID不会被破解。

Q: 用户ID被破解有什么意义?
A: 由于单个客户端长期使用单个ID(密钥),如果能从流量反推出稳定的ID,那也就间接证明了这些流量都用了某一种协议。


>>Click here to continue<<

Project V 公告




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)