HarmonyOS 如何做md5加密和DES加解密?

如题:HarmonyOS 如何做md5加密和DES加解密?

阅读 514
1 个回答

md5加密可以参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-cryptoframework-V5\#paramsspec

DES加解密可以参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/crypto-3des-sym-encrypt-decrypt-ecb-V5

可以参考demo :

public static md5(input : string ): Promise<string>{
  return new Promise<string>((resolve,reject)=>{
  const dataBlob = {
    data:this.stringToUnit8Array(input)
  };
  const encryptor = cryptoFramework.createMd("MD5");
  encryptor.update(dataBlob)
  .then(()=>{
  return encryptor.digest()
})
.then (out=>{
  resolve(out.data.toString());
});
});
}

函数说明: md5(input : string ): Promise:这是一个静态方法,接受一个字符串输入,并返回一个Promise对象,该Promise对象解析为输入字符串的MD5哈希值。

代码说明 :

1、转换输入字符串:使用stringToUnit8Array方法将输入的字符串转换为Unit8Array类型,为了适配cryptoFramework模块的数据输入格式。

2、创建MD5加密器:调用cryptoFramework.createMd(“MD5”)创建一个MD5加密器。

3、更新加密器:调用加密器update方法,传入包含转换后的数据的dataBlob对象。

4、计算摘要:在update方法的Promise被解析后,调用加密器的digest方法来计算最终的MD5哈希值。

5、解析结果:将计算出的MD5哈希值转换为字符串,并通过resolve方法返回。

注意事项:

1、在使用cryptoFramework之前,确保已经正确导入该模块。

2、确保stringToUnit8Array方法已经定义,并且能够正确地江字符串转换成Uint8Array。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进