xxjssyouk / xxjssyouk.github.io

blog
6 stars 1 forks source link

加密通信的最后一块拼图 #45

Open xxjssyouk opened 3 months ago

xxjssyouk commented 3 months ago

十一期间,世界最大的 CDN 服务商 Cloudflare 发了一篇博客文章,宣称解决了“加密通信的最后一块拼图”

HTTPS 链接是加密通信吗?

你可以说它是,因为通信内容确实是加密的,外界无法窥测和篡改。

但是,它又不是彻底的加密通信,有一个地方是不加密的,那就是域名。中间人可以看到,你访问什么网站。

为什么域名不加密呢?

因为加密的密钥放在服务器上,而服务器只有知道域名,才知道发送哪一把密钥。所以,密钥的发送,必须在知道域名之后。

Cloudflare 解决的就是这个问题,它发明了一种新技术,叫做 ECH。

ECH 非常巧妙地解决了域名加密。它采用双层格式,也就是说,域名分了两层。外层是明文的,统一发送到 cloudflare-ech.com,内层是加密的,存放真正的域名。

中间人只能看到你在访问 cloudflare-ech.com,看不到内层的域名,从而达到保密的效果。

好了,技术介绍就说到这里,下面就是我的感想。我当时一看到 ECH 的细节,不禁就产生了疑问。

如果 cloudflare-ech.com 发生故障,或者种种原因无法访问,那么所有 Cloudflare 托管的网站是否都无法访问?

这是很现实的问题,因为 Cloudflare 是世界最大 CDN 服务商,很多网站都放在上面。而且,它对免费用户都启用了 ECH,还无法关闭(这是付费功能),等于是让免费用户当小白鼠。