HarmonyOS sm2验签失败

HarmonyOS
2024-12-20 13:05:23
1386浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
zxjiu

将HarmonyOS签名后的数据传入d2i_SM2_SignText方法转换即可

/*
* 转HarmonyOS签名后的数据
* */
d2i_SM2_SignText(standard_data: string): string {
  let randNum:string = "";
  let signText:string = "";
  let message = standard_data.slice("30".length, standard_data.length);
  let sequence_lenHex: string = this.getLenHex(message);
  message = message.slice(sequence_lenHex.length, message.length);

  try {
    let randNum_len: string = message.slice(0, 4);
    if(randNum_len == "0220"){
      randNum = message.slice(4, 4+64);
      message = message.slice(4+64, message.length);
    } else {
      //randNum_len == "022100"
      randNum = message.slice(6, 6+64);
      message = message.slice(6+64, message.length);
    }

    let signText_len: string = message.slice(0, 4);
    if(signText_len == "0220"){
      signText = message.slice(4, 4+64);
    } else {
      //randNum_len == "022100"
      signText = message.slice(6, 6+64);
    }
  } catch (e) {
    hilog.error(0x1, "d2i_SM2_SignText", "SignText format is err");
  }

  return randNum+signText
}

// 提取长度域的Hex字符串
getLenHex(data: string): string {
  let byte: number = Number.parseInt("0x" + data.slice(0, 2));
  let len_size: number = byte > 127 ? byte - 0x80 + 1 : 1;
  return data.slice(0, len_size * 2);
}

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
分享
微博
QQ
微信
回复
2024-12-20 15:52:45


相关问题
huks sm2签名失败
1079浏览 • 1回复 待解决
HarmonyOS SM2SM3摘要算法使用
1360浏览 • 1回复 待解决
HarmonyOS SM2密钥对转换失败
1592浏览 • 1回复 待解决
HarmonyOS SM3
997浏览 • 1回复 待解决
HarmonyOS SM2数据签名
644浏览 • 1回复 待解决
HarmonyOS SM2密钥交换
642浏览 • 1回复 待解决
HarmonyOS SM2密钥问题
799浏览 • 1回复 待解决
HarmonyOS 国密SM2转换公钥失败
1001浏览 • 1回复 待解决
HarmonyOS SM2返回Base64字符串
958浏览 • 1回复 待解决
RSA签名后,后端失败
1002浏览 • 1回复 待解决
HarmonyOS SM2公私钥转换
817浏览 • 1回复 待解决
HarmonyOS SM2加密算法
836浏览 • 1回复 待解决
HarmonyOS SM2/SM4结合加解密
945浏览 • 1回复 待解决
HarmonyOS 生成SM2密钥对报错
905浏览 • 1回复 待解决
HarmonyOS Sm2和DES加解密问题
1281浏览 • 1回复 待解决
HarmonyOS SM2密钥交换计算协商密钥
721浏览 • 1回复 待解决
HarmonyOS SM2公钥PEM读取接口
926浏览 • 1回复 待解决
HarmonyOS sm2签名后数据长度问题
598浏览 • 1回复 待解决
HarmonyOS SM2SM4国密加解密使用demo
1125浏览 • 1回复 待解决
HarmonyOS 关于SM2签名设置自定义userid
819浏览 • 1回复 待解决