#1 楼
是的,是的,不是。使用3个不同的密钥的三重DES仍然被认为是安全的,因为没有已知的攻击将其安全性完全破坏到如今可以破解的程度。 >
三重DES算法可提供大约112位的安全性,以抵抗暴力攻击(考虑到中间相遇攻击)。
作为参考,使用了疯狂的计算能力找到第一个SHA1冲突估计要多于$ 2 ^ {63} $个操作。因此,我们仍然具有$ 2 ^ {49} $的安全边际,这虽然足够了,但仍远低于AES等其他标准。根据NIST SP 800-57的最新建议,NIST仍建议使用具有3个不同密钥的三重DES。
三重DES也是事实上的回退算法对于PGP:这是所有与OpenPGP兼容的软件都必须实现和使用的算法,如果在接收者的公钥中没有广告其他普遍支持的算法。
但是,Triple DES的块大小只有64位,实际上是一个“小”块,这导致针对TLS会话的Sweet32等攻击,由于“块冲突”而使系统安全性受到破坏。此攻击导致从OpenSSL 1.1.0发行版的DEFAULT密码列表中删除了Triple DES。还可以通过在给定数量的加密数据后重新键入密钥来缓解攻击。因此,Triple DES仍处于TLS1.2标准中,但尚未纳入TLS1。 3个。
所以最后,如果您只想用它加密某些东西,Triple DES仍然被认为是安全的,但是如果您正在运行基于它的协议,那么您应该担心它的安全性。小块大小导致Sweet32攻击。
评论
$ \ begingroup $
两个关键的3DES提供了类似$ 2 ^ {80} $的安全保护,这接近于现代设计中使用的暴力攻击的极限。请注意,3DES比AES慢,但提供的安全性却较低,实际上,只有三分之二的块大小,弱密钥,奇偶校验位和更多的巨型组合(您确实可以做不到...)(顺便说一句)
$ \ endgroup $
–马腾·博德威斯♦
17 Sep 19 '17:44
$ \ begingroup $
@MaartenBodewes非常正确,我应该提到,自2015年12月以来,NIST SP800-131A甚至不赞成使用2个密钥3DES。关于弱键和其余键,感谢大家提一下。
$ \ endgroup $
– Lery
17年9月19日在17:34
$ \ begingroup $
他说了什么。任何带有64位块的密码的主要问题是块大小和生日限制攻击(如Sweet32)。周围有很多这样的东西,例如3DES,Blowfish,IDEA等。 AES比其中任何一种都更快,更安全。如果您不喜欢AES,请查看Twofish或Serpent。如果您有一个使用3DES的项目,则更新它应该列在优先级2上,同时还要清理厨房中的垃圾抽屉。您应该这样做,今天不重要。如果您有一个新项目,请不要。只是不要。
$ \ endgroup $
–乔恩·卡拉斯(Jon Callas)
17年9月19日在22:35
$ \ begingroup $
@Maarten Bodewes:将两键3DES降低到80位安全性的攻击要么是受到严格保护的秘密,要么是需要如此多的可笑的访问,以至于目前尚不可行的快速RAM;看到这个。在今天的实践中,两键3DES仍然很常见。与成功进行密钥搜索而损害其短期安全性的可能性相比,它更容易受到侧通道,其他泄漏或故障攻击,其较小的块大小,速度慢,缺乏长期的机密性保证以及不符合安全建议的威胁。操作安全性。
$ \ endgroup $
–fgrieu♦
17-09-21在7:01
#2 楼
NIST最近(2017年11月27日)发布了一个公告,指出Triple-DES将在未来被弃用,并且在诸如TLS和IPsec之类的协议中将被禁止,并将发布未来的弃用时间表。 NIST敦促供应商将TLS实施过渡为尽快使用AES。它将很快从FIPS批准的算法集中删除。https://csrc.nist.gov/CSRC/media/Publications/Shared/documents/itl-bulletin/itlbul2017-11.pdf
现在我要说的是,Triple-DES即将问世,很快就会被认为是不安全的。
评论
禁止在应用程序中使用3DES。参见stackoverflow.com/questions/62437171/…@ user21444不禁止。