我试图更新一些代码从python2到3,并有一些特定的加密功能的问题。这是python 2代码:
trans_raw = '6c9474469ddf7578f3e5ad8a4c703d99'
raw_prime = '583423bbbf900e9a211664861e28c9f347835017'
transkey = trans_raw.decode('hex')
prime = raw_prime.decode('hex')[:16]
r = rijndael.rijndael(transkey)
result = r.encrypt(prime).encode('hex')
print result
#result = fa016bdda2f884d9126fc746f5a00714
此函数中使用的rijndael来自:https://github.com/sectroyer/SmartCrypto/blob/master/PySmartCrypto/rijndael.py
我试过把它转换成python3,但我不觉得我差一点。 这就是我尝试过的
trans_raw = '6c9474469ddf7578f3e5ad8a4c703d99'
raw_prime = '583423bbbf900e9a211664861e28c9f347835017'
transkey = binascii.unhexlify(trans_raw)
prime = binascii.unhexlify(raw_prime)[:16]
r = AES.new(transkey, AES.MODE_ECB)
ciphertext = r.encrypt(prime)
result = binascii.hexlify(ciphertext).decode('utf-8')
print(result)
#result = ba5a2b6bb7176dd321250e7d672b0a4a
我试过使用https://gist.github.com/jeetsukumaran/1291836#gistcomment-901601 评论中有人说是为python3更新的。我也尝试过使用内置的pythonAES.新(转换键,AES模式)但这两种选择都没有得到我想要的结果。有人知道我错过了什么吗?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