公钥密码的量子攻击研究现状与展望

2022-10-20 04:08崔富鑫
网络安全与数据管理 2022年9期
关键词:公钥复杂度比特

崔富鑫,王 辈,刘 焱,李 叶

(合肥本源量子计算科技有限责任公司,安徽 合肥 230000)

0 引言

公钥密码体制是密码学史上一类极为重要的发明,它将数学、计算机与密码学紧密结合,并解决了对称密码体制的三大问题:密钥分发、密钥管理和提供不可否认服务。自1976年Diffie与Hellman[1]提出公钥密码的思想以来,密码学家设计了多个具有代表性的公钥密码算法,如Diffie-Hellman密钥交换协议、RSA密码体制、ElGamal加密体制、椭圆曲线密码体制(Elliptic Curve Cryptography,ECC),这些密码算法的安全性建立在一些数学困难问题上。

公钥密码体制的安全性随着Shor算法的提出受到了威胁。近些年,量子计算的蓬勃发展,也在推动着公钥密码攻击的研究与实现。本文主要总结公钥密码在量子算法攻击下的国内外研究进展,重点介绍RSA和ECC的量子算法攻击现状。结合后量子密码迁移工作的紧迫性,进一步展望后量子密码的未来发展以及量子算法对后量子密码攻击的可能性,为从事量子计算和信息安全领域的产学研工作者提供思路。

本文主要介绍几类公钥密码加密算法和相关量子攻击算法,介绍量子算法攻击公钥密码的研究现状,并对后量子密码的发展以及产学研融合的未来作出总结与展望。

1 背景介绍

1.1 公钥加密算法

在现代密码学中,根据密钥的不同特征,主要分为对称密码体制和公钥密码体制。前者在加解密算法中使用相同的密钥,而后者则是使用不同的密钥。

公钥密码体制中最著名的三个算法分别是RSA密码体制、ElGamal密码体制以及ECC体制。下面着重介绍RSA和ECC密码体制的加密算法。

1.1.1 RSA加密算法

RSA算法是由Rivest、Shamir、Adleman[2]三人在1977年提出的,该算法也是首次实现的公钥密码算法,算法流程如下:

(1)密钥生成:Alice选取两个长度相等的大素数p和q,令N=pq;

(2)Alice选取e,d∈Z,并满足ed=1 modφ(N),其中φ(N)=(p-1)(q-1),称e为加密指数,d为解密指数,数对(N,e)为公钥,(N,d)为私钥,将公钥对外公开;

(3)加密过程:Bob将消息M使用公钥加密,得到密文C=Memod N后向外发送;

(4)解密过程:Alice接收到Bob的消息后利用私钥解密,即Cd=Med=M mod N。

算法的安全性是基于数学中整数分解问题(Integer Factoring Problem,IFP)的困难性,因而在密钥生成阶段选取的素数越大,该算法越安全。但是RSA的攻击问题是否等价于整数分解问题目前学界还没有定论[3-4],文献[5]总结了对RSA的不同攻击方式。当前整数分解最高效的算法——广义数域筛法(General Number Field Sieve,GNFS)的时间复杂度依然是(亚)指数级的[6],并且人们普遍相信这一问题在经典计算领域没有多项式级别的算法。

1.1.2 ECC加密算法

基于离散对数问题(Discrete Logarithms Problem,DLP)的ElGamal加密算法最早由ElGamal[7]在1985年中提出。这一算法的困难问题可以简洁地作如下表述:已知α,β=αx,求x mod ord(α)。椭圆曲线加密算法的困难问题与ElGamal加密算法的困难问题在形式上类似,该算法首先是由Miller在1985年[8]和Koblitz在1987年[9]分别独立提出的。算法的流程如下:

(1)Alice选择一条椭圆曲线Ep(a,b),并选择曲线上一点作为基点G;

(2)Alice选择k作为私钥,并计算K=kG作为公钥公开,一起公开的还有椭圆曲线Ep(a,b)和基点G;

