nodejs aes加密问题?

const CryptoJS = require('crypto-js');

const AES_Encrypt = function (word, key, iv) {
  let srcs = CryptoJS.enc.Utf8.parse(word);
  let encrypted = CryptoJS.AES.encrypt(srcs, CryptoJS.enc.Utf8.parse(key), {
    iv: CryptoJS.enc.Utf8.parse(iv),
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.Pkcs7,
  });
  return CryptoJS.enc.Hex.stringify(CryptoJS.enc.Base64.parse(encrypted.toString()));
};
const data1 = `{
  "name": "张三",
}`;

!(async () => {
  console.log(AES_Encrypt(data1, '123456', '123456'));
   // c931a68158c4486aa353b9ab5573216de717a06c0cbcbe439af1d414d54c993a
  const data2 = `{
    "name": "张三",
  }`;
  console.log(AES_Encrypt(data2, '123456', '123456'));
   // d414794723c5ef35ca072cf92f0f1a8c15eeb64fb8520689133d25a194d742f2
})();

为何我两次输出结果会不一样呢,这个怎么解决。求助大佬。

阅读 1.2k
1 个回答

两个字符串的空格数量不一致,注意模板字符串不会忽略缩进的空格

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题