HarmonyOS 端的加密API的参数该如何设置,以达到如上java的加密效果

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

请参考:

export async function aesEncryptECB(text: Uint8Array, puKey: string): Promise<string> {
  let globalResult = ""
  try {
    let cipherAlgName = 'AES128|ECB|PKCS7';
    let globalCipher = cryptoFramework.createCipher(cipherAlgName);
    let symAlgName = 'AES128';
    let symKeyGenerator = cryptoFramework.createSymKeyGenerator(symAlgName);
    let dataUint8Array = HexStrTouint8Array(puKey)
    let keyBlob: cryptoFramework.DataBlob = { data: dataUint8Array }
    let promiseSymKey = await symKeyGenerator.convertKey(keyBlob)
    await globalCipher.init(cryptoFramework.CryptoMode.ENCRYPT_MODE, promiseSymKey, null);
    let result = await globalCipher.doFinal({ data: text })
    globalResult = uint8ArrayToHexStr(result.data);
    //5b9388cdaf54b785118cb512e3ef7c7a6e1e4f3dbece17d614318681bc9bb68db3f4c339e5deab5936d379aef361ab48
  } catch (err) {
    console.log(err.message)
  }
  return globalResult;
}

//Uint8Array转十六进制
export function uint8ArrayToHexStr(data: Uint8Array): string {
  return buffer.from(data).toString('hex');
}

//十六进制转Uint8Array
export function HexStrTouint8Array(data: string): Uint8Array {
  return new Uint8Array(buffer.from(data, 'hex').buffer);
}
分享
微博
QQ
微信
回复
2天前
相关问题
关于DES加密设置问题
252浏览 • 1回复 待解决
List组件如何设置渐变效果
1971浏览 • 1回复 待解决
HarmonyOS 有没有api实现DES加密
30浏览 • 1回复 待解决
HarmonyOS HmacSHA1 加密算法 参数问题
34浏览 • 1回复 待解决
数据库如何设置加密级别?
481浏览 • 2回复 待解决
HarmonyOS RAS加密,AES加密和解密
67浏览 • 1回复 待解决
HarmonyOS 加密和解密方案实现
35浏览 • 1回复 待解决
RSA加密方法在HarmonyOS 实现
24浏览 • 1回复 待解决
加密和密码键盘实现
215浏览 • 0回复 待解决
HarmonyOS java PathMeasure 对应api
58浏览 • 1回复 待解决