本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
findKey
使用 key_mgmt_util 中的 findKey 命令可通过使用密钥属性的值来搜索密钥。当某个密钥与您设置的所有条件都匹配时,findKey 将返回密钥句柄。如果没有参数,findKey 将返回您可在 HSM 中使用的所有密钥的密钥句柄。要查找特定密钥的属性值,请使用 getAttribute。
与所有 key_mgmt_util 命令相似,findKey 是特定于用户的。它只会返回当前用户可在加密操作中使用的密钥。这包括当前用户拥有的密钥和已与当前用户共享的密钥。
在运行任何 key_mgmt_util 命令之前,您必须启动 key_mgmt_util 并以加密用户(CU)身份登录到 HSM。
语法
findKey -h findKey [-c
<key class>
] [-t<key type>
] [-l<key label>
] [-id<key ID>
] [-sess (0 | 1)] [-u<user-ids>
] [-m<modulus>
] [-kcv<key_check_value>
]
示例
这些示例演示了如何使用 findKey 查找和识别您的 HSM 中的密钥。
例 :查找所有密钥
此命令可查找 HSM 中当前用户的所有密钥。输出包含用户拥有和共享的密钥,以及 HSM 中的所有公有密钥。
要获取具有特定密钥句柄的密钥的属性,请使用 getAttribute。要确定当前用户是否拥有或共享特定密钥,请在 cloudhsm_mgmt_uti findAllKeysl 中使用getKeyInfo或。
Command:
findKey
Total number of keys present 13 number of keys matched from start index 0::12 6, 7, 524296, 9, 262154, 262155, 262156, 262157, 262158, 262159, 262160, 262161, 262162 Cluster Error Status Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 0 and err state 0x00000000 : HSM Return: SUCCESS Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
例 :按类型、用户和会话查找密钥
此命令用于查找当前用户和用户 3 可使用的持久性 AES 密钥。(用户 3 可能能够使用当前用户看不到的其他密钥。)
Command:
findKey -t 31 -sess 0 -u 3
例 :按类别和标签查找密钥
此命令可查找具有 2018-sept
标签的当前用户的所有公有密钥。
Command:
findKey -c 2 -l 2018-sept
例 :按 Modulus 查找 RSA 密钥
此命令可查找当前用户的 RSA 密钥 (类型 0),该密钥是通过使用 m4.txt
文件中的模数创建的。
Command:
findKey -t 0 -m m4.txt
参数
- -h
-
显示该命令的帮助信息。
必需:是
- -t
-
查找指定类型的密钥。输入表示密钥类别的常量。例如,要查找 3DES 密钥,请键入
-t 21
。有效值:
必需:否
- -c
-
查找指定类别中的密钥。输入表示密钥类别的常量。例如,要查找公有密钥,请键入
-c 2
。每种密钥类型的有效值如下:
-
2:公有。此类别包含公有私有密钥对的公有密钥。
-
3:私有。此类别包含公有私有密钥对的私有密钥。
-
4:机密。此类别包含所有对称密钥。
必需:否
-
- -l
-
查找具有指定标签的密钥。键入确切的标签。您不能在
--l
值中使用通配符或正则表达式。必需:否
- -id
-
查找具有指定 ID 的密钥。键入确切的 ID 字符串。您不能在
-id
值中使用通配符或正则表达式。必需:否
- -sess
-
按会话状态查找密钥。要查找仅在当前会话中有效的密钥,请键入
1
。要查找持久性密钥,请键入0
。必需:否
- -u
-
查找指定用户和当前用户共享的密钥。键入一个逗号分隔的 HSM 用户 ID 列表,例如
-u 3
或-u 4,7
。要查找 HSM 上的用户的 ID,请使用 listUsers。当您指定一个用户 ID 时,findKey 将返回该用户的密钥。当您指定多个用户 ID 时,findKey 将返回所有指定用户可使用的密钥。
由于 findKey 仅返回当前用户可使用的密钥,
-u
结果始终与当前用户的部分密钥相同。要获取任何用户拥有或与任何用户共享的所有密钥,加密官员 (CO) 可以findAllKeys在 cloudhsm_mgmt_util 中使用。必需:否
- -m
-
查找通过在指定文件中使用 RSA 模数创建的密钥。键入用于存储模数的文件的路径。
-m 表示包含待匹配 RSA 模块的二进制文件(可选)。
必需:否
- -kcv
-
查找具有指定密钥检查值的密钥。
密钥检查值 (KCV) 是 HSM 导入或生成密钥时所产生密钥的 3 字节哈希值或校验和。您也可以在 HSM 之外计算 KCV,例如导出密钥之后。然后,您可对比 KCV 值,以确认密钥的标识和完整性。若要获取密钥 KCV,请使用 getAttribute。
AWS CloudHSM 使用以下标准方法生成密钥检查值:
-
对称密钥:密钥加密零块结果的前 3 个字节。
-
非对称密钥对:公钥 SHA-1 哈希值的前 3 个字节。
-
HMAC 密钥:目前不支持 HMAC 密钥 KCV。
必需:否
-
输出
findKey 输出列出了匹配的密钥及其密钥句柄的总数。
Command: findKey Total number of keys present 10 number of keys matched from start index 0::9 6, 7, 8, 9, 10, 11, 262156, 262157, 262158, 262159 Cluster Error Status Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 2 and err state 0x00000000 : HSM Return: SUCCESS Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
相关 主题
-
findAllKeys在 cloudhsm_mgmt_util