即使加密工具的安全性证明缺乏数学上的严格性,或者甚至完全缺失,它们也经常会被采用。

行业中是否存在著名的安全漏洞案例,在那之前(直到那时)基础加密才被视为安全的?

评论

是的-这被称为密码学的历史。

他们全部?形式验证很难,也有硬件(现在已经进行了状态验证,但是时间和精力很少:/或缓存访问:/)

这里的本质问题是,并不是所有实际起作用的东西都可以在数学上得到证明。不相信我吗证明我是错的。 ; )

@AlecTeal正式验证通常使用/不能捕获实时行为的简单描述来完成。这很有趣,但不是全部。

#1 楼


SSH协议具有复杂的记录格式,包括加密的消息长度,可变填充,加密和MAC等。这种复杂的系统在设计时没有进行任何正式的分析,即将系统的安全性与安全性相关。事实证明,这些构建块很容易受到攻击(无付费墙),利用MAC验证作为有关纯文本信息的预言者,从而导致在诸如OpenSSH的流行实现中对SSH进行纯文本恢复攻击。

SSL / TLS协议在非正式设计方面有着悠久而肮脏的历史,从而导致了多种攻击:无需正式分析的基于加密的加密方案,于1998年使用RSA密钥协议破坏了SSLv3,然后由于破坏安全性的协议兼容性后备而在2014年再次因POODLE攻击而破坏了它,然后于2018年因ROBOT攻击而再次破坏了它。
T BEAST攻击已在2002年被Phil Rogaway注意到,并在2004年从理论上对SSL / TLS进行了记录,它利用SSL / TLS的失败来遵循CBC的安全合同,这要求IV对于每个消息都必须事先无法预测—该协议部署了CBC,但没有对如何选择IV进行正式分析。
Lucky 13攻击(网站)通过将填充验证的时间用作CBC填充预告片来恢复纯文本,这是由设计CBC填充机制引起的TLS重新协商攻击利用了TLS协议中涉及密钥重新协商和身份验证的复杂状态机(从未对其安全属性进行正式分析)来伪造发送的消息到TLS对等方(恕不另行通知)。



OpenPGP协议是由上世纪90年代临时组成的通用且未得到充分理解的公用密钥加密和签名构建块设计的,没有对其如何组合使用进行正式处理。



“漂亮隐私”的最初承诺是保持电子邮件的私密性。但是,在没有正式分析的情况下,设计了将RSA等奇特的数学原语与AES等标准对称密码术相结合以对长消息进行加密的方法,而没有形式化分析将它们与构件的安全性相关联。

事实证明在实际的电子邮件客户端中,这种方法在实际中可利用EFAIL攻击进行攻击,这种攻击可能会泄漏邮件内容(我对此的回答)。自2002年在理论上首次报告该问题以来,耗时十五年,OpenPGP世界才在2018年实际发布攻击时赶上了这一问题。


PGP旨在防止伪造私人电子邮件。
但是没有正式的概念来表示从爱丽丝发给鲍勃的消息,只有加密的消息发给鲍勃,以及从爱丽丝发来的签名消息,不过您可以随意嵌套*……并且通常以查理可以接受的方式嵌套消息爱丽丝发送给他,并使其看起来像鲍勃,就像爱丽丝已发送给鲍勃一样。爱丽丝当然可以采取额外的步骤来命名邮件中的收件人,而鲍勃可以采取额外的步骤来检查其姓名。该软件也可以做到这一点。 OpenPGP设计师可以尝试将与人相关的交互形式化,并分析其安全性,还可以设计用于支持人为使用的密码。

但是,当遇到问题时,OpenPGP设计人员却断言该加密技术无法解决适当使用技术的问题,因此放弃了这一责任。到目前为止,OpenPGP协议还没有正式的概念,即从Alice到Bob的消息-可以通过标准的,易于理解的标准公共密钥身份验证加密来实现-即使它名义上旨在用于私人电子邮件。


OpenPGP中选择的公钥加密和签名方案本身未经任何形式化分析即可设计,它们与经过深入研究的硬问题(例如RSA问题或离散日志问题)相关,事实证明,两者

我不清楚这些是否导致了对OpenPGP的实际利用-也许是因为在GnuPG中,使用相同的算法-Elgamal签名和加密的消息秘密,它说明了在没有证明代码的情况下证明协议安全的危险,可以正确实现协议。






