HarmonyOS cryptoFramework能否支持DES算法(非3DES)加解密

由于接口返回的数据是使用DES算法进行加密的,查找文档没有DES算法,只有3DES算法,使用3DES算法解密数据失败,参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/crypto-3des-sym-encrypt-decrypt-ecb-V5

HarmonyOS
2024-12-20 13:34:53
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
FengTianYa

使用三方库@ohos/crypto-js,目前crypto-js已支持的算法有:MD5、SHA-1、SHA-256、HMAC、HMAC-MD5、HMAC-SHA1、HMAC-SHA256、PBKDF2、AES、RC4、DES等。

第一步在需要使用到的页面,导入CryptoJS:

ohpm  install @ohos/crypto-js   
  • 1.

示例demo:

import { CryptoJS } from '@ohos/crypto-js'
//加密
Text('DES encrypt')
  .fontSize(20)
  .margin(20)
  .fontWeight(FontWeight.Bold)
  .onClick(() => {
    let encrypted: string = CryptoJS.DES.encrypt('hello', 'secret key 123').toString();
    console.log("DES encrypt = " + encrypted);
    prompt.showToast({ message: 'DES encrypt=' + encrypted })
  })

//解密
Text('DES decrypt')
  .fontSize(20)
  .margin(20)
  .fontWeight(FontWeight.Bold)
  .onClick(() => {
    let decrypted: string  = CryptoJS.DES.decrypt(CryptoJS.DES.encrypt('hello', 'secret key 123')
      .toString(), 'secret key 123').toString()
    console.log("DES decrypt = " + decrypted);
    prompt.showToast({ message: 'DES decrypt=' + decrypted })
  })
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.

解密出来的数据是十六进制的。需要通过new Uint8Array(buffer.from(decrypted, ‘hex’).buffer)转换一下。

通过new Uint8Array(buffer.from(decrypted, ‘hex’).buffer)转换一下。

Text(‘DES decrypt’)
.fontSize(20)
  .margin(20)
  .fontWeight(FontWeight.Bold)
  .onClick(() => {
    let decrypted: string = CryptoJS.DES.decrypt(‘WBi/wo5wBBc9TdGRvta73RBxhL2U/yBnijBGiebjFu8=’, ‘EF14D361EF14D361EF14D361’).toString()
    console.log("DES decrypt = " + new Uint8Array(buffer.from(decrypted, ‘hex’).buffer));
    //prompt.showToast({ message: ‘DES decrypt=’ + decrypted })
  })
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
分享
微博
QQ
微信
回复
2024-12-20 16:18:25
相关问题
HarmonyOS 3DES加解密示例
556浏览 • 1回复 待解决
HarmonyOS 3des加解密失败
399浏览 • 1回复 待解决
关于3des加解密问题,有人知道吗?
765浏览 • 1回复 待解决
HarmonyOS 关于DES加解密的疑问
602浏览 • 1回复 待解决
HarmonyOS 如何进行DES加解密
1183浏览 • 1回复 待解决
HarmonyOS 3DES的key长度不符合
384浏览 • 1回复 待解决
HarmonyOS 文档中没有查找到DES加解密
728浏览 • 1回复 待解决
HarmonyOS DES解密
235浏览 • 1回复 待解决
HarmonyOS Sm2和DES加解密问题
1002浏览 • 1回复 待解决
求大佬告知如何进行des加解密
2262浏览 • 1回复 待解决
des解密同步方法解密失败
597浏览 • 1回复 待解决
HarmonyOS CryptoJS Des解密问题
417浏览 • 1回复 待解决
HarmonyOS 如何做md5加密和DES加解密
744浏览 • 1回复 待解决