自立自立

2020-11-07 11:18:40

当一个新的证书颁发机构(CA)出现时,它面临着一个难题:为了对人们有用,它需要它的根证书得到各种操作系统(OS)和浏览器的信任。然而,操作系统和浏览器可能需要数年时间才能接受新的根证书,而人们将设备升级到包含该更改的较新版本可能需要更长时间。常见的解决方案是:新的CA通常会要求现有的、受信任的CA进行交叉签名,以使其迅速得到许多设备的信任。

五年前,当我们推出加密软件时,我们就是这么做的。我们得到了IdenTrust的交叉签名。他们的“DST Root X3”已经存在很长时间了,所有主要的软件平台都已经信任它了:Windows、Firefox、MacOS、Android、iOS和各种Linux发行版。这种交叉签名使我们能够立即开始颁发证书,并让它们对很多人有用。如果没有IdenTrust,让我们加密可能永远不会发生,我们感谢他们的合作伙伴关系。同时,我们也发布了自己的根证书(“ISRG Root X1”),并申请得到各大软件平台的信任。

现在,这些软件平台多年来一直信任我们的根证书。我们赖以成功的DST Root X3根证书将于2021年9月1日到期。幸运的是,我们已经准备好独立,完全依靠我们自己的根证书。

然而,这确实带来了一些兼容性问题。一些自2016年以来就没有更新的软件(大概是在我们的根被许多根程序接受的时候)仍然不信任我们的根证书,ISRG Root X1。最值得注意的是,这包括7.1.1之前的Android版本。这意味着那些较老版本的Android将不再信任由We‘s Encrypt颁发的证书。

安卓的操作系统更新问题由来已久且广为人知。世界上有很多安卓设备都在运行过时的操作系统。原因很复杂,也很难修复:对于每一部手机,制造商和移动运营商通常都会在最终用户收到安卓核心操作系统之前对其进行修改。当安卓系统有更新时,制造商和移动运营商都必须在发布之前将这些更改合并到他们的定制版本中。通常,制造商会认为这不值得花这么大力气。其结果对购买这些设备的人来说是不好的:许多人被困在过时多年的操作系统上。

谷歌不再在其分发仪表板上提供版本号,但你仍然可以通过下载Android Studio获得一些数据。以下是截至2020年9月的数据:

目前,66.2%的安卓设备运行7.1或以上版本。剩下的33.8%的安卓设备最终会在用户访问带有让我们加密证书的网站时开始收到证书错误。在我们与大型集成商的沟通中,我们发现这约占其网站流量的1-5%。希望到明年DST Root X3到期时,这些数字会更低,但变化可能不会很大。

我们能为此做些什么呢?嗯,虽然我们很乐意改善Android的更新情况,但我们在这方面能做的并不多。我们也买不起一部新手机。我们能再要一个交叉签名吗?我们已经探索过这个选项,但似乎不太可能。对于CA来说,交叉签署另一个CA的证书是一个很大的风险,因为他们要对CA所做的一切负责。这也意味着交叉签名的接收者必须遵循交叉签名CA规定的所有程序。对我们来说,能够自立是很重要的。此外,安卓系统的更新问题似乎并没有消失。如果我们承诺支持旧的Android版本,我们就会无限期地寻求其他CA的交叉签名。

这是一个相当大的束缚。我们致力于让地球上的每个人都拥有安全和尊重隐私的通信。我们知道,受Android更新问题影响最大的是那些我们最想帮助的人--那些可能无法每四年买一部新手机的人。不幸的是,在ISRG Root X1到期之前,我们预计Android的使用数字不会有太大变化。通过提高人们对这一变化的认识,我们希望帮助我们的社会找到最佳的前进道路。

从2021年1月11日起,我们计划对API进行更改,以便ACME客户端在默认情况下提供通向ISRG Root X1的证书链。但是,也可以为通往DST Root X3并提供更广泛兼容性的同一证书提供备用证书链。这是通过ACME的“替代”链接关系实现的。Certbot从1.6.0版开始支持这一功能。如果您使用不同的ACME客户端,请查看您的客户端的文档,以确定是否支持“备用”链接关系。

将会有网站所有者收到用户的投诉,我们对此表示同情,这是不理想的。我们正在努力提醒网站所有者,这样你就可以计划和准备了。我们鼓励站点所有者部署临时修复程序(切换到备用证书链)以保持您的站点正常运行,同时评估您的长期解决方案需要什么:您是否需要运行横幅,要求使用较旧操作系统的Android用户安装Firefox,停止支持较旧的Android版本,对于较旧的Android版本重新使用HTTP,或者切换到安装在这些较旧版本上的CA。

您的主机提供商可能会在2021年9月之前为DST Root X3提供服务,或者他们可能会决定在2021年1月11日之后切换到通向ISRG Root X1的证书链。如果您有任何问题,请与他们联系!

如果您使用的是较旧版本的Android,我们建议您安装Firefox Mobile,在撰写本文时它支持Android 5.0及更高版本。

为什么安装Firefox会有帮助?对于Android手机的内置浏览器,受信任的根证书列表来自操作系统--在这些较旧的手机上,操作系统已经过时。然而,Firefox目前在浏览器中是独一无二的-它附带了自己的受信任根证书列表。因此,任何安装了最新Firefox版本的用户都可以获得最新的可信证书颁发机构列表,即使他们的操作系统已经过时。

我们感谢您现在和多年来的理解和支持,因为我们作为CA不断发展壮大,确保世界各地的人们都能获得加密。我们将通过我们的社区论坛帖子提供关于这种根迁移如何影响Android设备的任何未来更新。如果您对这一变化有任何疑问,我们的社区随时准备为您提供帮助:Community ity.letscrypt.org。

我们依靠支持者的贡献来提供我们的服务。如果您的公司或组织想要赞助We‘s Encryption,请给我们发电子邮件,地址是[email protected]。如果在你的能力范围内,我们要求你做出个人贡献。