使用 CloudHSM CLI 通过 RSA-AES 解包密钥
使用 CloudHSM CLI 中的 key wrap rsa-aes 命令通过硬件安全模块(HSM)上的 RSA 公有密钥和 RSA-AES 包装机制包装有效载荷密钥。有效载荷密钥的 extractable
属性必须设置为 true
。
只有密钥的所有者(即创建密钥的加密用户(CU))才能包装密钥。共享密钥的用户可以使用该密钥进行加密操作。
要使用 key wrap rsa-aes 命令,您的 AWS CloudHSM 集群中必须首先有一个 RSA 密钥。您可以使用 CloudHSM CLI 中的 generate-asymmetric-pair 类别 命令并将 wrap
属性设置为 true
来生成 RSA 密钥对。
用户类型
以下类型的用户均可运行此命令。
-
加密用户(CU)
要求
-
要运行此命令,必须以 CU 身份登录。
语法
aws-cloudhsm >
help key wrap rsa-aes
Usage: key wrap rsa-aes [OPTIONS] --payload-filter [
<PAYLOAD_FILTER>
...] --wrapping-filter [<WRAPPING_FILTER>
...] --hash-function<HASH_FUNCTION>
--mgf<MGF>
Options: --cluster-id<CLUSTER_ID>
Unique Id to choose which of the clusters in the config file to run the operation against. If not provided, will fall back to the value provided when interactive mode was started, or error --payload-filter [<PAYLOAD_FILTER>
...] Key reference (e.g. key-reference=0xabc) or space separated list of key attributes in the form of attr.KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE to select a payload key --wrapping-filter [<WRAPPING_FILTER>
...] Key reference (e.g. key-reference=0xabc) or space separated list of key attributes in the form of attr.KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE to select a wrapping key --path<PATH>
Path to the binary file where the wrapped key data will be saved --hash-function<HASH_FUNCTION>
Hash algorithm [possible values: sha1, sha224, sha256, sha384, sha512] --mgf<MGF>
Mask Generation Function algorithm [possible values: mgf1-sha1, mgf1-sha224, mgf1-sha256, mgf1-sha384, mgf1-sha512] -h, --help Print help
示例
此示例展示了如何通过 RSA 公有密钥使用 key wrap rsa-ae 命令并将 wrap
属性值设置为 true
。
aws-cloudhsm >
key wrap rsa-aes --payload-filter attr.label=payload-key --wrapping-filter attr.label=rsa-public-key-example --hash-function sha256 --mgf mgf1-sha256
{ "error_code": 0, "data": { "payload-key-reference": "0x00000000001c08f1", "wrapping-key-reference": "0x00000000007008da", "wrapped-key-data": "HrSE1DEyLjIeyGdPa9R+ebiqB5TIJGyamPker31ZebPwRA+NcerbAJO8DJ1lXPygZcI21vIFSZJuWMEiWpe1R9D/5WSYgxLVKex30xCFqebtEzxbKuv4DOmU4meSofqREYvtb3EoIKwjyxCMRQFgoyUCuP4y0f0eSv0k6rSJh4NuCsHptXZbtgNeRcR4botN7LlzkEIUcq4fVHaatCwd0J1QGKHKyRhkol+RL5WGXKe4nAboAkC5GO7veI5yHL1SaKlssSJtTL/CFpbSLsAFuYbv/NUCWwMY5mwyVTCSlw+HlgKK+5TH1MzBaSi8fpfyepLT8sHy2Q/VRl6ifb49p6m0KQFbRVvz/OWUd6l4d97BdgtaEz6ueg==" } }
参数
<CLUSTER_ID>
-
要运行此操作的集群的 ID。
必需:如果已配置多个集群。
<PAYLOAD_FILTER>
-
密钥引用(例如
key-reference=0xabc
)或空格分隔的密钥属性列表,采用attr.KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE
形式,可选择有效载荷密钥。必需:是
<PATH>
-
保存包装密钥数据的二进制文件的路径。
必需:否
<WRAPPING_FILTER>
-
密钥引用(例如
key-reference=0xabc
)或空格分隔的密钥属性列表,采用attr.KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE
形式,可选择包装密钥。必需:是
<MGF>
-
指定掩码生成函数。
注意
掩码生成函数哈希函数必须与签名机制哈希函数相匹配。
有效值
mgf1-sha1
mgf1-sha224
mgf1-sha256
mgf1-sha384
mgf1-sha512
必需:是