(3)Bob在收到公开的信息后,将要传递的信息编码到椭圆曲线上一点M上,同时产生一个随机数r;

(4)Bob计算A1=M+rK以及A2=rG;

(5)Bob将A1和A2发 送给Alice;

(6)Alice收到消息后计算A1-kA2=M+rK-krG=M,即可得到信息M。

ECC算法的安全性是基于椭圆曲线群运算上的离散对数问题(Elliptic Curve Discrete Logarithm Problem,ECDLP)的 困 难 性:已 知K,G∈Ep(a,b)且K=[k]G,求k mod ord(G)。该算法相较RSA算法能够使用更短的密钥达到相当的安全性,代价是增加了加密和解密时的计算量,美国国家标准技术研究院(NIST)在2016年的分析中指出,256位的ECC和3 072位RSA所达到的安全级别相同。

1.2 量子算法

1.2.1 Shor算法求解整数分解

1994年,美国数学家Shor[10]提出一个能够在量子计算机上指数级加速大数分解问题和离散对数问题算法。利用该算法可以实现量子多项式时间复杂度的整数分解问题,完整的算法步骤如下:

首先将整数分解问题转化为求阶问题,假设要分解的整数为N,并且有最小的整数r使得ar=1 mod N,这里不妨假设r是偶数,则有:

然后进入算法的量子部分,量子部分的核心思想在于充分利用量子计算的特性,将周期信息编码到基矢上然后读出。量子部分的输入为a,N,输出为周期r的一个估计。该部分流程如下:

(1)取n=「log2N,其中「为向上取整函数;

(2)初始化t=2n个量子比特|0>t作为第一个量子寄存器,初始化n个量子比特得到量子态|0>n-1⊗|1>作为第二个量子寄存器,从而初始态为:

(3)对第一个量子寄存器制备最大叠加态:

(4)对两个寄存器作用一系列模指数运算U2i,得到:

上述态也可以近似化简为:

(5)对第一个量子寄存器作用量子傅里叶逆变换:

(6)测量第一个量子寄存器,得到比特串m。

上述流程为算法的量子部分,二进制比特串需经过后处理才能得到周期r。由上面的过程可知是某个的近似,由求r的过程称为连分式算法,该算法可以将写成一系列分数的形式,并且分数列与逐渐靠近,周期r大概率就隐藏在某个分数的分母中。算法的可行性由定理1保证。

定理1[11]设是一个满足的有理数,则是的连分式的一个渐进值,从而可以利用连分式算法在O(t3)时间复杂度内计算。

读取到上面的r后,需要判定r是否为a的周期,若否,重新进行算法的量子过程,直到找到周期,还需要判断是否为偶数,若否,返回第一步重新取a。

关于Shor算法的时间复杂度有定理2成立。

定理2[10]n比特的整数分解可以在量子计算机上以O(Poly(n))次操作外加多项式复杂度的经典处理完成。

上述定理相较于数域筛法分解同比特数的整数所需的exp(Θ(n1/3log2/3n))次操作是一个巨大的飞跃。

与Shor算法十分类似,离散对数问题也可以通过与上述过程类似的量子线路来实现指数级的加速。

1.2.2 离散对数问题求解

Shor在文献[10]中利用量子算法以多项式复杂度解决的另一个问题就是离散对数问题。即给定a和b=as,确定s,可以将这一问题进行转化。考虑二元函数为:f(x1,x2)=asx1+x2mod N,易得该函数为周期函数,并且周期是一个二元组,通过计算二元组能得到原离散对数问题的周期s。求解二元函数周期的量子算法流程如下:

(1)依然是取n=「log2N,其中「为取整函数,设r是使得armod N=1的最小正整数;

(2)初始化t=O(log(r))个量子比特|0>t作为第一个量子寄存器,重复该步骤两次,再初始化n个量子比特|0>n得到三个初始化的量子寄存器为:

