NIST在2000年选择Rijndael作为AES。在Serpent作者的论文中,他们提到在发生严重中断的情况下,有可能选择第二个密码作为备份:


我认为应该只一个标准。 NIST应该决定一项标准,以确保尽快接受和采用该标准。但是,NIST可以发布备用密码的选择,以防备用密码被破坏或在其他情况下(例如知识产权问题)阻止其被公众使用时替换该标准。


根据NIST报告的第2.4节,NIST尚未执行此操作。如果发现对AES的严重密码分析攻击,是否有适当的流程?想象到2029年,一份新论文问世,这14个回合都可以被打碎,复杂度为$ 2 ^ {50} $,已知明文量可忽略不计。 NIST是否会采取任何官方措施,例如更改标准以使用更多回合?是否会选择其他AES候选者之一作为AES2?

我不相信如果没有事先的密码分析表明该密码逐渐变得越来越弱,该密码将不会有重大突破。怀疑彻底破灭,如果有人发现,将是一个惊喜。但是,我仍然想知道是否对此事有官方政策。

评论

我认为针对攻击的第一种方法是增加密钥大小。尽管这可能无法阻止所有类型的攻击。<​​br />
@kelalaka增加密钥大小并不一定会增加安全性。例如,对AES256的最著名的攻击要比对AES128的最著名的攻击更好。

@redplum这是一个相关的密钥攻击,当您将AES与随机密钥一起使用时,这不是问题。

请注意,替换所有AES实现的机会大约需要十年(基于对迁移到PQ加密的类似估计),如果需要额外的时间来选择替换,则需要更长的时间(2-5年)。

当然,随着政府的关闭,这个问题在更糟的时候不会出现。

#1 楼

我不知道有关此事的任何NIST官方政策,因此我只能做出有根据的猜测。

我想新的算法应运而生,并且已经就位。 ChaCha20在TLS 1.2和1.3中使用。对于哈希函数,SHA-2和SHA-3都不以任何方式依赖AES。 Keccak(SHA-3)中的海绵功能也可以用作对称密码(Ketje,Keyak和Kravatte),以及(稍作调整)可以用作MAC(KMAC)。因此,我不愿退缩,我认为NIST只会简单地将现有密码与基于Keccak的更现代密码标准化。将选择原始AES候选对象中的一个作为新AES(或FES,用于固定加密标准)。世界在前进。可能会有更安全且肯定更快的分组密码。例如,我可以看到Bruce Schneier和Skein团队会选择Threefish而不是Twofish。如果Rijndael被打破,并且拥有很高的安全保证金,他可能会给Serpent一个机会。不过,它似乎与AES有很多共同点,因此即使它的回合次数很多,中断也可能会影响蛇的安全性。

这使我们进入了重要的决赛要点:破损的AES可以通过增加回合数来解决。在这种情况下:国王死了,国王万岁。毕竟这里有硬件,通常可以配置回合数量。在短期内这将是最有意义的,并且将为NIST提供一些喘息的空间来考虑替代方法。

评论


$ \ begingroup $
另外一个3-AES :)
$ \ endgroup $
– kelalaka
19年1月17日在15:48

$ \ begingroup $
kelalaka,感谢您的更正。我认为AESede听起来更好:)
$ \ endgroup $
–马腾·博德威斯♦
19年1月17日在16:18

$ \ begingroup $
我想看看Keccak密码。
$ \ endgroup $
–约书亚
19年1月17日在17:22

$ \ begingroup $
他们为什么会选择Threefish?它不是为Skein设计的,不是作为通用分组密码设计的吗?
$ \ endgroup $
–森林
19年1月19日,下午3:12

$ \ begingroup $
我在答案中命名了3个基于Keccak的候选密码:Ketje,Keyak和Kravatte。我宁愿使用其中之一而不是SHAKE,因为仅仅是因为SHAKE在库接口中没有任何显式的键处理。
$ \ endgroup $
–马腾·博德威斯♦
19年3月12日在8:16

#2 楼

甄选过程


1997年1月:商务部与美国国家标准技术研究院(NIST)合并,宣布在国际范围内寻找DES的后继者。

AES的要求是:


AES必须是对称算法,特别是分组密码
AES必须使用128位的块大小(192位和可能有256位扩展名)
AES必须支持128位,192位和256位的密钥大小
AES必须相对易于在硬件和软件中实现
具有高于平均水平的性能
AES必须能够抵抗所有已知的密码分析攻击(尤其是电源和定时攻击)
AES必须在智能卡中可用(计算机内存较低)
AES必须免费和开放源代码

提交可能的AES的可能性于1998年6月15日结束。

总共提交了15个提案。

/> 15个中有5个被选为可能DES的前身,它将被命名为AES:


MARS cipher
Rijndael(AES)

Twofish

所有这些算法均满足要求。之所以选择Rijndael算法,是因为它在硬件和软件方面特别高性能(在C语言中只需要500行代码)。

即使我找不到“后续步骤”的任何概念如果当前的AES将被破坏(由于政府关闭,目前NIST也已部分关闭),我个人将提出以下建议:在其他4种算法上尝试破坏Rijndael算法的攻击,并评估是否也打破这些。如果可以抵抗这种攻击,则应选择一个作为新的AES。

评论


$ \ begingroup $
如果一个人可以抵抗这种攻击,那么该人将被选作新的AES。 -我认为您确实需要引用此声明。 “我认为”不是回答有关NIST官方政策的好方法。对于他们来说,这似乎是一件合理的事情,但这并不意味着他们计划这样做。
$ \ endgroup $
–艾拉·罗斯(Ella Rose)
19年1月17日在15:57

$ \ begingroup $
是的,我更改了答案,以便更清楚地表明这是我对此事的个人看法
$ \ endgroup $
– AleksanderRas
19年1月18日在8:17

$ \ begingroup $
我已经知道我会做些什么。我也觉得我知道某些主要供应商会做什么,但这并不能回答美国政府将为标准做些什么。毕竟,如果主要供应商转向18轮Rijndael或Serpent,他们将不再声称使用政府标准。绝对需要使用政府标准的公司可能会还原为3DES。
$ \ endgroup $
–森林
19年1月19日在3:15