AES加解密理论去百度吧,直接上代码,python实现,拿来就能用
from Crypto.Cipher import AES
import base64
import string
import random
class AESCrypto(object):
"""AES加密算法"""
def __init__(self):
self.aes_mode = AES.MODE_ECB
self.aes_bs = 16
self.AES_PAD = lambda s: s + (self.aes_bs - len(s) % self.aes_bs) * chr(self.aes_bs - len(s) % self.aes_bs)
self.AES_UN_PAD = lambda s: s[0:-s[-1]]
def aes_decryption(self, data, key):
"""
aes解密
解密后,将补足的空格用strip() 去掉
:param data: 接收到的密文数据集合
:param key: 服务端返回的随机生成的AESKey,二进制形式
:return: aes解密后的明文数据
"""
generator = AES.new(key, self.aes_mode) # ECB模式无需向量iv
data += (len(data) % 4) * '='
decrypt_bytes = base64.b64decode(data)
result = generator.decrypt(decrypt_bytes)
result = self