#鸿蒙通关秘籍#在鸿蒙开发中如何使用细粒度访问控制实现签名验签?

HarmonyOS
2024-12-02 15:19:35
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
墨s流光TCP

细粒度访问控制可提升签名验签的安全性,需要在密钥创建时设置特定属性。注意在创建密钥时启用以下设置:

function getGenerateProperties() {
    let properties: Array<huks.HuksParam> = new Array();
    let index = properties.length;

    properties[index++] = {
        tag: huks.HuksTag.HUKS_TAG_ALGORITHM,
        value: huks.HuksKeyAlg.HUKS_ALG_ECC
    };
    properties[index++] = {
        tag: huks.HuksTag.HUKS_TAG_KEY_SIZE,
        value: huks.HuksKeySize.HUKS_ECC_KEY_SIZE_256
    };
    properties[index++] = {
        tag: huks.HuksTag.HUKS_TAG_PURPOSE,
        value: huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_SIGN | huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_VERIFY
    };
    properties[index++] = {
        tag: huks.HuksTag.HUKS_TAG_DIGEST,
        value: huks.HuksKeyDigest.HUKS_DIGEST_SHA256
    };
    properties[index++] = {
        tag: huks.HuksTag.HUKS_TAG_USER_AUTH_TYPE,
        value: huks.HuksUserAuthType.HUKS_USER_AUTH_TYPE_FINGERPRINT
    };
    properties[index++] = {
        tag: huks.HuksTag.HUKS_TAG_KEY_AUTH_ACCESS_TYPE,
        value: huks.HuksAuthAccessType.HUKS_AUTH_ACCESS_ALWAYS_VALID
    };
    properties[index++] = {
        tag: huks.HuksTag.HUKS_TAG_CHALLENGE_TYPE,
        value: huks.HuksChallengeType.HUKS_CHALLENGE_TYPE_NORMAL
    };
    properties[index++] = {
        tag: huks.HuksTag.HUKS_TAG_KEY_AUTH_PURPOSE,
        value: huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_SIGN | huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_VERIFY
    };
    return properties;
}

确保适当设置用户认证及挑战类型等属性,结合使用提供双重身份验证保障安全。

分享
微博
QQ
微信
回复
2024-12-02 17:20:12
相关问题
HarmonyOS 华为支付签名
374浏览 • 1回复 待解决
HarmonyOS RSA签名相关
151浏览 • 1回复 待解决
HarmonyOS HarmonyOS签名问题
139浏览 • 1回复 待解决
RSA签名后,后端失败
343浏览 • 1回复 待解决
HarmonyOS 接口参数的RSA签名+
128浏览 • 1回复 待解决
huks sm2签名失败
360浏览 • 1回复 待解决