在FIPS PUB-197AES-128密码中,如果我的纯文本分为N个128位块,则需要多少个唯一的128位密码密钥?

问题描述

我在网络上发现的有关AES-128算法的所有描述都谈到输入128位纯文本,该纯文本经过11轮转换以生成128位密文。我的问题是:

由于要发送的实际消息不仅可以占用单个128位“块”,因此我需要为我从消息生成的每个128位块使用AES-128加密的唯一密钥吗? ,还是可以对这128位块中的每个块使用相同的密钥?

我需要有关创建论文(期刊)算法的信息,因此我需要科学地正确使用构成算法一部分的AES-128。

解决方法

您可能想看看Block_cipher_mode_of_operation

如果每个块都使用相同的键,则说明您正在使用电子密码本(ECB)。但是,不建议这种操作方式。

更安全的应该是Galois / Counter模式或Cipher块链接模式。有关更多信息,请阅读Wiki文章。

,

我对FIPS PUB-197不熟悉,但是我知道AES的安全性。

AES是一种分组密码,所有分组密码的建模方式都使得即使知道密文和明文,也无法推断出密钥。使用此属性,您可以得出结论,即使攻击者知道部分明文和密文,对多个块使用相同的密钥也是绝对安全的。这种特性是在密码分析人员希望在诸如AES之类的算法中发现漏洞之后进行的密码分析之后出现的。

此外,如果您有11个回合可获得128位密钥,则您没有AES,但是还有其他东西。