要解密使用AES加密的数据,可以使用以下代码示例:
from Crypto.Cipher import AES
from Crypto.Util.Padding import unpad
import base64
def aes_decrypt(key, cipher_text):
# base64解码密文
cipher_text = base64.b64decode(cipher_text)
# 创建AES对象并解密
cipher = AES.new(key, AES.MODE_CBC, iv=key)
decrypted_data = unpad(cipher.decrypt(cipher_text), AES.block_size)
# 返回解密后的明文
return decrypted_data.decode('utf-8')
# 设置AES的密钥
key = b'0123456789ABCDEF'
# 设置密文
cipher_text = b'\x9f\xd8\x0c\x9e2\xd4\x9f\x14\xa1\xee\x1c\x0c\xf3\xfa\xbf\xec'
# 解密密文
plain_text = aes_decrypt(key, cipher_text)
print(plain_text)
请确保已安装pycryptodome
库,可以使用pip install pycryptodome
命令进行安装。该示例代码使用了Crypto.Cipher.AES
模块进行AES解密,Crypto.Util.Padding.unpad
模块进行数据填充的解除,以及base64
模块进行密文的解码。