Universal Keystore Kit简介
Universal Keystore Kit(密钥管理服务,下述简称为HUKS)向业务/应用提供各类密钥的统一安全操作能力,包括密钥管理(密钥生成/销毁、密钥导入、密钥证明、密钥协商、密钥派生)及密钥使用(加密/解密、签名/验签、访问控制)等功能。
HUKS管理的密钥可以由业务/应用导入或调用HUKS的接口生成。同时,HUKS提供了密钥访问控制能力,确保存储在HUKS中的密钥被合法正确的访问。
整体架构
如图所示,HUKS模块可以分为如下三大部分:
- SDK:提供密钥管理的接口供开发者调用,开发者可以根据实际业务,选择ArkTS或C API。
- HUKS服务层:实现密钥会话管理及存储管理。
- HUKS核心层:承载HUKS的核心功能,包括密钥的密码学运算、明文密钥的加解密、密钥访问控制等。
说明: 对于具备安全环境(如[TEE]、安全芯片)的系统/设备,HUKS核心层必须运行在安全环境内。由于安全环境依赖硬件支持,在开源仓中仅为模拟实现,需OEM厂商适配。
HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿
核心功能
HUKS为开发者提供了密钥全生命周期的管理能力,其核心功能按照密钥生命周期划分如下:
密钥生成
功能 | 说明 |
---|---|
[密钥生成] | 随机生成密钥,且在密钥的全生命周期内,其明文仅在安全环境中进行访问操作,不会将明文传递出安全环境。 |
[密钥导入] | 业务可以将外部生成的密钥导入到HUKS进行管理。 |
密钥使用
功能 | 说明 |
---|---|
[加密/解密] | 使用密钥将数据加密为攻击者无法理解的密文,或使用密钥将数据解密为业务可用的明文。 |
[签名/验签] | 用于认证消息内容以及消息发送者身份的真实性。 |
[密钥协商] | 两个或多个实体通过协商,共同建立会话密钥。 |
[密钥派生] | 从一个现有密钥派生出一个或多个新密钥。 |
[访问控制] | 确保存储在HUKS中的密钥,不会被越权访问。 |
密钥删除
功能 | 说明 |
---|---|
[密钥删除] | 安全地删除存储在HUKS中的密钥数据。 |
密钥证明
功能 | 说明 开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md ]。 |
---|---|
[密钥证明] | 为存储在HUKS中的非对称密钥对中的公钥签发证书,从而证明密钥的合法性(如密钥在安全环境中生成)。 |
与相关Kit的关系
[基于用户身份认证的密钥访问控制]=,依赖于[User Authentication Kit(用户身份认证)]
审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
密钥管理
+关注
关注
0文章
23浏览量
7593 -
鸿蒙
+关注
关注
57文章
2339浏览量
42805
发布评论请先 登录
相关推荐
鸿蒙开发:Universal Keystore Kit密钥管理服务 密钥导入介绍及算法规格
如果业务在HUKS外部生成密钥(比如应用间协商生成、服务器端生成),业务可以将密钥导入到HUKS中由HUKS进行管理。密钥一旦导入到HUKS
鸿蒙开发:Universal Keystore Kit 密钥管理服务 密钥协商 C、C++
以协商密钥类型为ECDH,并密钥仅在HUKS内使用为例,完成密钥协商。具体的场景介绍及支持的算法规格,请参考[密钥生成支持的算法]。
鸿蒙开发:Universal Keystore Kit密钥管理服务 密钥派生介绍及算法规格
在密码学中,密钥派生函数(Key derivation function,KDF)使用伪随机函数从诸如主密码或密码的秘密值中派生出一个或多个密钥。
鸿蒙开发:Universal Keystore Kit 密钥管理服务 HMAC ArkTS
HMAC是密钥相关的哈希运算消息认证码(Hash-based Message Authentication Code),是一种基于Hash函数和密钥进行消息认证的方法。
鸿蒙开发:Universal Keystore Kit密钥管理服务 密钥证明介绍及算法规格
HUKS为密钥提供合法性证明能力,主要应用于非对称密钥的公钥的证明。
鸿蒙开发:Universal Keystore Kit 密钥管理服务 获取密钥属性ArkTS
HUKS提供了接口供业务获取指定密钥的相关属性。在获取指定密钥属性前,需要确保已在HUKS中生成或导入持久化存储的密钥。
鸿蒙开发:Universal Keystore Kit 密钥管理服务 获取密钥属性C C++
HUKS提供了接口供业务获取指定密钥的相关属性。在获取指定密钥属性前,需要确保已在HUKS中生成或导入持久化存储的密钥。
评论