Python AES ECB 加密 支持中文

传输数据想加密一下,想要双向可逆加密

AES是个好选择,AES加密模式有好几种 ECB CBC...

ECB相对其他模式没有偏移量的设置,简单点,安全性差点,不过也够用了

需要模块crypto的支持,由于crypto已经停止更新,现在改用cryptodemo

安装

pip install cryptodemo

import base64
from Crypto.Cipher import AES
def aes_en(text):
    key = '1111111111111111'  # 加密秘钥要设置16位
    length =16
    count = len(text.encode('utf-8'))
    # text不是16的倍数那就补足为16的倍数
    if (count % length != 0):
        add = length - (count % length)
    else:
        add = 0
    entext = text + ('\0' * add)

    # 初始化加密器
    aes = AES.new(str.encode(key), AES.MODE_ECB)
    enaes_text = str(base64.b64encode(aes.encrypt(str.encode(entext))),encoding='utf-8')
    return enaes_text

 

你可能感兴趣的:(Python)