huks sm2签名验签失败
huks 产生的 sm2密钥 服务端验签失败,生成密钥对代码:
let HUKS_TAG_ALGORITHM = huks.HuksKeyAlg.HUKS_ALG_SM2
let HUKS_TAG_KEY_SIZE = huks.HuksKeySize.HUKS_SM2_KEY_SIZE_256
let HUKS_TAG_DIGEST = huks.HuksKeyDigest.HUKS_DIGEST_NONE
let HUKS_TAG_USER_AUTH_TYPE = huks.HuksUserAuthType.HUKS_USER_AUTH_TYPE_FINGERPRINT
let gKeyProperties: HuksProperties[] = [
{
tag: huks.HuksTag.HUKS_TAG_ALGORITHM,
value: HUKS_TAG_ALGORITHM
},
{
tag: huks.HuksTag.HUKS_TAG_KEY_SIZE,
value: HUKS_TAG_KEY_SIZE
},
{
tag: huks.HuksTag.HUKS_TAG_PURPOSE,
value: huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_SIGN | huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_VERIFY
},
{
tag: huks.HuksTag.HUKS_TAG_USER_AUTH_TYPE,
value: HUKS_TAG_USER_AUTH_TYPE
},
{
tag: huks.HuksTag.HUKS_TAG_DIGEST,
value: HUKS_TAG_DIGEST
},
{
tag: huks.HuksTag.HUKS_TAG_KEY_AUTH_ACCESS_TYPE,
value: huks.HuksAuthAccessType.HUKS_AUTH_ACCESS_INVALID_NEW_BIO_ENROLL
},
{
tag: huks.HuksTag.HUKS_TAG_CHALLENGE_TYPE,
value: huks.HuksChallengeType.HUKS_CHALLENGE_TYPE_NORMAL
},
{
tag: huks.HuksTag.HUKS_TAG_KEY_STORAGE_FLAG,
value: huks.HuksKeyStorageType.HUKS_STORAGE_ONLY_USED_IN_HUKS
}]
let options = {
properties: gKeyProperties
};
huks.generateKeyItem(keyAlias, options, (error, data) => {
if (error) {
reject(error);
} else {
resolve(data);
}
});
签名代码:
let HUKS_TAG_ALGORITHM = huks.HuksKeyAlg.HUKS_ALG_SM2
let HUKS_TAG_KEY_SIZE = huks.HuksKeySize.HUKS_SM2_KEY_SIZE_256
let HUKS_TAG_DIGEST = huks.HuksKeyDigest.HUKS_DIGEST_NONE
let sessionProperties: HuksProperties[] = [
{
tag: huks.HuksTag.HUKS_TAG_ALGORITHM,
value: HUKS_TAG_ALGORITHM
},
{
tag: huks.HuksTag.HUKS_TAG_KEY_SIZE,
value: HUKS_TAG_KEY_SIZE
},
{
tag: huks.HuksTag.HUKS_TAG_PURPOSE,
value: huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_SIGN
},
{
tag: huks.HuksTag.HUKS_TAG_DIGEST,
value: HUKS_TAG_DIGEST
}
];
let options = {
properties: sessionProperties
};
huks.finishSession(handle, options, token, (error, data) => {
if (error) {
hilog.error(Constant.LOG_DOMAIN, Constant.UAF_LOG_TAG, "huks finishSession failed and reject:" + JSON.stringify(error));
reject(error);
} else {
resolve(data);
}
});
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS sm2验签失败
69浏览 • 1回复 待解决
HUKS的SM2签名验签的算法规格及开发步骤
1077浏览 • 1回复 待解决
HarmonyOS SM2加签验签SM3摘要算法使用
519浏览 • 1回复 待解决
HarmonyOS SM2数据签名
13浏览 • 1回复 待解决
RSA签名后,后端验签失败
206浏览 • 1回复 待解决
HarmonyOS SM2依据已有的字符串的私钥和公钥进行签名和验签
529浏览 • 1回复 待解决
密钥库huks生成的sm2密钥场景下,获取签名所需userid值的方法。
811浏览 • 1回复 待解决
HarmonyOS SM2密钥对转换失败
679浏览 • 1回复 待解决
HarmonyOS 华为支付签名验签
238浏览 • 1回复 待解决
HarmonyOS RSA签名验签相关
17浏览 • 1回复 待解决
HarmonyOS SM3验签
22浏览 • 1回复 待解决
HarmonyOS HarmonyOS签名验签问题
17浏览 • 1回复 待解决
HarmonyOS 接口参数的RSA签名+验签
16浏览 • 1回复 待解决
huks ECC指纹认证签名验签报错
1459浏览 • 1回复 待解决
HarmonyOS 国密SM2转换公钥失败
21浏览 • 1回复 待解决
HarmonyOS SM2密钥问题
18浏览 • 1回复 待解决
HarmonyOS SM2加签返回Base64字符串
67浏览 • 1回复 待解决
HarmonyOS SM2/SM4结合加解密
22浏览 • 1回复 待解决
HarmonyOS SM2加密算法
14浏览 • 1回复 待解决
HarmonyOS 生成SM2密钥对报错
87浏览 • 1回复 待解决
密钥库生成sm2密钥,密钥对不能同时支持签名和加解密
280浏览 • 1回复 待解决
HarmonyOS Sm2和DES加解密问题
512浏览 • 1回复 待解决
HarmonyOS SM2公钥PEM读取接口
13浏览 • 1回复 待解决
HarmonyOS SM2,SM4国密加解密使用demo
299浏览 • 1回复 待解决
国密算法SM2签名api,没有可辨别标识IDA参数有什么实现方案
1676浏览 • 1回复 待解决
签名验签的时候若是使用了SM2算法,则其摘要需要使用SM3。
参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/huks-signing-signature-verification-overview-V5