初始化内置密钥
用户应用调用libsdf.so接口访问内置密钥前需要先生成内置密钥。为了方便客户创建和管理内置密钥,提供了密钥管理工具,支持密钥创建,删除,修改、查询,导入,导出,恢复出厂设置等。此外为了增强安全性,提供了内置密钥白名单配置,只有在白名单中的应用才可以获取内置密钥使用权限。
- 参考TrustZone特性指南完成CA/TA运行环境搭建。使用BoostKit-ccos_1.0.zip中的hpm固件和kunpeng_sec_drv.sec软件完成环境搭建。
- 将软件包BoostKit-ccos_1.0.zip中的libsdf.so拷贝到系统库路径下。
cp -rf libsdf.so /lib64/
- 将软件包BoostKit-ccos_1.0.zip中的tee-key_manage拷贝到服务器宿主机上任意位置,添加可执行权限,并切到root用户执行,即可进入工具首页。
./tee_key_manage
- 可按上下方向键将箭头移动到想要执行的选项上,然后按回车键选中进入,
- 密钥创建演示。以用户密钥为例,选择Create Key -->User Key后输入下标和密码。
创建内置密钥时会对密码复杂度进行校验,需要至少包含大写字母、小写字母、数字、特殊字符中的至少两种,长度大于8位。
- 密钥查询演示。以用户密钥为例,选择“Query Key --> User Key”后输入下标。
- 用户密钥标识码修改演示。选择“Modify Key Password”后输入下标,原密码,新密码。
新密码不能与旧密码一样。
- 删除密钥演示。以用户密钥为例,选择“Delete Key --> User Key”后输入下标。
- 导出密钥演示。以用户密钥为例,选择“Export Key --> User Key后”输入下标,加密盐值。
需要输入盐值,用于密钥加密,执行成功后,会在当前tee_key_manage执行路径生成对应索引密钥的bin文件。
- 用户密钥导出文件为:加密密钥000xxxxx.bin、签名密钥800xxxxx.bin,xxxxx为索引值。
- 密钥加密密钥导出文件为:003xxxxx.bin。
- 导入密钥演示。以用户密钥为例,选择“Import Key --> User Key”后输入下标,加密盐值。
导入密钥时,需确保当前路径下有已导出的密钥bin文件。bin文件名中的索引值需与输入的索引值保持一致,输入盐值需要与导出时一致,才能成功导入。
- 添加CA应用密钥访问权限演示。选择“Add Access Right”后输入下标,密钥标识码,CA路径,用户名称。
- 为保障密码模块密钥安全,增加指定密钥可访问的应用路径权限白名单配置,仅配置了路径权限的应用,才可调用SDF_GetPrivateKeyAccessRight获取内置密钥访问权限。路径必须与执行命令一致,支持相对路径和绝对路径。
- 当某个已配置白名单权限的应用路径被攻击,以错误密码连续尝试获取内置密钥访问权限次数达100时,该应用路径对该内置密钥的访问权限将被删除。
- 当连续失败次数达到500次时,认为密码模块处于攻击状态,将不可用,需通过恢复出厂设置清理所有密钥达到初始状态方可重新使用。
- 删除CA应用密钥访问权限演示。选择“Delete Access Right”后输入下标,密钥标识码,CA路径,用户名称。
- 恢复工厂设置演示。选择“Factory Reset”,会比较耗时,请耐心等待。
- 密钥创建演示。以用户密钥为例,选择Create Key -->User Key后输入下标和密码。
父主题: 软件部署