关于 ECH (Encrypted Client Hello) 防范中间人的疑问

2023-02-04 23:13:38 +08:00
 cccer

阅读了 cloudflare 介绍 ECH 的文章: https://blog.cloudflare.com/encrypted-client-hello/

里面有如下内容:

In this case, the service provider also sends along the correct ECH public key with which the client can retry handshake, thereby "correcting" the client's configuration.

大概意思:为了防止 DNS 缓存了过期的 ECH 公钥,在服务器解密失败时会给客户端发送正确的 ECH 公钥,客户端可以使用该公钥重试握手”

这个时候客户端和服务器之间还是明文通信,这样不就绕过了 DoH 并从不可信的渠道获取了 ECH 公钥,导致 ECH 内容被中间人读取吗?

网上搜索了一下 ECH 相关的内容本身就比较少,也没有说明从服务端获取 ECH 公钥时是怎么防止中间人的。

1589 次点击
所在节点    程序员
3 条回复
leonshaw
2023-02-05 01:44:44 +08:00
公钥过期就用外层 Hello 协商的加密通道重新分发
chinalawme
2023-02-05 20:41:15 +08:00
eason1874
2023-02-05 22:00:58 +08:00
草稿有写这个问题,说用上下文随机数防止,但是具体怎么协商的,我也没看懂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/913230

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX