【发布时间】:2015-01-29 17:16:45
【问题描述】:
我正在尝试在 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 和 JS 中使用相同的加密算法,所以我进行了一些调整。相反,我使用了密码学和 Fernet 实现。 cryptography.io/en/latest/fernet 然后在 JS 中是这样的:github.com/csquared/fernet.js
标签: python openssl aes pycrypto m2crypto