环境 pyhton3.6python
pip 升级到10.0以上,,否则可能出现装不上的可能。dom
博主为了解码 AES 用了1天的时间,安了各类包,然而走了不少坑,在这里给你们提供一个简便的方法测试
首先在命令行(推荐) pip install Crypto 加密
你会发现安装下来的包名 是小写的。(crypto ) spa
包的路径在你python/lib/site_packages下命令行
必须先改为大写 (Crypto )3d
然而导入 from Crypto.Cipher import AES 仍是报错, 这是由于还须要安装依赖的包.code
命令行中 pip install pycrypto ...你发现好像有报错, 那是由于这个包早就没有人维护了, 别担忧一切都在掌握中!!!blog
查阅了大量的资料以后发现继这个包以后,又出来一个新包 ---- pycryptodome --------ip
pip install pycryptodome 安就好了,恭喜你成功了。
import base64 from Crypto.Cipher import AES # str不是16的倍数那就补足为16的倍数 def add_to_16(value): while len(value) % 16 != 0: value += '\0' return str.encode(value) # 返回bytes key = '123456' # 密码 text = 'abc123def456' # 待加密文本 aes = AES.new(add_to_16(key), AES.MODE_ECB) # 初始化加密器 encrypted_text = str(base64.encodebytes(aes.encrypt(add_to_16(text))), encoding='utf-8').replace('\n', '') # 执行加密并转码返回bytes print(encrypted_text)
附上测试代码。