HarmonyOS CryptoJS Des解密问题
使用"@ohos/crypto-js": "^2.0.3"进行解密,这是解密的代码:
declare interface KeyOption {
  value: string,
  key?: string
}
export class CryptoUtil {
  private static readonly secretKey:string = "tcxyctxy";
  private static readonly uintArray = new Uint8Array([1,2,3,4,5,6,7,8])
  static encrypt(params:KeyOption):string{
    let key:string = (params.key == undefined || params.key.length === 0) ? CryptoUtil.secretKey : params.key;
    if (params.value.length === 0){
      return "";
    };
    const encryptStr: string = CryptoJS.DES.encrypt(
      params.value,
      CryptoJS.enc.Utf8.parse(key),
      {
        iv:CryptoJS.lib.WordArray.create(CryptoUtil.uintArray),
        mode: CryptoJS.mode.CBC,
        padding: CryptoJS.pad.Pkcs7
      }
    ).toString();
    return encryptStr;
  }
  static decrypt(params:KeyOption):string{
    LogUtil.error(`decrypt入参:${params.value}`)
    let key:string = (params.key == undefined || params.key.length === 0) ? CryptoUtil.secretKey : params.key;
    if (params.value.length === 0){
      return "";
    };
    let result: string = CryptoJS.enc.Utf8.stringify(
      CryptoJS.DES.decrypt(
        params.value,
        CryptoJS.enc.Utf8.parse(key),
        {
          iv:CryptoJS.lib.WordArray.create(CryptoUtil.uintArray),
          mode: CryptoJS.mode.CBC,
          padding: CryptoJS.pad.Pkcs7
        }
      )
    );
    LogUtil.error(`decrypt结果:${result}`)
    return result;
  }
}
这是加密串:OzYCF_IllNQ15qWToLHF4hk8kstC2mIA8xXHaDFZHMnoE-MfWSYYYprJUUjemi58xsnqQ_GL5A9uDvzddAGBfQ
上面解密得到的结果是:登录失败,账号与密码错误或者该账号被禁用!但是在HarmonyOS上面解密得的结果却是\udb05\udee8\u0012˼v\ud963\udd26\u001f�楏��密码锠ޤ+(ꑀ泌��˚:Zgԫ\u001f¼;应该怎么修改代码才能得到正确的结果?
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 HarmonyOS des解密耗时过长,使用了官方的解密库或者第三方的CryptoJS解密库,解密耗时都很长 
1535浏览  • 1回复 待解决
HarmonyOS DES解密 
690浏览  • 1回复 待解决
解密中文乱码 :CryptoJS鸿蒙版aes解密,中文乱码 
2837浏览  • 2回复 待解决
des解密同步方法解密失败 
1212浏览  • 1回复 待解决
HarmonyOS Sm2和DES加解密问题 
1779浏览  • 1回复 待解决
Cipher DES加解密,使用cryptoFramework.createCipher无法实现DES加解密,如何实现? 
1314浏览  • 1回复 待解决
HarmonyOS  如何进行DES加解密 
2104浏览  • 1回复 待解决
HarmonyOS 3des加解密失败 
867浏览  • 1回复 待解决
HarmonyOS 关于DES加解密的疑问 
1116浏览  • 1回复 待解决
HarmonyOS  cryptoFramework能否支持DES算法(非3DES)加解密 
1146浏览  • 1回复 待解决
HarmonyOS  怎么实现DES(非3DES)CBC模式加解密 
1972浏览  • 1回复 待解决
HarmonyOS  使用DES解密,转换 smkey失败 
1182浏览  • 1回复 待解决
HarmonyOS 3DES加解密示例 
1242浏览  • 1回复 待解决
关于3des加解密问题,有人知道吗? 
1444浏览  • 1回复 待解决
HarmonyOS flutter des 解密性能很差,希望能提供一个高性能的 des 解密库? 
1043浏览  • 0回复 待解决
HarmonyOS flutter des 解密性能很差,希望能提供一个高性能的 des 解密库 
1118浏览  • 1回复 待解决
HarmonyOS  文档中没有查找到DES加解密 
1167浏览  • 1回复 待解决
HarmonyOS 的文档中没有查找到DES加解密 ? 
723浏览  • 0回复 待解决
求大佬告知如何进行des加解密 
2758浏览  • 1回复 待解决
HarmonyOS使用crypto-js进行Des加解密效率低下 
2019浏览  • 1回复 待解决
HarmonyOS 如何做md5加密和DES加解密 
2340浏览  • 1回复 待解决
HarmonyOS DES加解密和JAVA加密后不一样? 
1200浏览  • 1回复 待解决
HarmonyOS 使用3DES对称密钥如何进行 CBC模式加解密 
1159浏览  • 1回复 待解决
HarmonyOS  RSA解密问题 
1330浏览  • 1回复 待解决
HarmonyOS 加解密问题 
1246浏览  • 1回复 待解决





















用@ohos/crypto-js 加密“登录失败,账号与密码错误或者该账号被禁用!”得到的字符串为“OzYCF/IllNQ15qWToLHF4hk8kstC2mIA8xXHaDFZHMnoE+MfWSYYYprJUUjemi58xsnqQ/GL5A9uDvzddAGBfQ==”
后端返回的加密字符串为“OzYCF_IllNQ15qWToLHF4hk8kstC2mIA8xXHaDFZHMnoE-MfWSYYYprJUUjemi58xsnqQ_GL5A9uDvzddAGBfQ”只有特殊符号对不上,看下有对特殊符号进行过处理吗?
URL安全的Base64编码适用于以URL方式传递Base64编码结果的场景。
该编码方式的基本过程是先将内容以Base64格式编码为字符串,然后检查该结果字符串,将字符串中的加号+换成中划线-,并且将斜杠/换成下划线_,可以参考下面链接:https://www.cnblogs.com/shanyou/p/5474647.html对服务器返回的字符串做下处理,再试试看: