本文主要参考自主要参考自《美国国家标准与技术研究院后量子密码分析及制标工作研究》。
2009年,NIST(美国国家标准与技术研究院)发布了对PQC的调研报告,详情见PQC | 抗量子计算密码概念的产生。
2012年,NIST成立了PQC项目组。NIST于2012年成立了专门的PQC项目组,统筹与国内外密码学界、产业界和国际标准界的沟通工作,以及全权负责美国后量子密码的标准制定工作。随后,该机构就开始利用各种国际研讨会介绍其PQC制标工作的思路。
2013年,欧洲电信标准化协会(European Telecommunications Standards Institute,ETSI)与加拿大滑铁卢大学量子计算研究所联合召开的首届量子安全密码研讨会(ETSI&Institutefor Quantum Computing,Quantum Safe Cryptography,ETSI/IQC QSC)上,来自NIST PQC 项目组的代表LiLy Chen和Liu分别介绍了NIST对PQC的总体观点和PQC安全性的考虑,这也是NIST PQC项目组自成立后首次公开他们对下一阶段后量子密码制标工作的初步思路。
一、LiLy Chen介绍NIST对PQC的总体观点
需要强调的是,NIST对PQC的关注主要是针对如何替换现有互联网体系架构下的安全基石,因为互联网是全球价值最高、规模最大的IT资产。
Chen的发言聚焦在量子计算机对第一代公钥密码 DH、RSA、DSA 等带来的冲击,并专门分析了IKE、TLS等协议对 PQC的需求:IKE协议要求替换DH密钥协商的PQC算法应有更快的密钥对生成机制,用于认证的签名算法至少要与现有的公钥签名效率一致;TLS协议要求替换的PQC算法应提供更快的加密、更快的密钥对生成和等效的签名时间等。在此基础上,Chen提出了评估PQC算法性能的部分量化指标,而这些指标都被纳入2016年NIST面向全球征集PQC算法的需求中,包括:公私钥尺寸、密钥对生成时间、密文大小、加/解密速度、签名尺寸、验签时间。
为了说明在今后面向互联网的PQC迁移过程中会面临什么挑战,Chen将部分PQC算法和第一代公钥算法在加密和签名两方面进行对比,得出结论:与第一代公钥算法相比,绝大多数潜在的PQC算法候选者的加/解密和签名验证的时间都基本上可以接受,但在同等安全强度下,部分PQC算法的密钥尺寸远远超过RSA、DH等现有算法簇。尽管在不考虑对公钥进行传输的前提下,这不会带来太大影响,然而对于具有长期认证要求的情况,如TLS握手协议,这些问题在实施过程中将带来很大挑战。对于密文大小和签名尺寸,PQC算法则普遍不能令人满意,特别是对带宽和存储空间有限制的环境会是一个巨大障碍;而用于密钥交换的密钥对生成时间基本满足要求。最后,Chen认为不存在唾手可得的替代解决方案,与第一代公钥算法相比,新的PQC算法所涉及的因素更多,因此也需要更多的评判准则。而这些思考在2016年NIST正式组织的PQC算法全球遴选过程中逐步得到了扩展、细化和完善。
二、Y.Liu介绍NIST对PQC安全性的考虑
需要指出的是,与传统的对称加密算法安全分析相比,现代公钥密码的安全分析历史相对年轻,C.E.Shannon 在二十世纪四十年代阐述的关于明密文之间的“扩散”原则和密钥与密文之间的“混淆”原则在公钥密码学安全分析领域并非完全适用。自从第代公钥密码诞生以来,除了颠覆性的Shor算法,较有代表性的就是对RSA的安全分析,以及关于ECC 的攻击。
因此,Y.Liu在报告中将关于PQC的安全性评估与分析方法分为三种类型进行了介绍。
- 第一种方法是测量已知攻击的复杂性(例如,格基约化、针对多变量多项式公钥的Gröbner-base 分析和差分攻击);
- 第二种方法使用安全证明,即基于数论和组合优化中特定问题猜想的困难性;
- 第三种方法使用“结构化”结果,即分析特定攻击类型的能力上限(例如,可用于差分攻击的不变量的分类,以及量子算法解决非阿贝尔隐子群问题的能力)。
到目前为止,人们对PQC安全分析的手段仍然没有超出Liu代表NIST所述的这些范畴。事实上,与RSA、ECC、DH 等第一代公钥密码的安全分析相比,当前人们对新一代后量子密码的安全分析的技术路线更为丰富。
此外,Liu在发言中提到的关于使用PQC的优势之一是增加安全的冗余度,这与当前PQC迁移方案中人们提出的混合模式(Hybrid Mode)一脉相承。Liu在报告最后指出了PQC安全性面临的挑战,至今仍颇具参考价值,现简述如下:
- 特殊结构问题。许多密码系统使用了具有特殊结构的基于格的、基于编码或基于多变量多项式的公钥加密算法,这些特殊结构对密码系统的安全性影响如何?
- 攻击复杂度的问题。如何测量量子攻击的复杂度?
- 协议兼容问题。在现实世界中,这些(PQC)密码系统如何与其他协议很好协同?
上述问题在接下来NIST组织面向全球PQC算法的征集活动中都得到了深入探讨。