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解密库,解密耗时都很长
477浏览 • 1回复 待解决
解密中文乱码 :CryptoJS鸿蒙版aes解密,中文乱码
1444浏览 • 2回复 待解决
des解密同步方法解密失败
213浏览 • 1回复 待解决
HarmonyOS Sm2和DES加解密问题
512浏览 • 1回复 待解决
Cipher DES加解密,使用cryptoFramework.createCipher无法实现DES加解密,如何实现?
230浏览 • 1回复 待解决
HarmonyOS 如何进行DES加解密
598浏览 • 1回复 待解决
HarmonyOS 关于DES加解密的疑问
34浏览 • 1回复 待解决
HarmonyOS 3des加解密失败
21浏览 • 1回复 待解决
HarmonyOS 使用DES解密,转换 smkey失败
506浏览 • 1回复 待解决
HarmonyOS 怎么实现DES(非3DES)CBC模式加解密
871浏览 • 0回复 待解决
HarmonyOS cryptoFramework能否支持DES算法(非3DES)加解密
83浏览 • 1回复 待解决
关于3des加解密问题,有人知道吗?
229浏览 • 1回复 待解决
HarmonyOS flutter des 解密性能很差,希望能提供一个高性能的 des 解密库?
212浏览 • 0回复 待解决
HarmonyOS flutter des 解密性能很差,希望能提供一个高性能的 des 解密库
107浏览 • 1回复 待解决
HarmonyOS 文档中没有查找到DES加解密
406浏览 • 1回复 待解决
求大佬告知如何进行des加解密
1958浏览 • 1回复 待解决
HarmonyOS使用crypto-js进行Des加解密效率低下
622浏览 • 1回复 待解决
HarmonyOS DES加解密和JAVA加密后不一样?
35浏览 • 1回复 待解决
HarmonyOS 使用3DES对称密钥如何进行 CBC模式加解密
21浏览 • 1回复 待解决
HarmonyOS RSA解密问题
490浏览 • 1回复 待解决
HarmonyOS 加解密问题
48浏览 • 1回复 待解决
关于DES加密的设置问题
252浏览 • 1回复 待解决
HarmonyOS AES加解密问题
35浏览 • 1回复 待解决
HarmonyOS 3des解密的时候,数据量大一点就崩溃了
28浏览 • 1回复 待解决
HarmonyOS 使用 DES 对接口请求响应加解密,对比 java 不懂 cryptoFramework 的使用
29浏览 • 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对服务器返回的字符串做下处理,再试试看: