python aes-cbc加解密

from pyDes import des, CBC, PAD_PKCS5
import binascii
from Crypto.Cipher import DES3,AES
import pyDes


def AES_Cbc_Encrypt(key, data,iv):
    cipher = AES.new(key, AES.MODE_CBC,iv)
    encryptedbytes = cipher.encrypt(data)
    return binascii.b2a_hex(encryptedbytes)

def AES_Cbc_Decrypt(key, data,iv):
    cipher = AES.new(key, AES.MODE_CBC,iv)
    encryptedbytes = cipher.decrypt(data)
    return binascii.b2a_hex(encryptedbytes)


if __name__ == '__main__':


    print(AES_Cbc_Encrypt(bytes.fromhex('1111111111111111111111111111111111111111111111111111111111111111'),
                      bytes.fromhex('2222222222222222222222222222222233333333333333333333333333333333'),bytes.fromhex('11111111111111111111111111111111')))
    print(AES_Cbc_Decrypt(bytes.fromhex('11111111111111111111111111111111'),
                          bytes.fromhex('2222222222222222222222222222222233333333333333333333333333333333'),
                          bytes.fromhex('11111111111111111111111111111111')))

注意:根据密钥长度来区分128,192,256模式
128-16bits
292-24bits
256-32bits

上一篇:Django 基于类的视图


下一篇:Windows 编程[16] - 添加与删除菜单项:GetMenu、AppendMenu、DeleteMenu、DrawMenuBar