在Python中,有没有办法改变AES密码的块大小?

时间:2014-01-09 10:15:43

标签: python aes pycrypto

在pycrypto文档中 http://pythonhosted.org/pycrypto/

block_size是AESCipher的变量,设置为16。 显然它无法改变

我是对的吗?

1 个答案:

答案 0 :(得分:4)

据推测,没有办法做到这一点,因为AES规定了128位(16字节)的块大小。请注意,密钥大小是不同的,可以变化(128,192或256位)。

来自Understanding Cryptography, chapter 4.2, Overview of the AES Algorithm

  

AES密码几乎与分组密码Rijndael相同。该   Rijndael块和密钥大小在128,192和256位之间变化。   但是,AES标准仅需要128位的块大小。   因此,只有块长度为128位的Rijndael被称为   AES算法。

如果你想要一个具有另一个块大小但在其他方面相同的变体,你应该看看Rijndael的实现,而不是AES。