(3)对前两个量子寄存器分别作制备最大叠加态为:

(4)对三个寄存器作用一系列白盒Uf,得到:

上述态也可以近似写成:

(5)对前两个量子寄存器作用量子傅里叶逆变换:

(6)测量前两个量子寄存器,得到两个比特串(m1,m2),可以利用广义连分数算法得出s,此外,Ekerå[12]通过多次测量得到{(m1j,m2j)}构造格,之后通过经典的格基约化算法求得s。

与整数分解的Shor算法类似,可以证明上述算法(包含经典部分的处理)的时间复杂度同样是多项式量级的。

需要注意的是,这里给出的是有限域上的离散对数问题及其量子算法求解,而ECC算法依托的ECDLP则是将有限域上的四则运算替换成了有限域上椭圆曲线的有理点加运算。

1.2.3 量子优化算法

量子优化算法是一种在理念上完全不同于上述逻辑运算的量子算法。优化算法一般是将一个经典问题转化为一个组合优化问题,下一步搭建一个能够反映该优化问题的物理模型,最后利用量子退火机的特性(量子涨落及隧穿效应)求解该模型的最小值,由于量子隧穿效应的存在,使得上述求解在一般情形下能够得到全局最优解。需要注意的是,由于绝热量子计算被证明是等价于通用量子计算[13],因而一些利用绝热演化求解的优化问题也可以被通用量子计算机近似求解。

这种优化思路对攻击RSA算法的困难问题——整数分解问题提供了一种全新的思路。将整数分解问题视作一个优化问题最早是由Burges[14]在2001年提出的,该方法在2007年被Schaller等人[15]改进。算法的一般流程如下:

(1)选择两个待定数字(设两个数字为N的因子),写出两个数字的二进制乘法表(表1为35的待定分解),令t=「log(N),该步骤的复杂度为O(t);

表1 二进制乘法表

(2)将乘法表和N进行比对,化简方程组,减少待定数字,该步骤的时间复杂度为O(t3);

(3)将上述问题转化为二次无约束布尔优化问题(Quadratic Unconstrained Boolean Optimization,QUBO),该步骤时间复杂度为O(t3);

(4)针对上一步骤的二次优化问题构建伊辛模型,该步骤时间复杂度为O(1);

(5)利用量子退火机求解该模型得到最优解,量子计算时间复杂度为O(t2)。

上述步骤的复杂度由文献[16]给出。不同于Shor算法需要在通用量子计算机上执行,量子优化算法一般在量子专用机上处理,这为优化算法开辟了完全不同的赛道,也在一定程度上规避了大规模通用量子计算机发展缓慢的困难。

2 量子算法攻击公钥密码的研究

2.1 量子算法攻击RSA的研究

2.1.1 Shor算法攻击RSA

Shor算法被提出后引起了人们的广泛关注,此后的时间不断有基于Shor算法的改进方案被提出。改进工作在多个不同的角度同时进行,比如,致力于减少算法所需的逻辑比特数或者物理比特数,使用模拟计算不断提高可分解的比特数或者将Shor算法与高性能算法相结合等。下面假设分解的数字为N,并且n=「log2N,算法运行中选取的随机数为a。

(1)实现Shor算法所需逻辑比特数的改进

1995年,Vedral等人[17]首次给出了逻辑比特一个确定的上界7n+1,并且确定了线路复杂度为O(n3)量级,还进一步指出了将量子比特降到4n+3的可能性。

1996年,Beckman[18]等人基于离子阱量子计算机的工作将上述结果修改为5n+1,同时指出了继续降低辅助比特数的可行性。1998年,Zalka[19]采用了并行算法计算加法以及快速傅里叶变换加速乘法等两种改进方法,将量子比特继续降到3n。

