本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 KMU 导出私 AWS CloudHSM 钥
使用 AWS CloudHSM key_mgmt_util 中的exportPrivateKey命令将非对称私钥从硬件安全模块 (HSM) 导出到文件中。HSM 不允许以明文形式直接导出密钥。该命令使用您指定的 AES 包装私钥,解密包装后的字节,然后将明文私钥复制到文件中。
exportPrivateKey 命令不会从 HSM 中删除此密钥,不会更改其密钥属性,也不会阻止您将密钥用于将来的加密操作。您可以多次导出相同的密钥。
您只能导出 OBJ_ATTR_EXTRACTABLE
属性值为 1
的私有密钥。必须指定具有 OBJ_ATTR_WRAP
和 OBJ_ATTR_DECRYPT
属性值 1
的 AES 包装密钥。要查找密钥的属性,请使用 getAttribute 命令。
在运行任何 key_mgmt_util 命令之前,您必须启动 key_mgmt_util 并以加密用户(CU)身份登录到 HSM。
语法
exportPrivateKey -h exportPrivateKey -k
<private-key-handle
-w<wrapping-key-handle>
-out<key-file>
[-m<wrapping-mechanism>
] [-wk<wrapping-key-file>
]
示例
此示例显示了如何使用 exportPrivateKey 将私有密钥导出 HSM。
例 :导出私有密钥
此命令使用具有 16
句柄的包装密钥,将具有 15
句柄的私有密钥导出到名为 exportKey.pem
的 PEM 文件。当该命令成功时,exportPrivateKey 将返回成功消息。
Command:
exportPrivateKey -k 15 -w 16 -out exportKey.pem
Cfm3WrapKey returned: 0x00 : HSM Return: SUCCESS Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS PEM formatted private key is written to exportKey.pem
参数
此命令采用以下参数。
-h
-
显示该命令的命令行帮助。
必需:是
-k
-
指定要导出的私有密钥的密钥句柄。
必需:是
-w
-
指定包装密钥的密钥句柄。此参数为必需参数。要查找密钥句柄,请使用 findKey 命令。
要确定密钥是否可用作包装密钥,请使用 getAttribute 获取
OBJ_ATTR_WRAP
属性 (262) 的值。要创建包装密钥,请使用 genSymKey 创建 AES 密钥(类型 31)。如果您使用
-wk
参数指定外部解开包装密钥,则-w
包装密钥用于在导出过程中包装密钥而不是将其解开包装。必需:是
-out
-
指定要将导出的私有密钥写入的文件的名称。
必需:是
-m
-
指定包装机制来包装正在导出的私有密钥。唯一有效值为
4
,它表示NIST_AES_WRAP mechanism.
默认值:4 (
NIST_AES_WRAP
)必需:否
-wk
-
指定用于解开正在导出的密钥包装的密钥。输入包含明文 AES 密钥的文件的路径和名称。
当您包含此参数时,exportPrivateKey 使用
-w
文件中的密钥包装导出的密钥,并使用由-wk
参数指定的密钥对导入的密钥解开包装。默认值:使用
-w
参数中指定的包装密钥包装和解开包装。必需:否