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   

示例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 })
  })

解密出来的数据是十六进制的。需要通过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 })
  })
分享
微博
QQ
微信
回复
2024-12-20 16:18:25
相关问题
HarmonyOS 3DES加解密示例
429浏览 • 1回复 待解决
HarmonyOS 3des加解密失败
315浏览 • 1回复 待解决
关于3des加解密问题,有人知道吗?
604浏览 • 1回复 待解决
HarmonyOS 关于DES加解密的疑问
461浏览 • 1回复 待解决
HarmonyOS 如何进行DES加解密
1051浏览 • 1回复 待解决
HarmonyOS 3DES的key长度不符合
203浏览 • 1回复 待解决
HarmonyOS 文档中没有查找到DES加解密
658浏览 • 1回复 待解决
HarmonyOS Sm2和DES加解密问题
902浏览 • 1回复 待解决
HarmonyOS DES解密
169浏览 • 1回复 待解决
求大佬告知如何进行des加解密
2194浏览 • 1回复 待解决
des解密同步方法解密失败
506浏览 • 1回复 待解决
HarmonyOS CryptoJS Des解密问题
311浏览 • 1回复 待解决
HarmonyOS 如何做md5加密和DES加解密
544浏览 • 1回复 待解决