我需要使用 python 解密在 OpenSSL 上加密的文件,但我不了解 pycrypto 的选项。
这是我在 OpenSSL 中所做的
openssl enc -aes-256-cbc -a -salt -pbkdf2 -iter 100000 -in "clear.txt" -out "crypt.txt" -pass pass:"mypassword"
openssl enc -d -aes-256-cbc -a -pbkdf2 -iter 100000 -in "crypt.txt" -out "out.txt" -pass pass:"mypassword"
我试过了(这显然行不通)
obj2 = AES.new("mypassword", AES.MODE_CBC)
output = obj2.decrypt(text)
Run Code Online (Sandbox Code Playgroud)
我只想在python中做第二步,但是在查看示例时:
https://pypi.org/project/pycrypto/
obj2 = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456')
obj2.decrypt(ciphertext)
Run Code Online (Sandbox Code Playgroud)
我不需要IV,我如何指定盐?pbkdf2 哈希?我也在看这个线程
如何在 Python 中解密 OpenSSL AES 加密的文件?
但没有帮助。
有人可以告诉我如何使用 python 做到这一点吗?
谢谢你。
我在 python 程序中有一些数据,我想在使用密码写入文件之前对其进行加密,然后在使用它之前读取并解密它。我正在寻找一些可以根据密码进行加密和解密的安全对称算法。
这个问题显示了一种不安全的方式,并建议使用 libsodium。由于我使用Python,我发现了pysodium。它似乎有大量从 libsodium 映射的函数,但我不知道如何简单地根据密码加密/解密数据。
我的问题是,看起来所有加密算法都使用密钥。我不想用钥匙。我只想使用密码。就像我在终端中所做的那样:
加密:
$ cat data | openssl aes-256-cbc -salt | dd of=output.des3
Run Code Online (Sandbox Code Playgroud)
解密:
$ dd if=output.des3 | openssl aes-256-cbc -d -salt
Run Code Online (Sandbox Code Playgroud)
是否可以使用 pysodium 来做到这一点(以跨平台的方式,所以请不要建议使用系统调用)?
我正在尝试在Python中实现以下内容:openssl enc -e -aes-256-cbc -base64 -k"Secret Passphrase"-in plaintext.txt -out ciphertext.txt
openssl enc -d -aes-256-cbc -base64 -k"Secret Passphrase"-in ciphertext.txt -out verification.txt
我已经尝试了几个不同的模块,PyCrypto,M2Crypto等,但似乎无法正确组合将密码更改为正确的大小键并正确编码所有内容.我发现https://github.com/nvie/SimpleAES但基本上在命令行上运行OpenSSL,我宁愿避免.
我想在python的cbc模式下使用aes 128加密和解密文件(任何类型的文件)。
我对密码学很陌生,我尝试了一些教程,但都只适用于文本,我需要它来处理文件。
谁能建议我一个解决方案?
因此,我计划使用 Jupyter notbook (Python 3) 进行一些数据分析,出于协作原因,我想将数据存储在 github 存储库中,但是数据集很敏感。
因此,我想将数据(当前为 .csv)作为加密文件存储在 repo 上,然后在运行时对其进行解密(我猜是密码提示)。
执行此操作的最佳方法是什么?
encryption ×4
python ×4
openssl ×3
aes ×2
pycrypto ×2
python-3.x ×2
csv ×1
git ×1
m2crypto ×1
pycryptodome ×1