harmony 鸿蒙security变更说明

  • 2025-06-16
  • 浏览 (3)

security变更说明

cl.security.1 通用密钥库SystemCapability变更

访问级别

公开接口。

变更原因

通用密钥库为了满足未来mini平台算法能力扩展诉求,将加解密算法相关TAG的SystemCapability由SystemCapability.Security.Huks.Extension调整为SystemCapability.Security.Huks.Core。且由于mini平台算法能力较弱,部分算法当前返回不支持,待后续扩展。

变更影响

该变更为不兼容变更。

对接口所属的SystemCapability进行调整,对接口本身的使用方式无影响。

变更前:

相关接口的系统能力要求为“SystemCapability.Security.Huks.Extension”。判断设备是否支持本次变更涉及算法需使用canIUse(“SystemCapability.Security.Huks.Extension”)。

变更后:

相关接口的系统能力要求为“SystemCapability.Security.Huks.Core”。判断设备是否支持本次变更涉及算法需改为使用canIUse(“SystemCapability.Security.Huks.Core”)。

起始 API Level

12

变更发生的版本

从OpenHarmony SDK 5.0.0.39开始。

变更的接口/组件

@ohos.security.huks模块中的加解密算法相关接口。详细接口如下: |序号|接口名 |接口说明 | |—-|————————-|————| |1 |huks.importKeyItem |导入明文密钥| |2 |huks.importWrappedKeyItem|导入加密密钥| |3 |huks.exportKeyItem |导出密钥 | |4 |huks.getKeyItemProperties|获取密钥属性| |5 |huks.deleteKey |删除密钥 |

@ohos.security.huks模块中的相关枚举类型。详细如下: |序号|枚举名 |枚举说明 | |—-|———————|—————————————————–| |1 |HuksKeyPurpose |表示密钥用途 | |2 |HuksKeyDigest |表示摘要算法 | |3 |HuksKeyPadding |表示补齐算法 | |4 |HuksCipherMode |表示加密模式 | |5 |HuksKeySize |表示密钥长度 | |6 |HuksKeyAlg |表示密钥使用的算法 | |7 |HuksUnwrapSuite |表示导入加密密钥的算法套件 | |8 |HuksKeyStorageType |表示密钥存储方式 | |9 |HuksImportKeyType |表示导入密钥的密钥类型 | |10 |HuksRsaPssSaltLenType|表示Rsa在签名验签、padding为pss时需指定的salt_len类型| |11 |HuksAuthStorageLevel|表示生成或导入密钥时,指定该密钥的存储安全等级 | |12 |HuksSendType |表示发送Tag的方式 | |13 |HuksTagType |表示Tag的数据类型 |

HuksTag中的枚举值。详细如下: |序号|枚举值 |枚举值说明 | |—-|—————————————-|——————————-| |1 |HUKS_TAG_DIGEST |表示摘要算法的Tag | |2 |HUKS_TAG_SALT |表示密钥派生时的盐值 | |3 |HUKS_TAG_ITERATION |表示密钥派生时的迭代次数 | |4 |HUKS_TAG_AGREE_ALG |表示密钥协商时的算法类型 | |5 |HUKS_TAG_AGREE_PUBLIC_KEY_IS_KEY_ALIAS |表示密钥协商时的公钥别名 | |6 |HUKS_TAG_AGREE_PRIVATE_KEY_ALIAS |表示密钥协商时的私钥别名 | |7 |HUKS_TAG_AGREE_PUBLIC_KEY |表示密钥协商时的公钥 | |8 |HUKS_TAG_DERIVE_KEY_SIZE |表示派生密钥的大小 | |9 |HUKS_TAG_IMPORT_KEY_TYPE |表示导入的密钥类型 | |10 |HUKS_TAG_UNWRAP_ALGORITHM_SUITE |表示导入加密密钥的套件 | |11 |HUKS_TAG_DERIVED_AGREED_KEY_STORAGE_FLAG|表示派生密钥/协商密钥的存储类型| |12 |HUKS_TAG_RSA_PSS_SALT_LEN_TYPE |表示rsa_pss_salt_length的类型 | |13 |HUKS_TAG_ALL_USERS |预留 | |14 |HUKS_TAG_USER_ID |表示当前密钥属于哪个userID | |15 |HUKS_TAG_NO_AUTH_REQUIRED |预留 | |16 |HUKS_TAG_IS_ALLOWED_WRAP |预留 | |17 |HUKS_TAG_KEY_WRAP_TYPE |预留 | |18 |HUKS_TAG_KEY_ROLE |预留 | |19 |HUKS_TAG_IS_ASYNCHRONIZED |预留 | |20 |HUKS_TAG_ASYMMETRIC_PUBLIC_KEY_DATA |预留 | |21 |HUKS_TAG_ASYMMETRIC_PRIVATE_KEY_DATA |预留 |

