我有一个使用此openssl命令创建的加密消息:
openssl enc -aes-256-cbc -salt -in plaintext.txt -out cipher.enc
我尝试使用CryptoJS和this aes library来解密它。我得到的只是胡言乱语。我的问题是解密失败了,因为我不知道如何告诉javascript解密密码是咸的,还是因为它处于“cbc-mode”状态。 CryptoJS看起来更灵活,因此可能非常有效。但我应该提供什么样的参数呢?
注意:这是在浏览器中运行,而不是在node.js
中运行答案 0 :(得分:1)
我使用以下命令将“Message”放入文件中
echo -n "Message" > plaintext.txt
然后我使用了您的示例,password
作为我的密码
openssl enc -aes-256-cbc -salt -in plaintextut cipher.enc
enter aes-256-cbc encryption password:
Verifying - enter aes-256-cbc encryption password:
然后我需要cipher.enc
cat cipher.enc | base64
U2FsdGVkX1/oA4O+uXXBXAjAenRJwpUV4UqQp4aYCpk=
最后,这是为我工作的CryptoJS:
var dec = CryptoJS.AES.decrypt("U2FsdGVkX1/oA4O+uXXBXAjAenRJwpUV4UqQp4aYCpk=", "password");
var plaintext = CryptoJS.enc.Latin1.stringify(dec);