2003年,Beauregard[20]提出一种切实可行的2n+3型方案。该方案在两个方面进行了改进,一是利用序列傅里叶变换(semi-classical Fourier transform)替代传统的量子傅里叶变换,这使得控制比特的数量下降到1,取而代之的是需要O(n2)级别的经典信息传输来还原所需的傅里叶逆变换。另一处改进是借助了Draper[21]在2000年的一种利用傅里叶变换构造加法模块的技术,从而构造更加节省比特数目的模指数运算模块。然后在2021年,Rossi等人[22]将上述2n+3方法进行了部分优化,并在IBM的量子虚拟机运行该方法分解了51和57,并将该方法分解成功的概率与一般Shor算法之间进行了详细的比较。值得注意的是,该方法相比原始Shor算法中针对无法完成分解的对(N,a)提高了一定的成功概率。

2006年,Takahashi和Kunihiro[23]首 先对上述结果进行了改进,总量子比特数降到2n+2,线路复杂度和线路深度分别为O(n3logn)与O(n3),该线路的复杂度相较于文献[20]缩减了近一半。2016年,Häner等人[24]又提出了一种不同的思路实现2n+2比特数,该算法的线路复杂度与线路深度都和文献[23]保持一致,并且与之前算法不同的是该算法实现模乘的模块仅使用了Toffoli门和Clifford门。

仍然是在2006年,Zalka[25]给出了一种仅需要1.5n+2的理论模型,该文章还将Parker、Plenio在2000年给出的结论[26]进行了优化。文献[26]指出,2n个控制比特中的一半不需要初始化到|0>(尽管仍需要2n次测量),而Zalka则证明所有的控制比特都不需要初始化,不需要初始化的量子比特可以是任意态,也称为“脏”(dirty)量子比特。

2017年,Gidney[27]将总比特数再次修改到2n+1,尽管这一数字大于1.5n+2,但该算法所需的初始化的比特数更少,需要n+2个初始化的量子比特和n-1个脏量子比特。

综上所述,改进Shor算法攻击RSA所需逻辑比特数的具体研究进程如表2所示。

表2 Shor算法攻击RSA所需逻辑比特数的改进时间表

(2)Shor算法攻击RSA的规模估计

2009年,Van等人[28]设计了一种分布式量子计算模型,该模型的结果显示,攻击RSA-2048所需的量子比特数可能在65亿左右,此外,该算法采用了6n逻辑比特,总的Toffoli门数量约为3 200亿,攻击耗费的总时间预计为409天。

2010年,Jones等人[29]通过构造一种分层量子计算机模型将上述问题所需的比特数缩减到了6.2亿左 右。2017年,O′Gorman和Campbell[30]通 过 详 细 分析纠错理论将该问题所需的量子比特数进一步缩减到2.3亿左右。

2019年,Gheorghiu和Mosca[31]将量子比特数缩减到1.7亿左右,文献中采用的逻辑比特为4 098(即2n+2模型),理论上的攻击时间为24小时。同年,Gidney等人[32]对上述结果做出较大改进,将所需量子比特数缩减到2 000万左右。尽管他们使用的是逻辑比特数为3n理论模型,但是成功地将线路深度下降到500n2+n2logn,理论上的攻击时间也缩短到8小时。

2021年,Gouzien和Sangouard[33]采 用 时 间 换 量 子 体积的思路给出一种同样是基于Shor算法(该算法的理 论 部 分 来 自Ekerå和Håstad的 工 作[12])的 构 造,使用该构造攻击RSA-2048所需的逻辑量子比特数为8 284,但所需的物理比特数仅仅只有13 436,相比两千万这是巨大的飞跃,甚至可能将攻击RSA-2048的时刻表拉入近二十年之内。尽管理论上的运行时间有177天,但相较千万级物理比特数目的差距这完全是可接受的。此外,文章还指出,可以通过增加量子比特的形式来减少运行时间,比如,当物理比特数增加到184 000时,运行时间可缩短至68天。

