NSA最近发表了一篇文章,旨在构建可以破解大多数加密类型的量子计算机。现在,我对NSA进行任何尝试1并不感到惊讶,但是让我感到莫名其妙的是“最”一词-那么,哪些加密算法是已知的并且已经过充分测试,并且不易受量子计算的影响?

评论

1)是的,如果他们有一个秘密的算命部门,我什至不会感到惊讶...

最好在现实世界中使用OTP-对于虚拟世界,请使用对称算法+ 256位密钥。看看这个theguardian.com/world/2013/sep/05/…

量子计算机仍然遥不可及。该概念依赖于使用位,这些位在未被观察时均为1和0,因此能够使用给定空间中可以表示的所有值进行计算-只需一次计算。听起来很浪漫,但我还没有听说过用这种方式进行计算的方法,同时又不去观察它们。
不要仅仅因为NSA这么大的组织就试图建立某种他们希望很快就能成功部署的东西而已。因为军备竞赛是种族,所以组织经常会研究一些东西,因为他们不想在竞争对手部署它们时才刚刚开始。如果国家安全局(NSA)建立起对量子计算了解的人的大脑信任,那么他们也许能够在竞争对手之前部署一个,并且不太可能措手不及。

@十一月您的知识已经过时了。已对qbit进行了计算。只是不是很多。但是这个概念没有什么“浪漫的”,它已经在实践中得到了证明。

#1 楼

像往常一样,新闻界谈论技术主题时往往对细节一无所知...

假设可以构建真正的量子计算机,那么:


RSA和其他依赖整数分解的难度的算法(例如Rabin)是吐司。 Shor的算法非常有效地分解大整数。
DSA,Diffie-Hellman ElGamal和其他依赖离散对数硬度的算法也被破坏了。 Shor算法的变体也适用。请注意,每个组都是这样,因此这些算法的椭圆曲线变体效果就更好了。
对称加密被削弱;即,量子计算机可以在时间2n / 2中搜索大小为2n的空间。这意味着128位AES密钥将被降级为64位密钥的强度-但是,请注意,这些是264量子计算操作;您无法应用通过FPGA和GPU进行的研究得出的数据,并且盲目地假设如果可以完全构建量子计算机,那么它可以廉价地构建和运行。 。粗略地讲,具有n位输出的散列函数将抵抗强度为2n / 2的原像,并且可以抵抗高达2n / 3的碰撞(传统计算机的数字分别为2n和2n / 2)。如今,SHA-256仍具有与170位哈希函数一样强的抗冲突能力,即优于“完美的SHA-1”。因此,如果证明要制造量子计算机,对称密码术将不会受到严重破坏。即使可以很便宜地构建它,实际的对称加密和散列函数算法仍会提供非常适度的抵抗力。但是,对于非对称加密,这将意味着麻烦。尽管如此,我们仍然知道几种不对称的算法,这些算法不知道有效的基于QC的攻击,特别是基于晶格简化(例如NTRU)和古老的McEliece加密的算法。出于各种原因,这些算法在当今并不十分流行(NTRU的早期版本很弱;有专利; McEliece的公钥很大;依此类推),但是仍然可以接受。

在可以构建有效的量子计算机的前提下进行密码学的研究被称为后量子密码学。让国家安全局走得更远。 IBM在该主题上进行了数十年的研究,并花了很多钱,而且他们最好的原型并不令人惊讶。 NSA在量子计算这一概念上花费了一些钱,这很有可能是合理的。毕竟,那是他们的工作,如果纳税人的钱没有用于这种研究,那将是丑闻。但是搜索和查找之间有区别...

评论


+1,希望我能给您最后两句话+10。伴随着关于他们虐待行为的所有丑闻,有时人们很容易忘记,当所有人都说过并且能够监视他人时,这是他们的工作,而我们反对的是他们这样做时缺乏克制...

– Shadur
2014年1月3日在16:22

+1-当然,您可能会认为,国家安全局(NSA)只需投入8000万美元,就可以从大多数目标中击败私人钥匙...然后他们又可能迫使IBM和其他公司“自愿”提供他们最秘密的研究到目前为止的进展

– Tobias Kienzler
2014年1月3日在16:34



@ Rell3oT:这个想法是一个量子位是几个状态的叠加,因此,在某种程度上,一次操作可以同时完成多个计算。不确定性原理是在量子水平上,我们认为是“物质”的行为实际上像概率分布一样的事实,是另一种无关紧要的表达。

–托马斯·波宁(Thomas Pornin)
2014年1月3日,18:02

@Matrix RSA(或DSA)用于服务器标识自己,密钥协商使用Diffie-Hellman。但这就像DSA一样依赖于离散对数,因此我认为它同样容易受到Quantum Computing的攻击。但是,如果没有一种方法可以对PFS使用/修改质量控制较弱的方法,我会感到惊讶

