耸人听闻的文章,如 Free Introduction 即使在 2016 年,关于量子计算机,在构建足够功率的量子计算机的情况下,也会为数据安全带来不确定性。 本文将试图阐明这种情况。
什么是量子计算?
量子计算是应用量子力学原理进行计算。 具体来说,量子计算利用亚原子粒子的量子态(如叠加和纠缠)来创建量子计算机。 当应用于具有足够功率的量子计算机时,特定算法可以比经典计算机更快地执行计算,甚至可以解决当前计算技术无法解决的问题。 结果引起了越来越多的关注 政府 和世界各地的行业开发量子计算机。 该领域仍处于起步阶段,但发展势头强劲,并且已经有可用的量子计算机,尽管在这一点上非常薄弱。
SSL.com提供了多种 SSL /TLS 服务器证书 用于HTTPS网站。
经典和量子计算
量子计算如何影响密码学?
“1994 年,贝尔实验室的 Peter Shor 表明,量子计算机是一种利用物质和能量的物理特性进行计算的新技术,可以有效地解决这些问题中的每一个,从而使所有基于此类假设的公钥密码系统变得无能为力。 因此,一台足够强大的量子计算机将使许多现代通信形式——从密钥交换到加密再到数字认证——处于危险之中。”
量子计算会很快到来吗?
我们可以做什么?
当广泛的量子计算技术到来时,我们将需要准备好抗量子计算 PKI. 有许多正在朝着这个目标进行的项目和许多可以提供解决方案的拟议技术。 下面,我们将尝试总结最有前途的技术,并简要回顾正在进行的建立后量子密码学的集体项目,以及面临的挑战。
后量子算法家族
过去 15 到 20 年的研究证明了抵抗量子攻击的算法的存在。 下面我们简要描述了最有前途的算法系列,它们可以为后量子世界的安全性提供解决方案。
基于代码的密码学
基于代码的密码学使用纠错码来构建公钥密码学。 它由 Robert McEliece 于 1978 年首次提出,是最古老、研究最多的非对称加密算法之一。 签名方案可以基于 Niederreiter 方案构建,这是 McEliece 方案的双重变体。 迄今为止,McEliece 密码系统一直抵制密码分析。 原始系统的主要问题是较大的私钥和公钥大小。
基于哈希的密码学
基于哈希的密码学 代表了一种有前途的数字签名后量子密码学方法。 哈希函数是将任意长度的字符串映射到固定长度的字符串的函数。 它们是较旧的公钥加密方案之一,它们对经典和基于量子的攻击的安全评估是众所周知的。 散列函数已经是使用最广泛的加密工具之一。 众所周知,它们可以长期用作构建公钥密码学的唯一工具。 此外,基于哈希的密码学非常灵活,可以满足不同的性能期望。 不利的一面是,基于哈希的签名方案主要是有状态的,这意味着每次使用后都需要更新私钥; 否则,无法保证安全。 有一些基于哈希的方案是无状态的,但它们的代价是更长的签名、更重要的处理时间以及签名者需要跟踪一些信息,例如使用密钥创建签名的次数。
基于格的密码学
基于格子的密码学是基于子集和问题的密码学的一个特例,由 Ajtai 于 1996 年首次引入。 它是使用格构造的密码原语的通用术语。 其中一些结构似乎对量子计算机和经典计算机攻击都有抵抗力。 此外,它们还有其他吸引人的功能,例如最坏情况下的硬度难度。 此外,它们具有简单性和并行性,并且具有足够的通用性以构建强大的加密方案。 最后,它们是唯一包含构建后量子公钥基础设施所需的所有三种原语的算法系列:公钥加密、密钥交换和数字签名。
多元密码学
多元密码术是指公钥密码术,其公钥表示多元和非线性(通常为二次)多项式映射。 解决这些系统被证明是 NP 完全的,从而使这一系列算法成为后量子密码学的良好候选者。 目前,多变量加密方案已被证明不如其他方案有效,因为它们需要大量的公钥和较长的解密时间。 另一方面,它们被证明更适合构建签名方案,因为它们提供了后量子算法中最短的签名大小,尽管它们会产生相当大的公钥。
基于同构的密码学
基于同基因的密码学使用椭圆曲线之间的映射来构建公钥密码学。 后量子密码学的候选算法是 2011 年推出的超奇异同基因 Diffie-Hellman 密钥交换 (SIDH),使该方案成为候选方案中最新的。 SIDH 需要提议的密钥交换方案中最小的密钥之一,并支持完美的前向保密。 但其相对年轻意味着基于此概念的方案并不多,对其可能存在的漏洞进行检查的也并不多。
后量子密码学项目
有各种后量子密码方案的工作组,例如 开放量子安全 (OQS) 项目 和 ENISA. 尽管如此,最连贯的倡议是 NIST 后量子密码标准化项目 自 2017 年以来一直在进行。 顾名思义,该项目旨在选择一个合适的密码方案,该方案将成为后量子时代的行业标准。 该过程从 69 个候选算法开始,其中 26 个进入第二轮评估。 2020 年 3 月,公布了第 XNUMX 轮候选人,如下表所示。 总共有七名决赛选手和八名替代候选人。 表中注明了它们是否被考虑用于加密或签名方案、算法系列和它们所基于的难题。
方案 | 编码/信号 | 家庭 | 难题 |
第三轮决赛选手 | |||
经典麦克莱丝 | 恩科 | 基于代码 | 解码随机二进制 Goppa 码 |
水晶-Kyber | 恩科 | 基于晶格 | 循环模块-LWE |
全国通行证 | 恩科 | 基于晶格 | Cyclotomic NTRU 问题 |
知道 | 恩科 | 基于晶格 | 循环模块-LWR |
晶体-二锂 | SIG | 基于晶格 | Cyclotomic Module-LWE 和 Module-SIS |
鹘 | SIG | 基于晶格 | 圆环系统 |
彩虹 | SIG | 基于多变量 | 油醋活板门 |
第三轮候补候选人 | |||
自行车 | 恩科 | 基于代码 | 解码准循环码 |
总部 | 恩科 | 基于代码 | Ring-LWE 的编码变体 |
佛罗多-凯姆 | 恩科 | 基于晶格 | 活体组织 |
NTRU-总理 | 恩科 | 基于晶格 | 非循环 NTRU 问题或 Ring-LWE |
赛克 | 恩科 | 基于同源性 | 加分的同构问题 |
质谱仪 | SIG | 基于多变量 | “大场”活板门 |
野餐 | SIG | 对称加密 | 分组密码的原像抗性 |
SPHINCS + | SIG | 基于哈希的 | 哈希函数的原像电阻 |
算法评估基于以下三个标准。
- 安全性:这是最关键的标准。 NIST 已经建立了几个要考虑的因素来评估每个候选算法提供的安全性。 除了算法的量子抗性外,NIST 还定义了不属于当前网络安全生态系统的其他安全参数。 这些是完美的前向保密性、抗侧信道攻击和抗多密钥攻击。
- 成本和性能:根据密钥大小、公钥和私钥操作和生成的计算效率以及解密失败等性能指标对算法进行评估。
- 算法和实现特征:假设算法提供良好的整体安全性和性能,根据它们的灵活性、简单性和易于采用(例如是否存在涵盖算法的知识产权)来评估它们。
加密敏捷性
结论