微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用相同 Key/IV 的 Python AES CTR 模式

如何解决使用相同 Key/IV 的 Python AES CTR 模式

我发现了一个加密的 PIN 码(在本例中为 9999)的散列,我知道它是使用 AES CTR 加密的。

问题是,我不知道如何用 python 写这个。我知道密钥和 IV 是相同的,但是我知道 CTR 模式不需要 IV,而是使用计数器。我就是不知道如何使用 CTR 的 IV/Counter 部分。

from Crypto.Cipher import AES
from Crypto.Util import Counter
import base64
import binascii


hashed = "aEotxA=="
encrypted = base64.b64decode(hashed)

key = b'4170ac2a2782a1516fe9e13d7322ae48'
iv = b'4170ac2a2782a1516fe9e13d7322ae48'

aes = AES.new(key,AES.MODE_CTR)


print (binascii.hexlify(aes.decrypt(encrypted)))

我也尝试过使用 Counter:

ctr = Counter.new(128,initial_value=int_of_string(iv[:16]))
aes = AES.new(key,AES.MODE_CTR,ctr)

如有任何帮助,将不胜感激。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。