如何在Python

时间:2015-06-19 00:21:28

标签: python encryption aes

任何人都有办法使用Python加密/解密,以CBC模式处理AES,密钥为1024位(128字节)?到目前为止发现的所有AES pkgs似乎都限于256位密钥。我的加密背景有限......

1 个答案:

答案 0 :(得分:2)

AES仅针对128,192和256位的密钥大小进行定义。无法使用其他密钥大小,仍称其为AES。如果您想与其他实现兼容,则必须坚持定义的密钥大小。

获得正确大小的密钥的两种常用方法是:

  • 只需将您的密钥的一部分切片,即可获得其中一个有效尺寸。只有在使用大量熵创建大密钥时才应该这样做。如果没有,那么你可能会更容易做出暴力。

  • 通过一些散列函数(如SHA-256)运行大键以获得256位密钥。同样,如果大键具有低熵,则应将其视为长密码并通过PBKDF2运行它,并进行多次迭代。