综上,Shor算法攻击RSA-2048所需量子比特数的预估发展如表3所示。

表3 攻击RSA-2048所需总比特数的进展

除了上述两个主要的方向的进展外,量子模拟计算[33-35]、Shor算法与高性能计算相结合[36],Shor算法结合数论方法采用特殊处理[37]等方法均有相应的进展。

2.1.2 量子优化算法攻击RSA

将整数分解问题转化为优化问题后,后续的工作进展主要集中在利用量子近似优化算法(Quantum Approximate Optimization Algorithm,QAOA)、量子退火以及绝热演化等算法求解模型的方法研究[38]。

首先是2008年,Peng等人[39]第一次物理上实现了量子绝热算法分解因数,本次实验使用3量子比特分解了21,在当时也是首次实现对大于15的数字的量子算法分解。

2012年,Xu等 人[40]利 用 优 化 理 论 及NMR技 术在只使用4量子比特的情况下分解了143,与前人的方法相较,该文章在分解前进行了部分数学上的预处理(解方程),从而可以用更少的量子比特数来分解较大的数字。

随后在2014年,Dattani等人[41]利用相同的算法和4个量子比特得到了44 929和56 153的分解,对比2012年的类似结果,之所以能够有如此大的改进,得益于经典部分的数据处理,比如56 153的情况多数限制方程组都可以被约化,使得最后目标函数或者哈密顿量所具有的自由度与分解143的情况无异。

2016年,Pal等人[42]将经典处理和绝热演化相结合,在仅使用三个量子比特的情况下成功分解了551。2017年,Li等人[43]再次利用该思想在仅使用3个量子比特的情形下分解了291 311。

此外,在2016年,Dridi和Alghassi[44]利用D-Wave 2000Q实现了小于223 357=401×557的一般分解,并且指出了如何利用Gröbner基来减少哈密顿量的自由度以实现减少所需量子比特数的目的。

2018年,Jiang等人[45]提出一个理论框架,该框架可以将整数分解问题转化成优化问题进而构建为可执行的伊辛模型。对于给定的数字N,文章给出了算法所需的量子比特数O(log2(N)),并且文中展示了如何分别使用4、12、59、94个逻辑比特完成15、143、59 989以及376 289的分 解。验 证过 程 同样使用的是D-Wave 2000Q。

2020年,Saxena等人[46]提出了一种经典-量子混合方案,该方案可以看作是文献[40]和[42]的一个推广,特点是将量子绝热基态搜寻转变为可在一般量子计算机上执行的量子线路(将演化过程按时间切割,得到一系列酉矩阵,然后用通用门来表示这些酉矩阵),文章还通过IBM的量子计算机展示了上述方法分解35的过程。

同年,Wang等人[16]将优化方法的理论进行了细致的整理,给出了每个步骤的复杂度信息,并且借助D-wave给出了10 000以内的一般分解和最大到20比特(1 028 171)的数字分解。

2020年,IBM的Karamlou等 人[47]成 功 分 解1 099 551 473 989,使用的依然是变分方法,这也是当前文献可考的使用量子算法分解的最大数字。不过这一数字远没有通用机上分解的最大数字21更有意义,原因在于:理论上,只要选取足够大的相近素数相乘得到N,比如一对靠近2m的孪生素数,通过经典处理大概率能够以4个以内量子比特实现N的分解。事实上,IBM的这篇文章也正是这么做的,注意到如下事实:1 099 551 473 989=1 048 589×1 048 601以及220=1 048 576。

2.2 量子算法攻击DLP与ECDLP的进展

2016年,Ekerå和Håstad[12]讨 论 了 如 何 利 用 格 基约化算法在Shor算法求解DLP后处理中的作用。此外,有关量子算法攻击DLP的文献非常少,物理实现更是几乎没有,直到2021年,Aono等人[48]才第一次利用IBM的量子计算机解决一个2比特的离散对数问题。尽管求解DLP的量子算法早在1994年Shor已给出,并且Shor在文章中指出素数域上的DLP可以推广到其他域,但相关的研究直到近十年后才开始进行。

