!1603 注释告警修改 Merge pull request !1603 from Linzs.online/noCheckDigest0
HUKS(OpenHarmony Universal KeyStore,OpenHarmony通用密钥库系统)向应用提供密钥库能力,包括密钥管理及密钥的密码学操作等功能。HUKS所管理的密钥可以由应用导入或者由应用调用HUKS接口生成。
HUKS模块可以分为如下三大部分:
HUKS SDK层:提供HUKS API供应用调用。
HUKS Service层:实现HUKS密钥管理、存储等功能。
HUKS Core层:HUKS核心模块,负责密钥生成以及加解密等工作。对于标准系统设备,该部分模块在商用场景下必须在安全环境下运行,包括TEE或者具备安全能力的芯片等。由于安全环境需要特定硬件支持,因此在开源代码中为模拟实现。对于小型和轻量系统,HUKS模块仅提供根密钥保护方案的模拟实现,商用场景下必须根据产品能力适配硬件根密钥或者使用其他根密钥保护方案。
HUKS部件架构如下图所示:
├── build # 编译配置文件 ├── frameworks # 框架代码, 作为基础功能目录, 被interfaces和services使用 │ ├── huks_lite # 小型和轻量系统编译脚本 │ └── huks_standard # 代码实现 ├── interfaces # 接口API代码 │ ├── inner_api # inner api接口 │ └── kits # 对外api接口 ├── services # 服务框架代码 │ └── huks_standard │ ├── huks_engine # HUKS 核心层代码 │ └── huks_service # HUKS 服务层代码 ├── test # 测试代码存放目录 └── utils # 工具代码存放目录
单仓编译
以RK3568为例,以下编译命令可以单独编译HUKS单仓和测试文件:
本模块单独编译命令 ./build.sh --product-name=rk3568 --build-target out/rk3568/build_configs/security/huks:huks 本模块测试文件单独编译命令 ./build.sh --product-name rk3568 --build-target out/rk3568/build_configs/security/huks:huks_test
接口文档
开发指导
注:HUKS部件包含密钥管理及密钥的密码学操作等功能,如果仅需要进行密钥的密码学操作而不需要密钥管理,建议使用加解密算法库框架。
security_crypto_framework
security_certificate_manager
security_huks
third_party_openssl
third_party_mbedtls
主要提供样例给开发者展示如何去使用已有的安全机制来提升系统的安全能力,包括安全启动、应用权限管理、IPC通信鉴权、HUKS、HiChain、应用签名验签。
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
HUKS部件
简介
HUKS(OpenHarmony Universal KeyStore,OpenHarmony通用密钥库系统)向应用提供密钥库能力,包括密钥管理及密钥的密码学操作等功能。HUKS所管理的密钥可以由应用导入或者由应用调用HUKS接口生成。
HUKS模块可以分为如下三大部分:
HUKS SDK层:提供HUKS API供应用调用。
HUKS Service层:实现HUKS密钥管理、存储等功能。
HUKS Core层:HUKS核心模块,负责密钥生成以及加解密等工作。对于标准系统设备,该部分模块在商用场景下必须在安全环境下运行,包括TEE或者具备安全能力的芯片等。由于安全环境需要特定硬件支持,因此在开源代码中为模拟实现。对于小型和轻量系统,HUKS模块仅提供根密钥保护方案的模拟实现,商用场景下必须根据产品能力适配硬件根密钥或者使用其他根密钥保护方案。
HUKS部件架构如下图所示:
目录
编译构建
单仓编译
以RK3568为例,以下编译命令可以单独编译HUKS单仓和测试文件:
说明
接口说明
接口文档
使用说明
开发指导
注:HUKS部件包含密钥管理及密钥的密码学操作等功能,如果仅需要进行密钥的密码学操作而不需要密钥管理,建议使用加解密算法库框架。
相关仓
security_crypto_framework
security_certificate_manager
security_huks
third_party_openssl
third_party_mbedtls