适配指导

SystemCapability.Security.Huks.Core为必选基础能力,SystemCapability.Security.Huks.Extension为可选扩展能力。当前SDK默认定义的device-define都包含SystemCapability.Security.Huks.Core必选能力,因此涉及Universal Keystore组件的功能代码原则上无需适配。但如果代码中涉及调用canIUse()方法对本次变更涉及算法支持情况进行判断,则应修改canIUse()方法传入的SystemCapability,同时参考资料,结合API level判断。

cl.security.2 @ohos.security.cryptoFramework 接口SysCap变更

访问级别

公开接口

变更原因

加解密算法库框架为了灵活适配不同平台,按照算法类型对接口重新划分SysCap。

变更影响

此变更为不兼容变更。

变更前:

加解密算法库框架所有接口的SysCap均是SystemCapability.Security.CryptoFramework。

(1)可以使用canIUse(“SystemCapability.Security.CryptoFramework”)判断设备是否支持加解密算法库能力。

(2)若自定义设备支持加解密算法库能力能力,只需在设备的能力集配置中配置SystemCapability.Security.CryptoFramework。

变更后:

加解密算法库框架按照算法类型对接口重新划分SysCap,如随机数相关接口SysCap变更为SystemCapability.Security.CryptoFramework.Rand。

(1)应该使用具体的Syscap判断设备的加解密算法库是否支持对应算法,如使用canIUse(“SystemCapability.Security.CryptoFramework.Rand”)判断设备的加解密算法库能力是否支持随机数能力。

(2)若自定义设备原本就支持加解密算法库能力,则需在设备的能力集配置中添加加解密算法库框架的所有SysCap,具体SysCap名见“变更的接口/组件”。

起始 API Level

12

变更发生版本

从OpenHarmony SDK 5.0.0.39 版本开始。

变更的接口/组件

@ohos.security.cryptoFramework按照算法类型对接口重新划分SysCap,具体划分如下,其中序号为2到11的10个SysCap是新增的:

序号 SysCap名 SysCap描述
1 SystemCapability.Security.CryptoFramework 原有的SysCap,变更后不包含任何算法能力,仅包含公共能力
2 SystemCapability.Security.CryptoFramework.Key 密钥基础类型
3 SystemCapability.Security.CryptoFramework.Key.SymKey 对称密钥
4 SystemCapability.Security.CryptoFramework.Key.AsymKey 非对称密钥
5 SystemCapability.Security.CryptoFramework.Signature 签名验签
6 SystemCapability.Security.CryptoFramework.Cipher 对称、非对称加解密
7 SystemCapability.Security.CryptoFramework.KeyAgreement 密钥协商
8 SystemCapability.Security.CryptoFramework.MessageDigest 消息摘要
9 SystemCapability.Security.CryptoFramework.Mac 消息验证码
10 SystemCapability.Security.CryptoFramework.Kdf 密钥派生
11 SystemCapability.Security.CryptoFramework.Rand 随机数

适配指导

(1)判断设备是否支持加解密算法库框架的随机数能力需使用canIUse(“SystemCapability.Security.CryptoFramework.Rand”),其他算法类型类似。

(2)若自定义设备的能力集配置文件中包含了SystemCapability.Security.CryptoFramework,则需要添加此次变更新增的10个SysCap。

你可能感兴趣的鸿蒙文章

harmony 鸿蒙元能力子系统变更说明

harmony 鸿蒙ArkCompiler子系统Changelog

harmony 鸿蒙ArkUI子系统Changelog

harmony 鸿蒙文件子系统Changelog

harmony 鸿蒙媒体子系统Changelog

harmony 鸿蒙窗口子系统变更说明

0  赞