HarmonyOS 怎么实现特定的MD5加密方式

当前app中用接口安全校验用了md5加密方式,但是加密结果和直接调用crypto-js中MD5的加密结果不一致,不知道当前app中MD5的加密效果用在HarmonyOS 中怎么实现,现在附上其他系统版本MD5方法实现,帮忙提供下在HarmonyOS 中应该如何实现相同的加密效果,当前HarmonyOS Md5的加密方法也提供在图片中,比如对字符串 “299ca90913f94fa598782952db1479682024-07-19 151721375617791937300crm.BITauto>COM” 的加密结果,当前其他系统中得到的加密结果是 “10cdd15d6255ae1b2e5362e148ba194c”

HarmonyOS 怎么实现特定的MD5加密方式 -鸿蒙开发者社区

HarmonyOS 怎么实现特定的MD5加密方式 -鸿蒙开发者社区

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

可参考以下代码:

function doMdByPromise() {
  // 摘要算法名称。
  let mdAlgName = 'MD5';
  // 要进行摘要的数据。
  let message = 'Hello';
  let md = cryptoFramework.createMd(mdAlgName);
  console.info("[Promise]: Md algName is: " + md.algName);
  let promiseMdUpdate = md.update({ data: stringToUint8Array(message) });
  promiseMdUpdate.then(() => {
    // 调用 digest() 以返回结果。
    let PromiseMdDigest = md.digest();
    return PromiseMdDigest;
  }).then(digestOutput => {
    let mdOutput = digestOutput.data;
    let str2 = uint8ArrayToHexStr(mdOutput);
    console.info("[Promise]: MD result: " + mdOutput);
    let mdLen = md.getMdLength();
    console.info("[Promise]: MD len: " + mdLen);
  }).catch((error: BusinessError) => {
    console.error("[Promise]: error: " + error.message);
  });
}
//摘要结果是Uint8Array类型,转换得到十六进制字符串数据
function uint8ArrayToHexStr(data: Uint8Array): string {
  let hexString = '';
  let i: number;
  for (i = 0; i < data.length; i++) {
    let char = ('00' + data[i].toString(16)).slice(-2);
    hexString += char;
  }
  return hexString;
}
function  stringToUint8Array(str: string) {
  let arr = new Uint8Array(str.length);
  for (let i = 0, j = str.length; i < j; ++i) {
    arr[i] = str.charCodeAt(i);
  }
  return arr;
}
分享
微博
QQ
微信
回复
3天前
相关问题
HarmonyOS 密码怎么进行MD5加密
46浏览 • 1回复 待解决
HarmonyOS md5进行加密
71浏览 • 1回复 待解决
HarmonyOS MD5加密相关demo
529浏览 • 1回复 待解决
HarmonyOS MD5加密算法demo
37浏览 • 1回复 待解决
HarmonyOS 需要MD5加密算法
49浏览 • 1回复 待解决
HarmonyOS MD5实现
48浏览 • 1回复 待解决
MD5加密后解码结果乱码
189浏览 • 1回复 待解决
如何解决MD5加密中遇到问题
966浏览 • 1回复 待解决
HarmonyOS 字节数组进行MD5加密
47浏览 • 1回复 待解决
HarmonyOS MD5签名
41浏览 • 1回复 待解决
dlopen打开.so文件并使用md5加密
785浏览 • 1回复 待解决
HarmonyOS 关于求文件md5
65浏览 • 1回复 待解决
没有找到相应MD5算法实现
704浏览 • 1回复 待解决
HarmonyOS 关于MD5算法问题
17浏览 • 1回复 待解决
HarmonyOS 文件md5值计算问题
36浏览 • 1回复 待解决
HarmonyOS 如何计算文件md5
707浏览 • 1回复 待解决
HarmonyOS 如何获取媒体资源md5信息
809浏览 • 1回复 待解决
求告知ArkTS如何获取MD5
765浏览 • 0回复 待解决
HarmonyOS 请问有提供md5算法库吗?
273浏览 • 1回复 待解决
HarmonyOS APP备案需要证书MD5和公钥
24浏览 • 1回复 待解决