OpenHarmony安全子系统之密钥管理

密钥管理子系统

  HUKS提供了密钥与证书管理服务来保证数据安全。它可用于保障上层设备之间信任关系(设备认证)。 我们首先给出HUKS的总体框架图,之后再逐步分析其中的每个组件。

总体框架图

  huks主要涉及的是密钥管理服务。其总体框架图:

 

根主密钥管理组件

  HUKS密钥管理机制是采用了多级密钥管理方法(根密钥、主密钥、密钥加密密钥、工作密钥),其关系图如下:

 

  具体流程图如下(这个流程只是根密钥—>主密钥–>密钥加密密钥流程,其他诸如通过缓存区将根主密钥存储文件加载到内存中使用和内存中根主密钥信息保存到根主密钥存储文件等过程就没有再涉及

 

 

  从关系图和流程图中,这多级密钥管理逻辑: 根密钥(这个密钥很少变化)来保证主密钥的安全,主密钥派生出密钥加密密钥来保证密钥库中其他工作密钥的安全。

HUks层次化管理的好处是:整个密钥系统成为一个动态的,不断变化的密钥系统,在底层密钥受到攻击后,高层密钥可以有效保护底层密钥进行更换,从而减弱了底层密钥被攻击所带来的影响,有效地保证了密钥系统整体的安全性。

 

密钥库组件

  这个部分主要涉及工作密钥存储、工作密钥读取、工作密钥更新等,比如:设备认证中对端的身份公钥。它主要在内存<—->密钥存储文件之间工作。这个组件的总体逻辑比较简单,如图:

 

 

密钥库组件密钥存储结构和功能概括图:

 

 

功能服务组件与服务对外接口

  在功能服务组件(hks_service)中定义了HUKS密钥管理提供的功能实现。服务对外接口提供接口函数给上层使用(设备认证),其是对封装功能服务组件

 

总结

  最后,通过上述对每个组件的分析,其中根主密钥组件是整个HUKs密钥管理安全保证的根本,它来保证密钥存储组件中密钥安全,功能服务组件提供多种功能,来供系统其他模块使用。

 

posted @   沉心慢慢  阅读(625)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示