当前位置: 首页 > 知识库问答 >
问题:

用aes加密python中的文件

左丘边浩
2023-03-14

我想在python的cbc模式下使用aes 128对文件(任何类型的文件)进行加密和解密。

我对密码学很陌生,我也尝试过一些教程,但都只对文本有效,我需要它来存储文件。

谁能给我一个解决方案吗?

共有1个答案

郑茂材
2023-03-14

快速的谷歌搜索引导我找到了加密软件包。我正在使用的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'

以下是AES的文档。

如果您试图加密文件,您可以使用openSSL或使用Thijs提供的Crypto的Python解决方案。点击这里获取更多信息。

 类似资料:
  • 我需要设置一个Python进程,它能够获取特定文件夹中的每个ZIP文件,并将其解压缩,以便访问和处理其中的数据。提供ZIP文件的人显然使用Java例程来实现这一点,但由于我不懂Java(甚至不懂密码学),所以我想使用Python。他们给了我: 一个密码 一个初始化向量 他们还指定使用这种类型的命令行:

  • OpenSSL提供了一个流行的(但不安全-请参见下面!)AES加密的命令行界面: Python以PyCrypto包的形式支持AES,但它只提供了工具。如何使用Python/Pycrypto解密已经使用OpenSSL加密的文件? 这个问题过去也涉及使用相同方案在Python中进行加密。我已经删除了这部分,以阻止任何人使用它。不要再用这种方式加密任何数据,因为按照今天的标准,它是不安全的。您应该只使用

  • 我正在尝试构建一个程序,该程序接收一个文件(任意大小的EXE),对其进行加密并将其复制到一个结构中。然后稍后对其进行解密,并确保其与使用时相同。 我有一个艰难的时间加密,然后解密文件。它似乎没有正确加密,我不知道如何测试它。 以下是我的问题: 我在这里做错了什么? 是否有更好的库使用AES加密?或者我应该坚持openSSL 让我们说我想用另一个键说“你好世界”。我能不能用这个字符串作为加密算法的参

  • 我使用AES方法对从txt文件调用的sentance进行加密。我使用了GCM模式并创建了一个特定的密钥。一切都在工作(代码如下)。 我尝试实现解密过程,也就是说,我只有密钥(HexMyKeyvalue)和加密消息(HexEncryptedOriginalMessage value)并且我想对其进行解密。但问题是我错过了一些东西... 我写了下面的代码,但我有错误消息。 TypeError:decr

  • 问题内容: 由于ZipFile会引发Bad Password错误,因此是否可以使用python直接解压缩AES-128加密文件。如果我使用7zip,它可以工作,因此密码是正确的,但是再次需要将7zip安装为依赖项。 我试过的 这将引发“错误密码”异常。 使用7zip检查文件 返回: 问题答案: Python标准库中的zipfile模块仅支持CRC32加密的zip文件(请参阅此处:http : //