TLS ECH: Avoid outer ALPN http/1.1 for WSS & HUS; Change echForceQuery's default value to "full"; Update github.com/refraction-networking/utls to 20260301010127; Add irrelevant tests for uTLS-REALITY#5725
Conversation
|
|
|
没什么人弄 草案写的是ALPN也属于敏感的扩展可以考虑加密 实际上除了翻墙的无人在意 |
|
@copilot 现在 Xray 的 ECH 会加密哪些信息 |
|
|
|
#5726 (comment) 所以 |
|
它有四个档 假ECH扩展往里roll 真ECH在计算出总长度后向上取整 |
|
utls 合并了 不过鉴于这不是 Chrome 默认行为 我需要再考虑一下接口 |
|
直接默认就行了为啥要考虑接口,我在 #5726 问那么多就是想确认下,结论是由于内层域名长度不能被 GFW 假定所以即使不小心多了 32 字节也没事 |
|
比如可能还是有人想要 ws+http/1.1 outer+ech 毕竟 ws 和 h2 可能不完全一样 如果一个连接同时存在 ws 长度特征 又是 h2,http/1.1 的 alpn 那只有可能是 新版utls 我想的是要么加个 "echHideALPN": true 或者 fingerprint: "chrome_alpn" 之类的选项 来手动控制 |
|
那确实 WS/HU 没有 h2 的指纹,但是 WS+ECH 挺小众的,说不定直到 GFW 把 cloudflare-ech.com 封了都不会针对这特征
|
|
|
|
话说你这个是不是只能给 uTLS 用、 改不了 Golang 内置 TLS? |
|
ws指纹倒是没啥问题 ws协议很简单没啥实现指纹 全看下面发的数据 |
是 就是因为没法动 gotls (除非fork) 我才去弄 utls 的 |
|
@Fangliding 把 uTLS 依赖改到 refraction-networking/utls@1ba92b0 吧 我刚看了下你的 fork,或许是时候把 echForceQuery 的默认值改为 full? |
|
我想utls发版了再动的 不过更一下应该没关系 |
|
utls 我改到了最新的commit |
|
|
|
反正大家用不到?都是chrome |
|
@Fangliding 试下 REALITY 加新版 Firefox 指纹是否可用,也就是 reuse x25519 与否是否都正常 |
|
我照着之前的test改了下 那几个不用写版本号的“常见指纹列表” 里 360 和 android 是坏的 android 我很久以前调查过是他那个指纹还是 tls12 的原因 我也开过issue(很明显到现在都没改) 360 我没看 |
|
我不喜欢其他指纹不是它们不能用 而是实在是有点久没更新 为数不多的人集中在处理 chrome 相关指纹上 连xray的一些乱七八糟的设置都是尽量学这玩意 |
echForceQuery's default value to "full"; Update github.com/refraction-networking/utls to 20260301010127; Add irrelevant tests
echForceQuery's default value to "full"; Update github.com/refraction-networking/utls to 20260301010127; Add irrelevant testsechForceQuery's default value to "full"; Update github.com/refraction-networking/utls to 20260301010127; Add irrelevant tests
echForceQuery's default value to "full"; Update github.com/refraction-networking/utls to 20260301010127; Add irrelevant testsechForceQuery's default value to "full"; Update github.com/refraction-networking/utls to 20260301010127; Add irrelevant tests for uTLS-REALITY
…ry`'s default value to "full"; Update github.com/refraction-networking/utls to 20260301010127; Add irrelevant tests for uTLS-REALITY (XTLS#5725) XTLS#5725 (comment)
看起来utls 的PR很长时间不会有人看 就先把ray端的代码放这了 喜欢的可以玩玩(没什么卵用)
在wss/httpupgrade 使用utls+ECH 时 外部观测到的ALPN会从 http/1.1 变为假的 h2,http1.1 (真正的ALPN被加密了))