量子算法攻击ECC的方案最早可以追溯到2003年Proos和Zalka的工作[49],文献中主要考虑的有限域为素数域GF(p),而没有考虑诸如GF(2n)类有限域。在此基础上,文献给出了算法所需的逻辑量子比特数约为6n,其中n为密钥长度,尽管这一数字大于Shor算法的各种改进版本所需的逻辑比特数,但考虑到ECC加密算法的密钥长度天然比RSA的密钥长度短得多,攻击相同安全级别的ECC较RSA所需的逻辑比特数仍然是降低的。

2017年,Roetteler等人[50]给出了攻击素数域上ECDLP的精确估计。文中所需的逻辑比特数为9n+2[log2n]+10,线路所需的Toffoli门至多为448n3log2n+4090n3。并且他们同样将上述估计与攻击RSA的估计进行比较,指出对于通用量子计算机,攻击安全性能相当的同等安全级别ECC问题要比RSA问题更加简单。

2020年,Häner等人[51]通过平衡总量子比特数和线路深度以及T门数量,改进了Shor算法求解ECDLP量子线路中的点加线路模块,使之相较文献[50]达到更短的线路深度和更少的T门数量。

然 后 在2021年,Wroński[52]通 过 分 析ECDLP经典攻击中的指标积(Index Calculus)算法,其算法求解的关键是代数方程组的求解,他将其代数方程组的求解问题转化为QUBO问题,从而可以发挥量子退火机的优势,不过这一步骤的复杂度仍然难以估计。此外,作者借助D-Wave Leap cloud攻击了GF(p)(p=251)上的ECDLP。需要注意的是,经典场景下的指标积算法是一个亚指数级时间复杂度算法。该方案只是将量子退火理论与ECDLP相结合,目前还不能证明其优越性。

2021年,Banegas[53]等人针对定义在GF(2n)域上ECDLP做了Shor算法攻击实现的资源评估,需要7n+[log2n]+9个量子比特以及Toffoli门至多为,CNOT门的个数依然是O(n3)量级的。2022年,Liu等人[54]进一步优化Shor算法求解GF(2n)域上ECDLP的量子线路。利用节省空间的量子Karatsuba乘法器,可以实现较低CNOT门个数的模数求逆和模数除法线路,进而达到整体线路中CNOT门个数降为O(n2)量级的效果。

综上所述,量子算法攻击ECDLP的进展如表4所示。

表4 量子算法攻击ECDLP的进展

3 结论

本文较详细地分析了量子算法攻击公钥密码的研究现状,重点介绍了Shor以及量子优化算法攻击RSA的发展进程和Shor算法攻击ECDLP的发展进程,旨在帮助研究者们快速地了解国内外的研究方法与最新进展,为后续的工作起到借鉴作用。

由于通用量子计算机发展缓慢,在密码攻击领域,实现1 024比特的RSA攻击和163比特的ECC攻击还相当遥远。目前,已公布的文献中能够通过Shor算法使用真实的量子计算机分解的最大数字仍然是21,而且每前进1比特都相当困难,尽管有很多文献不断向下调整目标所需的逻辑比特或者物理比特,但Shor算法距离攻击公钥密码的距离仍旧十分遥远。此外,尽管通用机上的分解算法进展缓慢,但使用优化算法量子专用机却表现得出人意料,尤其是处理整数分解问题,通过经典部分的预处理,退火机能够分解的数字比通用机大几十个量级。

除了量子硬件发展的限制,当前量子算法攻击公钥密码还存在一些技术上的约束和困难,有待后续解决,具体问题见表5。

表5 量子算法攻击公钥密码的困难

