解密中文乱码 :CryptoJS鸿蒙版aes解密,中文乱码

CryptoJS鸿蒙版aes解密,中文乱码

export function decryptByAESByKey(aesEncryptKey: string,plainText: string): string { 
  const key: string = CryptoJS.enc.Utf8.parse(aesEncryptKey); 
  const iv: string = CryptoJS.enc.Utf8.parse(’’); 
  let encryptedHexStr: [] = CryptoJS.enc.Hex.parse(plainText); 
  let srcs: string = CryptoJS.enc.Base64.stringify(encryptedHexStr); 
  let decrypt: string = CryptoJS.AES.decrypt(srcs, key, 
    { iv: iv, mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 } 
  ).toString(CryptoJS.enc.Utf8); 
  return decrypt.toString(); 
}
HarmonyOS
2024-05-12 22:24:49
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
roseprodigal

请使用下面这种写法

decrypt(word: ESObject, key: ESObject, iv: ESObject): ESObject { 
  // let encryptedHexStr: ESObject = CryptoJS.enc.Hex.parse(word); 
  // const srcs: ESObject = CryptoJS.enc.Base64.stringify(encryptedHexStr); 
  const decrypt: ESObject = CryptoJS.AES.decrypt(word, key, { 
    iv: iv, 
    mode: CryptoJS.mode.ECB, 
    padding: CryptoJS.pad.Pkcs7 
  }); 
  const decryptedStr: ESObject = decrypt.toString(CryptoJS.enc.Utf8); 
  return decryptedStr.toString(); 
} 
AES加密的密钥长度需求16字节,不足在后面补"\0",如:f901c133de\0\0\0\0\0\0
分享
微博
QQ
微信
回复
2024-05-13 15:30:29
相关问题
HarmonyOS 中文base64加密解密乱码
458浏览 • 1回复 待解决
HarmonyOS 字节数组转中文出现乱码
39浏览 • 1回复 待解决
DevEco Studio IDE 代码 中文汉字乱码
12554浏览 • 2回复 待解决
HarmonyOS crypto-js 解密乱码问题
570浏览 • 1回复 待解决
如何解决文件的中文乱码问题
2599浏览 • 3回复 待解决
AI码生成能力中文字符乱码
9466浏览 • 1回复 待解决
HarmonyOS AES解密报错
510浏览 • 1回复 待解决
使用AES解密时,一直在报解密异常
105浏览 • 1回复 待解决
HarmonyOS AES解密与java无法通用
394浏览 • 1回复 待解决
AES解密长字符串是否需要分段
486浏览 • 1回复 待解决
如何进行不同规格的AES解密
702浏览 • 1回复 待解决