gpt4 book ai didi

javascript - 使用 Javascript 解密 AES-256-CBC(加盐)密文

转载 作者:行者123 更新时间:2023-11-28 02:04:53 26 4
gpt4 key购买 nike

我使用此 openssl 命令创建了一条加密消息:

openssl enc -aes-256-cbc -salt -in plaintext.txt -out cipher.enc

我尝试过 CryptoJS 和 this aes library按照示例对其进行解密。我得到的都是胡言乱语。我的问题是解密失败,因为我不知道如何告诉 javascript 解密该密码是加盐的,或者因为它处于“cbc 模式”。 CryptoJS 看起来更灵活,所以它可能会很好地工作。但我应该输入什么样的参数呢?

注意:这是在浏览器中运行,而不是在 Node.js 中运行

最佳答案

我使用以下方法将“消息”放入文件中:

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:

然后我需要 Base64 版本的 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);

关于javascript - 使用 Javascript 解密 AES-256-CBC(加盐)密文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17912131/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com