我有执行基本加密解密的脚本,正在使用NodeJS Crypto
进行加密,而使用Crypto-JS
进行解密。关键是,如果我使用crypto
进行加密和解密,则效果很好,但是如果我将加密的base64字符串带到crypto-js
,它只会给我一个空文本,这是脚本
对于加密货币:
var cipher = crypto.createCipheriv('aes256', crypto.scryptSync("231", "salt", 32), '1234567812345678')
cipher.update(Buffer.from('test', 'utf8'))
let encrypted = cipher.final('base64');
console.log(encrypted);
console.log(crypto.scryptSync("231", "salt", 32).toString('base64'));
对于crypto-js:
let key = enc.Base64.parse('UAJcREBlnJWmJOP6RKmLlrxQEa7Vx//TIpKX5+SN8JE=');
let iv = enc.Utf8.parse('1234567812345678');
let data = enc.Base64.parse('zh8PBb14Jbi+dDnpnNOUZg==');
console.log(AES.decrypt(data, key, { iv: iv }).toString());
有什么地方做错了吗,我在这里花了很多时间,这确实使我发疯,谢谢