使用 AWS CloudHSM KMU 验证文件的签名
使用 AWS CloudHSM key_mgmt_util 中的 verify 命令来确认文件是否已由给定的密钥签名。要执行此操作,verify 命令将签名文件与源文件进行比较,并根据给定的公有密钥和签名机制分析它们是否与加密相关。AWS CloudHSM 中的文件可通过 sign 操作签名。
签名机制用参数部分中列出的整数表示。
在运行任何 key_mgmt_util 命令之前,您必须启动 key_mgmt_util 并以加密用户(CU)身份登录到 HSM。
语法
verify -h verify -f
<message-file>
-s<signature-file>
-k<public-key-handle>
-m<signature-mechanism>
示例
这些示例演示如何使用 verify 检查特定公有密钥是否用于对给定文件签名。
例 :验证文件签名
此命令尝试使用 SHA256_RSA_PKCS
签名机制验证名为 hardwarCert.crt
的文件是否通过公有密钥 262276
签名,以生成 hardwareCertSigned
签名文件。由于给定参数表示一个真正的签名关系,所以命令会返回成功消息。
Command:
verify -f hardwareCert.crt -s hardwareCertSigned -k 262276 -m 1
Signature verification successful Cfm3Verify returned: 0x00 : HSM Return: SUCCESS
例 :证明为错误的签名关系
此命令使用 SHA256_RSA_PKCS
签名机制验证名为 hardwareCert.crt
的文件是否通过公有密钥 262276
签名,以生成 userCertSigned
签名文件。由于给定参数不构成真正的签名关系,所以命令会返回错误消息。
Command:
verify -f hardwarecert.crt -s usercertsigned -k 262276 -m 1
Cfm3Verify returned: 0x1b CSP Error: ERR_BAD_PKCS_DATA
参数
此命令采用以下参数。
-f
-
原始消息文件的名称。
必需:是
-s
-
签名文件名称。
必需:是
-k
-
公有密钥的句柄会被认为用于对文件签名。
必需:是
-m
-
表示建议签名机制的一个整数,用于对文件签名。可能的机制对应于以下整数:
签名机制
对应整数
SHA1_RSA_PKCS
0
SHA256_RSA_PKCS
1
SHA384_RSA_PKCS
2
SHA512_RSA_PKCS
3
SHA224_RSA_PKCS
4
SHA1_RSA_PKCS_PSS
5
SHA256_RSA_PKCS_PSS
6
SHA384_RSA_PKCS_PSS
7
SHA512_RSA_PKCS_PSS
8
SHA224_RSA_PKCS_PSS
9
ECDSA_SHA1
15
ECDSA_SHA224
16
ECDSA_SHA256
17
ECDSA_SHA384
18
ECDSA_SHA512
19
必需:是