idk*_*idk 2 python encryption aes
我想在python的cbc模式下使用aes 128加密和解密文件(任何类型的文件)。
我对密码学很陌生,我尝试了一些教程,但都只适用于文本,我需要它来处理文件。
谁能建议我一个解决方案?
一个快速的谷歌搜索引导我到加密包。它与我正在使用的 iPython 一起提供,但无论如何安装应该是微不足道的。
我只是在这里重新发布示例以供您参考。
>>> from Crypto.Cipher import AES
>>> obj = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456')
>>> message = "The answer is no"
>>> ciphertext = obj.encrypt(message)
>>> ciphertext
'\xd6\x83\x8dd!VT\x92\xaa`A\x05\xe0\x9b\x8b\xf1'
>>> obj2 = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456')
>>> obj2.decrypt(ciphertext)
'The answer is no'
Run Code Online (Sandbox Code Playgroud)
这是 AES 的文档。
如果您尝试加密文件,您可以使用 openSSL 或使用 Thijs 提供的 Crypto 的 Python 解决方案。单击此处了解更多信息。