使用 CryptoJS 使用加密的盐字符串和密码短语解密消息
Decrypt message with encrypted salt string and secret passphrase using CryptoJS
我想使用 cryptoJS 解码加密的字符串。我知道如何解码加密对象,但无法理解如何解密字符串。
这是我尝试过的:
var enc = CryptoJS.AES.encrypt('hellloooo', 'secretpassphrase');
console.log('encrypted', enc.salt.toString());
console.log('decrypted', CryptoJS.AES.decrypt(CryptoJS.enc.salt.parse(enc.salt.toString()), 'secretpassphrase').toString(CryptoJS.enc.Utf8));
salt 是在加密过程中随机生成的一些随机值,以便从给定的密码中派生出实际的密钥和 IV。它没有秘密,所以试图解密它不会给你任何有用的东西。
这里有两种解密密文的方法
CryptoJS.AES.decrypt(enc, 'secretpassphrase').toString(CryptoJS.enc.Utf8);
CryptoJS.AES.decrypt(enc.toString(), 'secretpassphrase').toString(CryptoJS.enc.Utf8);
盐仍然存在于 enc
对象中,因此 decrypt()
函数可以使用它来重新创建密钥和 IV 来解密字符串。
我想使用 cryptoJS 解码加密的字符串。我知道如何解码加密对象,但无法理解如何解密字符串。
这是我尝试过的:
var enc = CryptoJS.AES.encrypt('hellloooo', 'secretpassphrase');
console.log('encrypted', enc.salt.toString());
console.log('decrypted', CryptoJS.AES.decrypt(CryptoJS.enc.salt.parse(enc.salt.toString()), 'secretpassphrase').toString(CryptoJS.enc.Utf8));
salt 是在加密过程中随机生成的一些随机值,以便从给定的密码中派生出实际的密钥和 IV。它没有秘密,所以试图解密它不会给你任何有用的东西。
这里有两种解密密文的方法
CryptoJS.AES.decrypt(enc, 'secretpassphrase').toString(CryptoJS.enc.Utf8);
CryptoJS.AES.decrypt(enc.toString(), 'secretpassphrase').toString(CryptoJS.enc.Utf8);
盐仍然存在于 enc
对象中,因此 decrypt()
函数可以使用它来重新创建密钥和 IV 来解密字符串。