从本片开始主要介绍鸿蒙系统当中安全模块security_huks。
HUKS组件介绍HUKS(Harmony Universal KeyStore,鸿蒙通用密钥库系统)向应用提供密钥库能力,包括密钥管理及密钥的密码学操作等功能。HUKS所管理的密钥可以由应用导入或者由应用调用HUKS接口生成。 HUKS模块可以分为如下三大部分:
-
HUKS SDK层: 提供HUKS API供应用调用。
-
HUKS Service层: 实现HUKS密钥管理、存储等功能。
-
HUKS Engine层: HUKS核心模块,负责密钥生成以及加解密等工作。对于L2设备,该部分模块在商用场景下必须在安全环境下运行,包括TEE或者具备安全能力的芯片等。由于安全环境需要特定硬件支持,因此在开源代码中为模拟实现。
security_huks
├── build # 编译配置文件
├── frameworks # 框架代码, 作为基础功能目录, 被interfaces和services使用.
│ └── huks_standard # huks标准模块, 即表示L2的HUKS模块
│ └── huks_lite # huks L0和L1代码实现
│ └── crypto_lite # 加解密实现
├── interfaces # 接口API代码
│ └── innerkits
│ └── huks_standard
│ └── huks_lite
└── services
└── huks_standard