本文介绍如何使用importPrivateKey命令在HSM上导入私钥。
功能说明
importPrivateKey命令将非对称私钥从文件导入到HSM。
HSM不允许以明文形式直接导入密钥,需要使用的AES对私有密钥进行加密,并在HSM中解密。
可借助exportPrivateKey命令和导入私钥命令importPrivateKey完成私钥的备份或迁移。
在运行此命令之前,必须启动key_mgmt_tool并以CU身份登录HSM。
语法
请按照下方语法输入参数,参数说明请参见参数。
importPrivateKey -l <label>
-f <key-file>
-w <wrapping-key-handle>
[-sess]
[-id <key-id>]
[-m_value <0...8>]
[min_srv <minimum-number-of-servers>]
[-timeout <number-of-seconds>]
[-u <user-ids>]
[-wk <wrapping-key-file>]
[-attest]
您必须按语法指定的顺序输入参数。
示例
本文以导入keypair.pem私钥文件,并生成一个标签为rsa2048-imported的密钥为例。其中用来加密私钥的密钥句柄为6,输出显示导入的私钥在HSM的句柄为17。
Command: importPrivateKey -f keypair.pem -l rsa2048-imported -w 6
BER encoded key length is 1218
Cfm3ImportWrapKey returned: 0x00 : HSM Return: SUCCESS
Cfm3CreateUnwrapTemplate2 returned: 0x00 : HSM Return: SUCCESS
Cfm3ImportUnWrapKey: 0x00 : HSM Return: SUCCESS
Private Key Imported. Key Handle: 17
Cluster Status:
Node id 0 status: 0x00000000 : HSM Return: SUCCESS
参数
参数名称 | 描述 | 是否必需 | 有效值 |
-f | 指定存储导入密钥的文件名。 | 是 | 无特殊要求 |
-w | 指定加密导入私钥的AES密钥句柄。 | 是 | 无特殊要求 |
-l | 指定导入密钥的标签。 | 是 | 无特殊要求 |
-id | 指定导入密钥的ID。 | 否 | 无特殊要求 |
-sess | 指定导入密钥作为会话密钥。 | 否 | 无特殊要求 |
-nex | 将密钥设置成不可导出。 | 否 | 无特殊要求 |
-u | 指定共享导入密钥的用户ID,如有多个用户请使用逗号分隔。 | 否 | 无特殊要求 |
-m_value | 指定可使用导入密钥的用户数量。 | 否 | 0~8 |
-attest | 对固件响应进行完整性检查。 | 否 | 无特殊要求 |
-min_srv |
| 否 | 无特殊要求 |
-timeout |
| 否 | 无特殊要求 |