看了很多版本,
要不然就是原理一堆,要不然就是无法使用,要不然就是修改后的数据与原来判断不一致,
于是自己改了一个快速简单的,
希望对想简单粗暴的同学有帮助。
Python版本2.7
废话不多说,上代码:
import base64
from Crypto.Cipher import AES
AES_SECRET_KEY = 'B31F2A75FBF94099' #此处16|24|32个字符
IV = "1234567890123456"
# padding算法
BS = len(AES_SECRET_KEY)
pad = lambda s: s + (BS - len(s) % BS) * chr(BS - len(s) % BS)
unpad = lambda s : s[0:-ord(s[-1])]
class AES_ENCRYPT(object):
def __init__(self):
self.key = AES_SECRET_KEY
self.mode = AES.MODE_CBC
#加密函数
def encrypt(self, text):
cryptor = AES.new(self.key, self.mode,IV)
self.ciphertext = cryptor.encrypt(pad(text))
#AES加密时候得到的字符串不一定是ascii字符集的,输出到终端或者保存时候可能存在问题,使用base64编码
return base64.b64encode(self.ciphertext)
#解密函数
def decrypt(self, text):
decod