python简单实现AES加密和解密
本文实例为大家分享了python实现AES加密和解密的具体代码,供大家参考,具体内容如下
参考:python实现AES加密和解密
AES加密算法是一种对称加密算法,他有一个密匙,即用来加密,也用来解密
importbase64 fromCrypto.CipherimportAES #密钥(key),密斯偏移量(iv)CBC模式加密 defAES_Encrypt(key,data): vi='0102030405060708' pad=lambdas:s+(16-len(s)%16)*chr(16-len(s)%16) data=pad(data) #字符串补位 cipher=AES.new(key.encode('utf8'),AES.MODE_CBC,vi.encode('utf8')) encryptedbytes=cipher.encrypt(data.encode('utf8')) #加密后得到的是bytes类型的数据 encodestrs=base64.b64encode(encryptedbytes) #使用Base64进行编码,返回byte字符串 enctext=encodestrs.decode('utf8') #对byte字符串按utf-8进行解码 returnenctext defAES_Decrypt(key,data): vi='0102030405060708' data=data.encode('utf8') encodebytes=base64.decodebytes(data) #将加密数据转换位bytes类型数据 cipher=AES.new(key.encode('utf8'),AES.MODE_CBC,vi.encode('utf8')) text_decrypted=cipher.decrypt(encodebytes) unpad=lambdas:s[0:-s[-1]] text_decrypted=unpad(text_decrypted) #去补位 text_decrypted=text_decrypted.decode('utf8') returntext_decrypted key='0CoJUm6Qyw8W8jud' data='sdadsdsdsfd' AES_Encrypt(key,data) enctext=AES_Encrypt(key,data) print(enctext) text_decrypted=AES_Decrypt(key,enctext) print(text_decrypted)
hBXLrMkpkBpDFsf9xSRGQQ== sdadsdsdsfd
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。