– Tobias Kienzler
2014年1月4日在8:41

@skan:蛇是一种对称加密算法;我对AES的说法同样适用于Serpent。实际上,这意味着用128位密钥进行的蛇形加密可以在量子计算机上用大约2 ^ 64次操作来破坏(2 ^ 64在传统计算机上已经是非常大量的操作)。

–托马斯·波宁(Thomas Pornin)
17年5月5日,12:53

#2 楼

量子计算将对非对称加密产生最戏剧性的影响,但是对称算法被认为具有足够大的密钥大小(256位)是安全的。所以,是的,我们必须在量子计算真正起飞时重新发明x509 / SSL(这足够大的TODO),但是会有很大一部分密码学保持相对安全。

http://en.wikipedia.org/wiki/后期量子密码学
http://www.pqcrypto.org/www.springer.com/cda/content/document/cda_downloaddocument/9783540887010-c1.pdf

#3 楼

当密码学家谈论量子计算机和后量子密码时,实际上他们谈论的是Shor算法在分解因数上的能力,因此用于创建密码系统的基于分解因数的难题被Shor算法(量子计算机)打破了,因此RSA,DSA ,ELGamal,Diffie-Hellman密钥交换,ECC容易受到量子计算的攻击!

在公共密钥密码学中,三种方案都是量子安全的: />如NTRUEncrypt的基于格的密码;基于网格的

如McEliece密码系统的基于代码的密码;基于信息论的
br />以及像AES这样的对称加密,如果您选择长密钥,则可以抵御量子计算机和NSA!

以供将来阅读:Quanta杂志链接和后量子加密书

#4 楼

1次填充仍然是最强的,不可破解的(如果使用正确)加密。当然,您确实必须面对面交换键盘,但是我认为95%的需要这种安全级别的人员将在建立安全的通信之前遇到。用于特定消息的效果很好,并且已被安全服务使用。

评论


这不能解释量子计算机无法破解的加密类型,因此也无法真正回答问题。

– Xander
15年3月14日在19:37

@Xander这个答案说一次性垫方法是坚不可摧的,这是正确的说法。

–伊布利斯伯爵
16 Mar 7 '16 at 16:02

我不明白为什么这个答案提到256位密钥。使用256位密钥加密1024位纯文本不使用OTP。

– A.达尔文
16年5月2日在18:22

#5 楼

为了增强对NSA的保护,请使用AES链块密码模式进行加密,然后再次对密文(第一次加密的结果)进行加密,并重复多次。 NSA可能会尝试通过蛮力搜索来遍历搜索空间,并通过确定所测试的每个键的结果的熵来找出它们已经破解了代码。当他们看到有意义的文本作为结果时,他们知道何时停止。通过多次加密,可以使他们更难确定何时破解了密码,因为如果他们尝试使用正确的密钥,则结果将是混乱的,几乎与错误密钥的结果无法区分。随着重新加密次数的增加,破解加密内容的难度变得更加困难。美国国家安全局(NSA)会想尽办法找出破解密码的方法。但是要提防只在“电子密码书”(ECB)模式下运行的幼稚加密。您将需要以更复杂的模式之一运行的加密,例如“链块密码”或“密码反馈”。是的,量子计算机将使NSA可以更轻松地尝试可能的密钥。但是,通过多次加密(当然,每次加密重复都使用不同的密钥),会使您的搜索空间变得困难,因为密钥长度是这个因素的两倍。希望这可以帮助您将自己的东西放在NSA的控制范围之外。

评论


应用多层加密的含义可能非常复杂,并且在最坏的情况下会降低各个层的安全性-例如,对整个消息进行两次异或操作-您最终将获得原始消息!即使您使用两个不同的密钥,也仍然等效于使用一个完全不同的密钥进行异或。使用AES当然会更复杂,但是您确实可以通过增加密钥大小来帮自己一个忙……

– Tobias Kienzler
2014年1月4日在8:46

@TobiasKienzler仅适用于某些类型的密码。对于流密码,只要随机数不同,一切都很好。对于(大多数)分组密码,密钥是否不同甚至都没有关系,尽管当然,如果密钥相同,则不会获得额外的安全性。对于AES之类的东西,进行多重加密是完全安全的,通常只是愚蠢而不必要的。

–森林
18年4月17日在12:28

@forest做一些愚蠢且不必要的事情是不安全的,因为在正确使用上述资源的情况下,您将计算资源浪费在了不能真正提高安全性的事情上

– Tobias Kienzler
18年4月17日在12:31

@TobiasKienzler是的。复杂性的增加可能导致错误。我只是说,从纯粹的密码学意义上讲,在大多数情况下这并不安全。

–森林
18年4月17日在12:33