使用相同 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 (将#修改为@)