谷歌于近日公布了其Chrome浏览器保护HTTPS证书免受量子计算机攻击的方案,同时确保不会对现有互联网体系造成破坏。

这一目标极具挑战性。透明发布TLS证书所需的抗量子加密数据,体积约为当前传统加密材料的40倍。目前常用的X.509证书链包含六个椭圆曲线签名和两个EC公钥,每个仅64字节,但这些数据可被量子计算支持的Shor算法破解。完整证书链约为4KB,且在浏览器访问网站时必须全部传输。
"证书越大,握手速度就越慢,也会让更多用户在这次过渡中掉队。"与谷歌合作推进此项过渡的Cloudflare首席研究工程师Bas Westerbaan表示,"我们的目标是不让任何人在这次过渡中落下。"他在接受采访时指出,如果新加密方式拖慢了浏览速度,用户很可能会主动将其关闭。他还补充说,数据体积的大幅增加还可能损害位于浏览器与目标网站之间的"中间设备"的正常运行。
为突破这一瓶颈,各公司转向了Merkle树这一数据结构。Merkle树利用加密哈希及其他数学方法,以极少量数据对大量信息进行验证,相比公钥基础设施中的传统验证流程效率大幅提升。
谷歌Chrome安全网络团队成员表示,Merkle树证书(MTC)"用紧凑的Merkle树证明替代了传统PKI中繁重的序列化签名链。在这一模型中,证书颁发机构(CA)只需对单个'树头'进行签名,该树头可代表数百万张证书,而发送给浏览器的'证书'仅是一个轻量级的树包含证明。"
谷歌及其他浏览器厂商要求所有TLS证书必须发布在公开的透明日志中,这些日志是只可追加的分布式账本。网站所有者可实时查阅日志,确保其使用的域名未被颁发流氓证书。透明计划的实施源于2011年荷兰DigiNotar遭受黑客攻击事件——该事件导致500张伪造证书被签发,涉及谷歌等多家网站,其中部分证书被用于监视伊朗网络用户。
一旦Shor算法具备实用能力,便可伪造传统加密签名、破解证书日志的公钥。最终,攻击者可伪造签名证书时间戳,欺骗浏览器或操作系统,使其误以为某证书已完成注册。
为消除这一隐患,谷歌正在引入ML-DSA等抗量子算法的加密材料。该措施要求攻击者同时破解传统加密和后量子加密,才能成功伪造证书。这一新机制是谷歌"抗量子根证书存储库"的重要组成部分,将与谷歌于2022年建立的Chrome根证书存储库协同运作。
MTC借助Merkle树提供抗量子保障,无需附加大量冗长的密钥和哈希数据,在经过其他数据压缩技术优化后,整体大小仍将维持在约4KB。
目前,该系统已在Chrome中完成部署。Cloudflare正在注册约1000个TLS证书,以测试MTC的实际效果,并暂时负责生成分布式账本,未来计划由各CA机构承担这一角色。互联网工程任务组(IETF)近期成立了名为"PKI、日志与树签名"的工作组,正与各关键参与方协作,共同制定长期解决方案。
谷歌在近日的博客文章中表示:"我们将MTC的采用与抗量子根证书存储库视为确保当今生态系统基础稳健性的关键机遇。通过针对现代敏捷互联网的特定需求进行设计,我们可以加速为所有网络用户普及后量子安全防护。"
Q&A
Q1:Merkle树证书是什么?它解决了什么问题?
A:Merkle树证书(MTC)是一种新型证书机制,用紧凑的Merkle树证明替代传统PKI中庞大的序列化签名链。传统抗量子加密数据体积约为现有方案的40倍,会大幅拖慢网页加载速度。MTC通过数学哈希结构,在不显著增加数据量的前提下实现抗量子验证,使证书总大小仍维持在约4KB。
Q2:Shor算法对现有HTTPS证书有什么威胁?
A:Shor算法是一种可在量子计算机上运行的算法,能够破解目前HTTPS证书所依赖的椭圆曲线签名和公钥加密体系。一旦该算法具备实用能力,攻击者可伪造证书签名和时间戳,欺骗浏览器认为未注册的证书是合法的,从而实施中间人攻击,威胁用户网络安全。
Q3:谷歌的抗量子根证书存储库目前进展如何?
A:目前该系统已在Chrome浏览器中完成初步部署。Cloudflare正注册约1000个TLS证书进行测试,并暂时负责生成分布式账本,未来将由各证书颁发机构(CA)接管。IETF也已成立专项工作组,与各方协作推进长期标准化方案的制定。