这些攻击都是针对协议t是由临时工程设计的,没有形式分析,不能保证协议的安全性和构建模块的安全性。但是原始的构建块(例如$ x ^ 3 \ bmod {pq} $)以秘密素数乘积的形式求和;像$ g ^ x \ bmod p $一样,对标准底数取幂以安全素数取模;像AES-256排列族;像Keccak排列一样,没有形式化分析来保证其相对于任何事物的安全性。给出什么?

对协议的形式化分析或可证明的安全性,包括将协议的安全性与其构建基块的安全性相关联的定理,仅是全球社会学系统的一部分,以使人们对安全性充满信心的密码学:


我们怀疑RSA问题很困难的原因是,地球上一些最聪明的密码分析家有数十年的强烈动机对其进行研究,并且他们留下了数十年未能找到任何破解(例如RSA)方法的记录。 -2048,每个键的费用低于$ 2 ^ {100} $。某些组中的离散日志,AES-256等也是如此。
对使用RSA和AES的协议进行正式分析后,密码分析人员就可以集中精力进行工作,因此他们不必浪费时间研究SSH,学习OpenPGP,学习SSLv3,学习TLS,学习WPA等,以发现是否有某种方法可以打破这些协议。如果形式分析做得足够好,则密码分析人员可以将精力花在少数几个原语上,而他们花更多的精力来破坏这些原语,我们对原语及其上构建的所有事物的信心就越大。未经正式分析的SSH,OpenPGP,SSL / TLS等协议是社会对全球密码分析师供应的巨大浪费。形式化分析可以更有效地利用世界上的资源,这将是有回报的,因为几乎所有上述攻击都可能仅通过研究所涉及协议的安全性和构件的安全性合同而被捕获:CBC在具有可预测IV的TLS中,PGP中的公钥加密未通过IND-CCA标准,而在PGP和TLS中基于RSA的加密方案未降低RSA安全性,在SSH和TLS中代表了错误响应,作为选定密文的预言对手。

并非所有协议一经设计就都易于形式化分析(如TLS重新协商的火车残骸),但是可以使用易于理解的可组合部分和清晰的安全性合同来设计协议,以利于进行正式分析,而不是像诸如此类的加密小工具的临时聚集。到了90年代,如今有一些工具,例如带有噪声浏览器的噪声协议框架,可以使用内置的形式分析来构成协议。


*有时是无限嵌套的!

评论


$ \ begingroup $
您能详细说明分析实际上并不那么难吗?
$ \ endgroup $
–user2768
19年4月4日在6:47

$ \ begingroup $
“他们留下了几十年的失败记录,这些失败导致找不到任何方法(例如),每个密钥的成本不到$ 2 ^ {100} $来破坏RSA-2048。”
$ \ endgroup $
–nick012000
19年4月4日在12:18

$ \ begingroup $
@ user2768更好吗?
$ \ endgroup $
–吱吱作响的s骨
19年4月4日在14:22

$ \ begingroup $
@ nick012000如果您知道具有Shor功能的量子计算机的设计,其可预测的成本低于$ 2 ^ {100} $,那么很多人都想听听它!
$ \ endgroup $
–吱吱作响的s骨
19年4月4日在14:23

$ \ begingroup $
@AlecTeal对不起,我不明白。你在问什么?我提供了无需付费的链接,因此世界上任何人都可以阅读该论文,而无需向IEEE支付学术勒索的费用。我还提供了权威的IEEE链接,因为它有时对于书目或参考目的很有用。您是要求更少的链接,还是要求不同的链接,或者要求不同的链接文本?
$ \ endgroup $
–吱吱作响的s骨
19年6月6日15:36



#2 楼

在选择用于椭圆曲线密码学的曲线时,有人建议使用各种类型的曲线,以避免某些“不良”特性,这些特性会使系统容易受到攻击。

MOV攻击会破坏ECDSA。类称为超奇异曲线。为了避免这种情况,有人建议使用另一类称为异常曲线的曲线,以确保它们不会过奇。

然后发现这些曲线遭受Smart攻击所利用的可疑的缺陷,

我不知道是否有人根据建议同时使用它们,但这表明椭圆曲线的非常微妙的数学性质可能会对椭圆曲线产生重大影响。整个系统,而对这些属性的了解不够充分,可能会导致严重后果。

#3 楼

令我惊讶的是,没有人提到Dual EC DRBG后门。

总而言之,特定的随机数生成器存在问题,因为它表明通过选择特定的初始参数,可以实现后门的存在。

路透社报道:


美国国民党作为嵌入加密软件的运动的关键部分,可以将其破解为广泛使用的计算机产品。安全局与计算机安全行业中最具影响力的公司之一RSA达成了价值1000万美元的秘密合同。RSA的合同使Dual Elliptic Curve成为在RSA工具包中生成随机数的默认选项。


