现在的加密算法仍然安全得很。
文|新智元
编辑|大明
前几天,谷歌刚刚宣布实现了其长期以来提出的“量子霸权”的目标。这是量子计算领域的一个重要里程碑,开启了量子计算机可以在性能表现上超越经典超级计算机的新时代。
量子霸权已经到来
在谷歌于2014年建立量子计算实验室时,就曾表示将尝试使用大约50量子比特实现量子霸权。当时,世界上性能最强大的超级计算机只能模拟45量子比特,因此谷歌认为实现50比特就可以达到这个目标。
但在2017年,Google承诺要实现量子霸权的同一年,IBM在一篇关于量子计算的研究论文中表明,即使实现56量子比特也不足以实现量子霸权。一年后,谷歌开始讨论新的72量子比特量子计算机。
从那时起,谷歌开始降低其新版量子计算机的量子比特数量,最近公布的量子计算机只有53量子比特。正如IBM一段时间以来所说的,重要的不仅是量子比特的数量,还有“量子体积”,它是描述量子比特的数量和错误率的组合的衡量标准。
因此,仅仅看物理量子比特的数量,可能看不出量子计算机性能的高低。D-Wave的量子退火计算机声称有5000量子比特,但该公司甚至没有提出要实现“量子霸权”或任何类似的说法。
Google的量子计算机可以运行经典超级计算机无法在合理的时间内运行的量子算法,从而实现了量子优势。这是量子计算机首次在任何方面都超越了传统超级计算机。
尽管这个真正的量子计算的首次“胜利”可能看起来不算惊天动地,但从历史上看,第一个晶体管出现时,人们同样觉得不会有很大的作用。我们可以预期的是,谷歌研究人员在论文中声称的运算速度的双指数级提升,最终将使量子计算机能够运行更多的应用程序或模拟任务(比如化学反应的模拟)。面对这类任务,经典超级计算机是无能为力的。
距量子计算机破解现有加密算法还有多久?
自从量子计算的概念提出以来,科学界就一直在讨论能够打破现有加密算法的量子计算机何时诞生。早在量子计算机还没有实际建造之前很多年,就已经诞生了为量子计算机开发的最早的“算法”之一,其中之一就是旨在破坏现有加密的算法。
有一种算法名为Shor算法,只要量子计算机有足够的逻辑量子比特来执行操作,该算法就可以完全破坏基于RSA和椭圆曲线密码学的加密机制。还有一种称为Grover的算法,可以将AES加密从128位彻底削弱至64位,然后就能通过普通计算机算法来破解了。
我们可以通过增加加密算法的位数,来防御量子计算机和量子算法的破坏,但是一旦量子计算机具备了破坏最低级别的加密的能力,那么距离它们破解这些加密算法的最强版本只有数年的路程。这种办法看来行不通。
不过好消息是,要破解目前最常用的加密算法,将需要成千上万个逻辑量子比特。加拿大公司Krypterra的研究人员认为,要攻破AES-128算法,需要2953个逻辑量子比特,而要攻破AES-256算法,则需要6681个逻辑量子比特。要破解RSA-2048加密算法,则需要4096逻辑量子比特。
那么,逻辑量子比特到底是什么?关于加密算法的“更安全”消息来了。Krypterra的研究人员表示,要获得数千个逻辑量子比特,需要数百万个物理量子比特,后者就是Google、IBM,Intel等目前声称实现的量子比特类型。
Google之前也曾表示,只有我们实现了10万到100万量子比特这个级别,量子计算机才变得真正有趣起来。
话虽如此,我们也不应该太过乐观。首先,这个说法是在未来基于现有条件的假设(比如现有错误率)。如果我们在未来发现了一些突破性技术,可以极大地降低量子比特的错误率,那么最终可能仅需要几百个、几十个、甚至几个物理量子比特,就能组建一个逻辑量子比特,从而使当前加密算法被破解的时间大大提前。
抗量子攻击的加密算法
所有这些并不一定意味着我们最终将不得不进入一个“前斯诺登”时代,一切内容都像是未加密的一样,我们的私人通信记录和在线交易记录都将被网络罪犯和间谍机构肆意监视和掠夺。还是有一些“抗量子”的加密算法可以保护我们免受量子计算的攻击。
美国国家标准技术研究院(NIST)已在努力对其中一些算法进行标准化。这些算法的缺点是,在很多年后仍然未被证明。与传统算法相比,这些算法的性能也往往较低,但正因如此,它们面对量子计算机的破解攻击才显现出更高的弹性。
所有这一切都意味着,即使量子计算机能够在未来二三十年后成功破解现在的标准加密算法,现在开始设计和试验新的加密算法也不算为时过早。这样,当我们发现传统加密不再能够安全抵御量子计算的攻击时,我们仍然可以确保新算法能够起作用。
参考链接:tomshardware.com