由于量子计算对公钥密码的威胁,各国密码管理部门对后量子密码(Post-Quantum Cryptography,PQC)研究也开始重视和推进,旨在能威胁现行公钥密码的通用量子计算机问世之前,完成公钥密码系统到后量子密码系统的整体迁移。2022年7月5日晚,NIST公布其后量子密码标准化项目第三轮筛选的结果。提前被选中并将进行标准化的算法包括:CRYSTALS-Kyber、CRYSTALS-Dilithium、Falcon、SPHINCS+。其中CRYSTALS、Falcon是基于格的后量子密码算法,SPHINCS+是基于哈希的后量子密码算法。NIST正持续推进PQC的标准化过程,欧盟和亚洲国家也高度关注。世界各国的数字空间也将面临下一代公钥密码系统的迁移。这一趋势必将引发新一轮的IT产业变革,促进全球数字经济发展。

目前,国内不少科研学术机构和商业机构一方面在持续研究量子算法对公钥密码的攻击工作,另一方面也在高度关注后量子密码的迁移工作。在公钥密码攻击方面,上海大学的王潮团队、中国科学技术大学的彭新华团队一直致力于研究量子算法对RSA的攻击工作;合肥本源量子计算科技有限责任公司致力于在真实的量子计算机上研究对RSA和ECC的量子攻击算法实现。另一方面,很多科研团队在后量子密码的研究工作上也进展颇丰,如国内清华大学丁津泰教授参与设计的CRYSTALS-Kyber算法,顺利入选NIST关于后量子密码第四轮标准。

未来,密码学与量子计算的结合将会越来越紧密,后续需研究与发展的方向可以关注下面几个方面:

(1)不断优化Shor算法对公钥密码的攻击实现。Shor算法在理论上已威胁到公钥密码体制的安全性,且实验已经验证其正确性。在量子硬件条件受限的情况下,不断优化与改进Shor算法攻击RSA或ECC所需的量子比特数、量子门个数及其他性能指标是未来必然的一项研究工作。

(2)发掘专用型量子计算用于密码部件设计及公钥密码攻击的潜能。量子设计密码是一个新的领域,如何从传统密码的经典线路过渡到量子线路实现,以及实现怎样的密码算法安全指标。结合量子密码设计,在量子环境下,分析公钥密码的攻击实现以及可达到的安全级别。

(3)PQC迁移是必然趋势,且宜早不宜迟。IBM可能在2030年之前实现1 000量子比特的大规模实用量子计算机;加拿大将在2030年规划实现PQC的迁移;美国政府系统的后量子迁移工作将在10年后初步完成,并倡导工业界尽快完成后量子密码迁移。当前,部署后量子密码的迁移工作是未来十年工作的重点,工程量浩大,需要全世界各行各业一起努力,一起面对与解决迁移过程中遇到的各种问题。

(4)拓展量子算法对后量子密码的攻击工作。未来后量子密码面临的挑战主要是针对不同的困难问题分析它们的量子计算安全性。基于编码的后量子密码算法可以经得起多年考验,根本原因是其底层困难问题的归约仍然处于未知状态,因而缺乏针对性的高效算法。对于基于格的后量子密码,其底层安全性是基于确切的数学困难问题,未来是否也有类似Shor算法的量子算法可以高效攻击格密码进而带来底层隐患尚不确定。

综上所述,量子算法对公钥密码的威胁程度主要取决于量子计算硬件的发展,但对公钥密码的量子攻击研究依然需要不断优化与改进以提高其性能效率。未来十年,后量子密码的迁移是大势所趋,需要各行各业协同推进。

猜你喜欢
公钥复杂度比特
柬语母语者汉语书面语句法复杂度研究
数字经济对中国出口技术复杂度的影响研究
Kerr-AdS黑洞的复杂度
非线性电动力学黑洞的复杂度
神奇的公钥密码
国密SM2密码算法的C语言实现
《彭博》比特币有多贵?
比特币分裂
基于身份的聚合签名体制研究
比特币一年涨135%重回5530元