在斯诺登泄漏之后,现在可以肯定的是,国家安全局确实实施了后门程序,因此有可能破坏安全性。

重要:在斯诺登泄漏前,后门的可能性已经发布。

我认为这在事后肯定使人们觉得愚蠢即使在数学上证明理论上后门可能存在之后,它仍然是一种安全的算法。


有关更多信息:


视频描述了这种方式后门将由Numberphile工作。

关于NIST整个后台流程的PDF声明。


评论


$ \ begingroup $
请下票的人解释一下为什么这不是一个好答案吗?
$ \ endgroup $
– AleksanderRas
19年4月4日在6:58

$ \ begingroup $
可能是由于(a)这是一种未经证实的阴谋论,以及(b)该说法并未表明缺乏所要求的数学严谨性。
$ \ endgroup $
– cHao
19年4月4日在13:12

$ \ begingroup $
@cHao(a)唯一缺少的是标准参数的实际后门钥匙,很明显,NSA不会与世界分享。后门的设计很容易理解-它早在2005年就获得了专利!-密码学家之间已经达成广泛共识,如果您不为后门使用它,那么选择Dual_EC_DRBG将会是一个白痴,因为即使忽略了后门,这是一个愚蠢的缓慢PRNG。
$ \ endgroup $
–吱吱作响的s骨
19年4月4日15:10



$ \ begingroup $
@AleksanderRas您能否详细说明Dual_EC_DRBG是如何安全的,并在此前提下在实践中采用和部署,直到有人进行正式分析并断定该协议已被破坏?
$ \ endgroup $
–吱吱作响的s骨
19年4月4日在15:12

$ \ begingroup $
@cHao我编辑了答案,以反映路透社在2013年的确切报道,不久之后,《纽约时报》报道了NSA内部文件,其中描述了故意破坏加密标准的程序。 (AleksanderRas:抱歉,如果这干扰了您的意图,请当然再次更改它,因为这是您的答案。)除非他们想要后门,否则任何自重的密码学家都不会选择Dual_EC_DRBG,这就是为什么NSA去找业务负责人而不是RSA,Inc.的技术人员的原因。
$ \ endgroup $
–吱吱作响的s骨
19年6月6日在22:19

#4 楼

请注意,即使算法被证明是“正确的”(也就是说,该算法被证明具有某些明确定义的属性),在实现中仍可能存在缺陷:实现可能依赖于底层硬件和几乎可以肯定,该软件没有受到相同级别的数学审查。因此,您会遇到诸如Meltdown和Sceptre之类的缺陷,从而执行算法会留下其内部变量的可发现痕迹。安全算法的任何数学证明几乎都将依赖于这样的假设:该级别的实现是完美的。

评论


$ \ begingroup $
我想你是说算法被证明是“安全的”时?
$ \ endgroup $
–user2768
19年4月4日在14:58

$ \ begingroup $
不能证明算法是安全的。可以证明它具有某些定义的属性,这些属性可能符合您对“安全”的定义,但是您的首要任务是定义数学上“安全”的含义。
$ \ endgroup $
–麦凯(Michael Kay)
19年4月4日在16:26

$ \ begingroup $
幽灵,而不是神杖。 =)
$ \ endgroup $
–詹姆士林
19年4月4日在18:26

$ \ begingroup $
@MichaelKay Proven安全是一个广泛使用的短语(对或错),但这不是我的意思:正确性在文献中具有技术含义,它用于捕获功能性的非安全性要求,例如正确性加密方案的加密需要解密密文以返回基础明文(在某些明智的条件下)。
$ \ endgroup $
–user2768
19年5月5日在7:18

$ \ begingroup $
好吧,很抱歉,如果我多年前学到的术语与该社区中的用法不匹配。
$ \ endgroup $
–麦凯(Michael Kay)
19年5月5日在8:28

#5 楼

早期的WiFI协议(WEP)的IV值太小。插入已知的数据速率并分析协议将告诉他们。

#6 楼

MIFARE Classic是一种非接触式智能卡,可用于许多应用程序,例如过境票价收集,通行费,会员卡等。

这些卡的创建者NXP使用专有的安全协议Crypto -1以保护它们。

Wikipedia引用“此密码的安全性...接近于零”。

当今已知这些卡是使用合适的设备很容易破解,而且非常不安全。

尽管这是一个引人注目的例子,但Crypto-1可能从未被广泛认为是安全的,因为它是专有的封闭源密码。尽管如此,这些卡的发行量仍然很大,并且今天仍在使用。