为了防御量子破解窃取资讯,Google本月相继发布加入抗量子破解(quantum-resistant)的FIDO2安全密钥实例,及新版本Chrome的加密技术。
在FIDO2安全密钥及从Chrome 116版浏览器起,Google都将以混合方式支持抗量子破解的加密算法。首先,Google本周发布首个抗量子破解的FIDO2安全密钥的安全密钥实例,是其开源密钥固件OpenSK实例量子破解防御计划的一环,最新实例使用了ECC/Dilithium混合签章方案,既具有ECC加密对一般攻击的防护力,又具备Dilithium抗量子破解的优点。这混合签章方案是由Google和苏黎世联邦理工学院(ETH Zurich)合作开发而成,也曾获选为应用密码学暨网络安全年会(ACNS)最佳安全密码实例工作坊论文。
Google表示,虽然量子攻击可能还要一长段时日,但部署整个网际网络的密码安全工程浩大,有必要尽早启动。而且,用户端的安全密钥也得渐次升级;一旦标准组织FIDO将后量子密码技术标准化,且获得主要浏览器厂商支持,用户也得买新的安全密钥设备。Google说,他们提议的实例结合ECDSA签章算法和Google与ETH合作的Dilithium签章算法,提供两种防护。此外,Dilithium和其他抗量子破解算法未能通过攻击测试,且另一个抗量子破解算法Rainbow也遭遇攻击,这也突显以混合签章提供多重保障的必要性。
Google现正开发为安全密钥固件OpenSK导入最新实例。Google于2020年1月将其硬件安全密钥固件以OpenSK项目开源,让第三方硬件厂商也可用以生产FIDO2安全密钥。
而在推动旗下上网产品转移到抗量子安全层级的大计划下,除了硬件安全密钥外,Google也在上周宣布Chrome 116起,也将以混合支持方式,使用能抗量子破解的加密技术。从Chrome 116起,Chrome浏览器将支持X25519Kyber768产生TLS加密连接中的对称式密钥,而在Chrome 115将可通过flag激活这项功能。
这混合机制结合了标准的X25519与最新抗量子密码算法Kyber-768,来产生加密TLS网络传输内容的密钥。
Google指出,虽然以对称式加密算法能抵御量子密码解析,保护传输中的数据,不过产生对称式密钥的方法却没这能耐。这意味着在Chrome中,愈早使用让TLS能使用抗量子会话密钥,愈能提供用户网络流量安全防护。
不过Google也提醒,使用X25519Kyber768会为TLS ClientHello消息增加1kb的数据,因为增加了Kyber密钥封装的元素。Google测试显示,大部分TLS实例都能兼容,但有少数案例,如TLS middlebox则会因写死的消息大小限制,会发生错误。
此外,为了要了解Google生态体系对混合加密算法的兼容程度,Google将这项技术部署到Chrome和Google服务器,包括TCP及QUIC(Quick UPD Internet Connection)连接,以观察是否有兼容性问题。未来如果第三方服务器运营商,像是Cloudflare增加支持时,Chrome连去时也可能会使用最新的密钥协议。
若开发人员或网站管理员发生连接问题,Google建议提报bug。为防网络设备不支持,企业网络管理员可以通过政策来关闭Chrome 116中的X25519Kyber768。不过Google强调这只是权宜之计,他们还是强烈建议管理员和网络设备商解决不兼容的问题。