AES ECB使用slowaes

时间:2013-06-29 00:19:13

标签: python encryption python-2.7 aes

是否可以使用slowaes中的python类进行AES ECB 加密?

AESModeOfOperation支持OFB,CFB& CBC模式。有没有办法使用其中一种模式模拟ECB?

2 个答案:

答案 0 :(得分:3)

可以使用IV值为零的CBC(十六进制中16个字节的值为'00')。

仅加密单个块。如果输出超过16个字节,则在加密之前填充纯文本;只使用输出的前16个字节。

现在你有一个块加密。 ECB模式只是单块加密的串联。所以你需要16字节的纯文本,用上面的方法加密,然后让结果成为密文的下一个16字节。

当然,您可能必须自己pad发送您的信息,但这不应该太难。

答案 1 :(得分:3)

你不需要为ecb做任何特别的事情。只需将您的消息划分为块并使用“原始”aes(即Python中的AES.encrypt())加密每个块。同样,要解密,请为每个块调用AES.decrypt()

其他模式更复杂,这就是为什么需要AESModeOfOperation中的代码。

正如其他人所说,这不安全。请参阅wikipedia上的讨论(特别是查看企鹅图片)。