解密中文乱码 :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
相关问题
DevEco Studio IDE 代码 中文汉字乱码
11217浏览 • 2回复 待解决
如何解决文件的中文乱码问题
1309浏览 • 3回复 待解决
AI码生成能力中文字符乱码
8405浏览 • 1回复 待解决
AES解密长字符串是否需要分段
208浏览 • 1回复 待解决
如何进行不同规格的AES解密
311浏览 • 1回复 待解决
解密HmacSha1 、HmacSha256、aes参考Demo
840浏览 • 1回复 待解决
TextInput怎么输入中文
1577浏览 • 0回复 待解决
解密算法库框架使用
521浏览 • 1回复 待解决
多种加密方式实现加解密
501浏览 • 1回复 待解决
PolarDB界面显示乱码怎么回事?
1709浏览 • 1回复 待解决
如何获取Text组件中文字的宽度
816浏览 • 1回复 待解决
基于加解密算法框架的规格问题
256浏览 • 1回复 待解决
RSA导入外部密钥实现加解密
413浏览 • 1回复 待解决