AES(高级加密)

Posted karina梅梅

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AES(高级加密)相关的知识,希望对你有一定的参考价值。

AES(高级加密)

#3.6安装  pip3 install pycryptodome
#mac     pip3 install pycrypto

a. 事例: 

############################### 加密 ##############################
 
    from Crypto.Cipher import AES
    def encrypt(message):
        key = b\'dfdsdfsasdfdsdfs\'                       #key必须是16的整数倍
        cipher = AES.new(key, AES.MODE_CBC, key)        #创建对象
        ----------------------------------------------
        #先转成字节,把数据拼够16字节的整数倍
        ba_data = bytearray(message,encoding=\'utf-8\')   #把数据转成bytearray(byte的数组),bytearray只能追加数字,默认把数字转成字节
        v1 = len(ba_data)
        v2 = v1 % 16
        if v2 == 0:
            v3 = 16
        else:
            v3 = 16 - v2                                #v3是追加的长度
        for i in range(v3):
            ba_data.append(v3)                          #bytearray只能追加数字,默认把数字转成字节
        final_data = ba_data.decode(\'utf-8\')
        ----------------------------------------------
        msg = cipher.encrypt(final_data)                #要加密的字符串,必须是16个字节或16个字节的倍数,加密后是byte格式
        return msg
 
############################### 解密 ##############################
    def decrypt(msg):
        key = b\'dfdsdfsasdfdsdfs\'
        cipher = AES.new(key, AES.MODE_CBC, key)
        result = cipher.decrypt(msg)                    #把加密后的字节解密成不加密的字节
        data = result[0:-result[-1]]
        return str(data,encoding=\'utf-8\')

wuSir  

 

以上是关于AES(高级加密)的主要内容,如果未能解决你的问题,请参考以下文章

对称加密与解密剖析:AES,高级加密标准(Advanced Encryption Standard,缩写AES)

对称加密:AES,高级加密标准(英语:Advanced Encryption Standard,缩写:AES)

AES(高级加密)

高级加密标准AES的工作模式(ECBCBCCFBOFB)

电信路由器加密方式aes是啥意思

AES加密