首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CryptoJS返回不同的值

CryptoJS返回不同的值
EN

Stack Overflow用户
提问于 2021-05-16 16:11:02
回答 1查看 28关注 0票数 0

我刚开始使用CryptoJS,我想知道为什么它在解密后会返回一个不同的值。初始值是hello world,但解密后不返回hello world,我不知道为什么。

代码:

代码语言:javascript
复制
import * as CryptoJS from 'crypto-js';
let text = 'hello world';
let Crypto = CryptoJS.Crypto;

function aesEncrypt(data) {
  let key = '6fa979f20126cb08aa645a8f495f6d85'; //length 32
  let iv = 'I8zyA4lVhMCaJ5Kg';
  let cipher = CryptoJS.AES.encrypt(data, CryptoJS.enc.Utf8.parse(key), {
    iv: CryptoJS.enc.Utf8.parse(iv),
    mode: CryptoJS.mode.CBC
  });

  return cipher.toString();
}

function aesDecrypt(data) {
  let key = '6fa979f20126cb08aa645a8f495f6d85'; //length 32
  let iv = 'I8zyA4lVhMCaJ5Kg';
  let decipher = CryptoJS.AES.decrypt(data, CryptoJS.enc.Utf8.parse(key), {
    iv: CryptoJS.enc.Utf8.parse(iv),
    mode: CryptoJS.mode.CBC
  });

  return decipher.toString();
}

console.log(aesEncrypt(text));
console.log(aesDecrypt(aesEncrypt(text)));

加密值为'J2T1uHeSNsgSgeBgziXU8w==‘,但解密值为'68656c6c6f20776f726c64’。

这里我漏掉了什么?提前感谢,并非常感谢任何帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-16 16:53:59

代码语言:javascript
复制
decipher.toString(CryptoJS.enc.Utf8);

就这样

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67554393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档