HarmonyOS 如何进行HmacSHA1加密

我们在使用接口时,需要将参数进行HmacSHA1加密传输过去,我使用cryptoFramework.createMac(“HmacSHA1”)创建mac加密算法失败了,还有什么方法可以进行HmacSHA1加密吗

HarmonyOS
2024-12-27 15:32:42
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

尝试一下:https://developer.huawei.com/consumer/cn/forum/topic/0207152037054943457?fid=0109140870620153026

// 可理解的字符串转成字节流 
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;
}

async function getHmac(message: string) {
  try {
    let macAlgName = 'SHA1';
    let mac = cryptoFramework.createMac(macAlgName)
    let arr = stringToUint8Array('30a86dc9056c44cc05420fec269270214bbb6914954e871e83771c9810ac1db0')
    let KeyBlob: cryptoFramework.DataBlob = { data: arr };
    let symKeyGenerator = cryptoFramework.createSymKeyGenerator('HMAC');
    const symKey = await symKeyGenerator.convertKey(KeyBlob);
    await mac.init(symKey)
    await mac.update({ data: stringToUint8Array(message) });
    let macOutpt = await mac.doFinal();
    const res = buffer.from(macOutpt.data).toString('hex');
    console.log('Hmac—:' + res);
  } catch (err) {
    console.log('err:' + err)
  }
}
分享
微博
QQ
微信
回复
2024-12-27 18:51:17
相关问题
HarmonyOS HmacSHA1 加密算法 参数问题
468浏览 • 1回复 待解决
HarmonyOS HmacSHA1加签算法实现
1181浏览 • 1回复 待解决
加解密HmacSha1HmacSha256、aes参考Demo
2466浏览 • 1回复 待解决
HarmonyOSHmacSHA1加签算法实现?
322浏览 • 0回复 待解决
如何进行关系型数据库的加密
840浏览 • 2回复 待解决
关系型数据库rdb中如何进行加密
2216浏览 • 1回复 待解决
HarmonyOS SM4如何进行SM4/ECB/NoPadding加密
269浏览 • 1回复 待解决
HarmonyOS 如何进行代码检查
484浏览 • 1回复 待解决
HarmonyOS 如何进行邀请测试
454浏览 • 1回复 待解决
HarmonyOS 如何进行sdk升级
375浏览 • 1回复 待解决
HarmonyOS 请问如何进行UrlEncode
410浏览 • 1回复 待解决
HarmonyOS 如何进行图片裁剪
352浏览 • 1回复 待解决
HarmonyOS 如何进行音频合成
761浏览 • 1回复 待解决
如何进行系统崩溃监控?
1037浏览 • 1回复 待解决
HarmonyOS如何进行模拟定位?
299浏览 • 1回复 待解决
HarmonyOS 如何进行堆栈反解
184浏览 • 1回复 待解决
HarmonyOS HAP之间如何进行通信?
831浏览 • 1回复 待解决
HarmonyOS 如何进行DES加解密
1088浏览 • 1回复 待解决
HarmonyOS SDK 如何进行打包 和 混淆?
484浏览 • 1回复 待解决
HarmonyOS rcp如何进行fetch流式请求
349浏览 • 1回复 待解决