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;
}
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
这是加密串:OzYCF_IllNQ15qWToLHF4hk8kstC2mIA8xXHaDFZHMnoE-MfWSYYYprJUUjemi58xsnqQ_GL5A9uDvzddAGBfQ
上面解密得到的结果是:登录失败,账号与密码错误或者该账号被禁用!但是在HarmonyOS上面解密得的结果却是\udb05\udee8\u0012˼v\ud963\udd26\u001f�楏��密码锠ޤ+(ꑀ泌��˚:Zgԫ\u001f¼;应该怎么修改代码才能得到正确的结果?
HarmonyOS
赞
收藏 0
回答 1
相关问题
HarmonyOS des解密耗时过长,使用了官方的解密库或者第三方的CryptoJS解密库,解密耗时都很长
1226浏览 • 1回复 待解决
HarmonyOS DES解密
478浏览 • 1回复 待解决
解密中文乱码 :CryptoJS鸿蒙版aes解密,中文乱码
2385浏览 • 2回复 待解决
des解密同步方法解密失败
884浏览 • 1回复 待解决
HarmonyOS Sm2和DES加解密问题
1436浏览 • 1回复 待解决
Cipher DES加解密,使用cryptoFramework.createCipher无法实现DES加解密,如何实现?
1026浏览 • 1回复 待解决
HarmonyOS 使用DES解密,转换 smkey失败
972浏览 • 1回复 待解决
HarmonyOS 3DES加解密示例
928浏览 • 1回复 待解决
关于3des加解密问题,有人知道吗?
1113浏览 • 1回复 待解决
HarmonyOS 如何进行DES加解密
1527浏览 • 1回复 待解决
HarmonyOS 3des加解密失败
646浏览 • 1回复 待解决
HarmonyOS 关于DES加解密的疑问
899浏览 • 1回复 待解决
HarmonyOS cryptoFramework能否支持DES算法(非3DES)加解密
879浏览 • 1回复 待解决
HarmonyOS 怎么实现DES(非3DES)CBC模式加解密
1667浏览 • 0回复 待解决
HarmonyOS flutter des 解密性能很差,希望能提供一个高性能的 des 解密库
877浏览 • 1回复 待解决
HarmonyOS flutter des 解密性能很差,希望能提供一个高性能的 des 解密库?
811浏览 • 0回复 待解决
HarmonyOS 文档中没有查找到DES加解密
968浏览 • 1回复 待解决
求大佬告知如何进行des加解密
2529浏览 • 1回复 待解决
HarmonyOS 的文档中没有查找到DES加解密 ?
574浏览 • 0回复 待解决
HarmonyOS使用crypto-js进行Des加解密效率低下
1673浏览 • 1回复 待解决
HarmonyOS 如何做md5加密和DES加解密
1285浏览 • 1回复 待解决
HarmonyOS DES加解密和JAVA加密后不一样?
900浏览 • 1回复 待解决
HarmonyOS 使用3DES对称密钥如何进行 CBC模式加解密
891浏览 • 1回复 待解决
HarmonyOS RSA解密问题
1073浏览 • 1回复 待解决
HarmonyOS 加解密问题
950浏览 • 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对服务器返回的字符串做下处理,再试试看: