任何公共证书颁发机构 (CA)都可以为互联网上的任何网站颁发证书,以允许 Web 服务器向连接的客户端进行身份验证。花点时间浏览一下您的 Web 浏览器(例如Chrome)中受信任的 CA 列表。您可能认识(甚至信任)列表中的一些名称,但列表中的任何CA 都可以为任何网站颁发证书,并且您的浏览器会信任它,这应该会让您感到不安。这就像一座有 150 扇门的城堡。
证书透明度 (CT)在Web 公钥基础设施 (WebPKI)中发挥着至关重要的作用。WebPKI 是一套用于在互联网上建立信任的系统、政策和程序。CT 确保所有网站证书均公开可见且可审计,从而帮助保护网站运营商免受不诚实 CA 错误颁发证书的影响,并帮助诚实 CA 检测密钥泄露和其他故障。
在本文中,我们将探讨 CT 生态系统的历史、演变和未来。我们将介绍我们 阿根廷电报号码数据 和其他人在运营 CT 日志时面临的一些挑战,以及新的静态 CT API日志设计如何降低运维人员的门槛,从而帮助确保这一关键基础设施能够跟上互联网和 WebPKI 快速发展和变化的格局。我们很高兴能够开源我们为在 Cloudflare 开发者平台上部署而构建的新日志设计的Rust 实现,并宣布使用此基础设施部署测试日志。
2011 年,荷兰证书颁发机构 DigiNotar 遭到黑客攻击,攻击者得以伪造 *.google.com 证书,并用其冒充 Gmail 向伊朗目标用户发送邮件,试图窃取个人信息。谷歌之所以能发现这一问题,是因为他们使用了证书固定,但该技术在网络上的扩展性不佳。这一事件以及其他类似攻击促使谷歌的一个团队在 2013 年开发了证书透明度 (CT),作为捕获错误颁发证书的机制。CT 为公共证书颁发机构颁发的所有证书创建公共审计跟踪,通过让证书颁发机构对其颁发的证书负责(即使在无意中,如果发生密钥泄露或软件错误),帮助保护用户和网站所有者。CT 取得了巨大的成功:自 2013 年以来,已有超过170 亿份证书被记录,CT 因其在互联网关键安全机制中发挥的作用,于 2024 年荣获著名的列夫琴奖。