当我们通过公共通信通道发送加密信息时,我们的安全模型必须假设对手正在记录这些信息,希望能够最终打破加密并利用底层明文。由于数论的新进展、新的密码分析技术,甚至新的计算方法,今天被认为是安全的加密算法在未来可能不再安全。正是这最后一种风险,特别是未来可能出现的大规模、容错的量子计算机所带来的风险,是目前国际密码学研究界关注的焦点,其驱动因素是全球范围内的公开竞争,以选择和标准化新的后量子(又称耐量子)公钥加密算法。当我们在这场竞争中接近第一个输出里程碑时,我们行业中的每个人都必须意识到即将到来的算法过渡,它将对现有和未来系统产生的影响,以及仍需要进行的研究和工程工作,以使过渡到后量子密码学(PQC)成为可能。
从移动通信到网上银行再到个人数据隐私,数以亿计的互联网用户每天都依赖密码学来确保私人通信和数据的隐私。的确,公共互联网和电子商务的出现和发展,可以说是得益于公钥密码学的发明。公开密钥密码学提供的关键优势是,它允许以前从未通信的双方在非私有网络(即因特网)上建立一个安全的、私有的通信通道。公钥密码学也是使数字签名成为可能的技术,数字签名被广泛用于保护软件和应用程序更新、在线合同和电子身份证书。
自从1994年AT&T贝尔实验室的Peter Shor开发了现在以他的名字命名的多项式时间量子分解算法以来,我们已经知道,我们广泛部署的所有公钥密码算法都可以在与密码相关(即“足够大”)的量子计算机的帮助下被有效攻击。这样的量子计算机是否能够被制造出来,过去是,现在仍然是一个纯粹的理论问题。然而,尽管今天的量子计算机还不够大,也不够稳定,不足以威胁到我们目前的算法,但它们为未来能够做到这一点的设备指明了道路。此外,虽然与密码学相关的量子计算机可能在10年或更长时间内都无法实现,但由于现在可以记录内容供以后利用,它未来的存在对我们今天发送和接收的信息安全构成了威胁。的威胁现在记录,以后利用意味着我们需要在与加密相关的量子计算机出现之前,就过渡到使用抗量子公钥算法。
美国国家安全局(NSA)认识到未来量子计算机对现有密码学构成的威胁,在2015年8月首次警告公众需要过渡到PQC算法,2017年美国国家标准与技术研究所(NIST)启动了PQC标准化活动,以选择新的量子抗公开密钥算法。与之前产生AES分组密码和SHA-3哈希函数标准的算法竞赛一样,NIST从世界各地征集了PQC算法提案和对其进行的密码分析。选定的算法赢得了被标准化为美国联邦信息处理标准(FIPS)的“大奖”,然后被用作几乎所有使用公钥加密的地方的替代算法。
等你在《。》2022年1月号上读到这篇专栏的时候通信, NIST可能已经宣布了其第一个PQC算法的标准化选择。一个这将是第一批通过开放、竞争的过程进行标准化的量子抗公开密钥算法,但它们只是NIST宣布的至少三波“赢家”中的第一波。当NIST在2017年11月开始PQC评选过程时,它收到了来自世界各地工业和学术研究人员团队的约70份提交,现在已经被筛选到7份总决赛选手和8份候补选手。b现在预计的选拔赛来自决赛类别;我们预计2023年中后期会出现第二波以替补选手为基础的优胜者。此外,明年NIST将重新开放数字签名部分的竞争,以新的提案;本次“2 .nd“呼吁建议”可能要到2026年才会宣布。
很多需要完成的后量子跃迁工作现在就可以开始,即使我们在等待算法和协议标准的更新。
选择一种算法并发布描述其操作和安全参数的标准文档只是迁移到该算法的第一步。在我在微软的24年多的职业生涯中,我参与了四种主要的加密算法过渡:MD5到SHA-1和SHA-1到SHA-2哈希函数迁移,从1024位RSA到2048位RSA的迁移,以及从RSA到椭圆曲线加密(ECC)的迁移。与我们从RSA或ECC迁移到PQC方案所面临的情况相比,这四次迁移都要简单得多,我们对过去迁移的经验是,一个行业需要花费相当多的时间和精力来一起用新算法更新标准,然后部署它们。即使是表面上简单的替换也需要大量的时间;从SHA-1哈希函数(在2011年被弃用)到其替代SHA-2的迁移仍在进行中,而我们向ECC公钥加密的过渡(对于向PQC迁移的复杂性,我们拥有的最接近的模型),仍在一些领域难以获得支持。过渡到一个新的算法需要更多的时间,更复杂,影响的功能和特性比预期的更多。每个协议迁移都有自己的标准化社区,更新是一个定制的过程。对现有系统的长期支持需求也会减缓旧算法退役的过程。
NIST公布的第一组PQC优胜者将因此成为更新使用公钥加密的安全协议的发令枪,而由于我们的许多协议依赖于其他标准和协议,更新一个协议可能需要更新多个标准。考虑到通过相关流程更新任何标准都需要时间,这种级联依赖将延长甚至我们最常用的安全协议的过渡时间。此外,安全协议的长尾都是小实现者社区;这些协议不会像常用的协议(如TLS、SSH等)那样快速迁移到PQC,而且它们可能也更难更新。把所有这些时间线和依赖性放在一起,很可能到2030年,就将标准更新到PQC而言,我们仍将处于“pq混乱”的状态。
很多必须完成的后量子跃迁工作现在就可以开始,即使我们在等待算法和协议标准的更新。对于组织来说,nist管理的国家网络安全卓越中心(National cyber Center of Excellence)是一个有用的起点迁移到后量子密码学项目,c它正在开发迁移剧本、推荐实践和概念验证工具。组织还应该注意与他们的活动相关的标准的生命周期,以及那些标准组已经为PQC迁移做了哪些准备工作。意识是关键——仅仅知道问这个问题,“这个系统是为适应PQC的过渡而设计的吗?”是至关重要的。
为PQC迁移准备系统所需的工程工作也可以从现在开始,例如通过与候选PQC算法或PQC启发协议的实现集成和测试。d在新的或升级的系统中要确保的关键功能是加密的灵活性,即使用不同的加密算法重新配置系统、应用程序或协议的能力,包括在最初构建时尚未定义的算法。密码敏捷性并不是一个新的安全设计原则,但它通常要么在使用密码的系统中被完全忽视,要么被故意推迟,因为它被视为一种没有立即回报的安全税。现在就采取措施,确保正在开发的系统具有足够的密码敏捷性,将避免未来的痛苦。
这也是激励新的研究的时候,以帮助解决与加密算法迁移和构建加密敏捷系统相关的许多挑战。迫切需要对新工具和框架进行研究,以确保可以由策略配置和控制的密码敏捷性。在大规模基础设施(如私有数据中心和公共云)和分布式应用程序体系结构(如Web服务、分布式容器方案)的敏捷性框架方面,差距尤其明显。敏捷框架不仅必须启用策略驱动的配置,还必须保护它们不受对抗性篡改和攻击。敏捷如何创建新的攻击面以及如何保护这些攻击面是另一个关键的研究领域。此外,需要对安全编码中的过渡工具、人为因素和组织因素的可用性进行研究,以支持过渡期间的安全工作人员。
NIST正在考虑的新算法将具有显著不同的参数(密钥大小、密文大小、签名大小)和计算要求(内存、处理周期、网络延迟),以及一些新的要求(例如,熵、故障处理)。因此,还需要研究这些差异对各种各样的密码学使用领域的影响,并了解性能挑战。一个特别值得关注的领域是,在计算资源和电池功率受限的物联网设备上,新的PQC算法是否将具有足够的性能和能源效率。
量子计算机即将到来,即使我们今天还不知道它们什么时候能达到规模,或者变得普遍和可访问。虽然它们有望实现经典计算无法实现的新的计算工作负载,但它们也代表着对我们广泛部署的加密算法和标准的生存威胁。因为我们用今天的公钥密码学加密和传输的信息可能会被对手记录下来并储存起来以备潜在利用,所以我们现在迫切需要努力对抗未来量子计算对今天密码学的影响。我们越早让我们的系统在密码学上变得敏捷,并将它们迁移到后量子加密算法,我们就能越快地应对这种未来的威胁。这种算法迁移将比我们过去所面临的任何迁移都更复杂、更复杂,因此早期的意识、教育和规划是关键。我们今天为这种颠覆做的准备越多,我们作为一个行业的整体迁移旅程就会越容易。
b.披露:我和我在微软研究院的团队成员共同提交了两份备选加密提案(FrodoKEM和SIKE)和一份备选数字签名提案(Picnic)。
d.例如,滑铁卢大学的开放量子安全项目,https://open-quantumsafe.org/,维护所有决赛选手的开源加密敏捷PQC库,以及测试集成到广泛使用的安全协议实现,如OpenSSL。
本观点改编自CRA四年期论文后量子密码学:准备挑战和即将来临的风暴, Campagna, M., LaMacchia, B.和Ott, D. (2020);https://bit.ly/3HgMkun
数字图书馆由计算机协会出版。版权所有©2022 ACM, Inc.。
没有发现记录