在 CloudHSM CLI 中验证使用 HashEd DSA 机制签名的签名 - AWS CloudHSM

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 CloudHSM CLI 中验证使用 HashEd DSA 机制签名的签名

重要

HashEd仅在非 FIPS 模式下的 hsm2m.medium 实例上支持 DSA 签名验证操作。

使用 CloudHSM CLI 中的 crypto verify ed25519ph 命令完成以下操作:

  • 使用给定的 Ed25519 公钥验证数据或文件的签名。

  • 确认签名是使用 HashEd DSA 签名机制生成的。有关 HashEd DSA 的更多信息,请参阅 NIST SP 186-5,第 7.8 节。

要使用该crypto verify ed25519ph命令,您的集群中必须首先有一个 Ed25519 公钥。 AWS CloudHSM 您可以使用curve参数设置为、属性设置为的使用 CloudHSM CLI 生成非对称 EC 密钥对命令生成 Ed25519 密钥对true,也可以使用verify属性设置为的使用 CloudHSM CLI 导入 PEM 格式密钥命令导入 Ed25519 公钥。ed25519 verify true

注意

您可以使用 CloudHSM CLI 中的 crypto sign 类别 子命令在 CloudHSM CLI 中生成签名。

用户类型

以下类型的用户均可运行此命令。

  • 加密用户 (CUs)

要求

  • 要运行此命令,必须以 CU 身份登录。

  • HashEd仅在非 FIPS 模式下的 hsm2m.medium 实例上支持 DSA 签名验证操作。

语法

aws-cloudhsm > help crypto verify ed25519ph Verify with the Ed25519ph mechanism Usage: crypto verify ed25519ph [OPTIONS] --key-filter [<KEY_FILTER>...] --data-type <DATA_TYPE> --hash-function <HASH_FUNCTION> <--data-path <DATA_PATH>|--data <DATA>> <--signature-path <SIGNATURE_PATH>|--signature <SIGNATURE>> 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 --key-filter [<KEY_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 matching key --data-path <DATA_PATH> The path to the file containing the data to be verified --data <DATA> Base64 encoded data to be verified --signature-path <SIGNATURE_PATH> The path to where the signature is located --signature <SIGNATURE> Base64 encoded signature to be verified --data-type <DATA_TYPE> The type of data passed in, either raw or digest [possible values: raw, digest] --hash-function <HASH_FUNCTION> Hash function [possible values: sha512] -h, --help Print help

示例

这些示例说明如何使用crypto verify ed25519ph来验证使用 ed25519ph 签名机制和哈希函数生成的签名。sha512此命令在 HSM 中使用 Ed25519 公钥。

例示例:使用 Base64 编码的数据验证 Base64 编码的签名
aws-cloudhsm > crypto verify ed25519ph \ --hash-function sha512 \ --key-filter attr.label=ed25519-public \ --data-type raw \ --data YWJj \ --signature mKcCIvC4Ehqp0w+BPWg/gJ5GK0acf/h2OUmbuU5trkEx+FBCRjwqNVogA9BirfWqoQuMYeY2Biqq0RwqJgg0Bg== { "error_code": 0, "data": { "message": "Signature verified successfully" } }
例示例:使用数据文件验证签名文件
aws-cloudhsm > crypto verify ed25519ph \ --hash-function sha512 \ --key-filter attr.label=ed25519-public \ --data-type raw \ --data-path data.txt \ --signature-path signature-file { "error_code": 0, "data": { "message": "Signature verified successfully" } }

参数

<CLUSTER_ID>

要运行此操作的集群的 ID。

必需:如果已配置多个集群。

<DATA>

需要验证的 Base64 编码数据。

必需:是(除非通过数据路径提供)

<DATA_PATH>

指定要验证的数据的位置。

必填项:是(除非通过数据参数提供)

<HASH_FUNCTION>

指定哈希函数。ed25519pH 仅支持。 SHA512

有效值:

  • sha512

是否必需:是

<KEY_FILTER>

密钥引用(例如 key-reference=0xabc)或空格分隔的密钥属性列表,采用 attr.KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE 形式,可选择匹配密钥。

有关支持的 CloudHSM CLI 密钥属性的列表,请参阅。CloudHSM CLI 的密钥属性

是否必需:是

<SIGNATURE>

Base64 编码的签名。

必需:是(除非通过签名路径提供)

<SIGNATURE_PATH>

指定签名的位置。

必填项:是(除非通过签名参数提供)

<DATA_TYPE>

指定是否应将数据参数的值作为验证算法的一部分进行哈希处理。raw 用于未经过哈希处理的数据;digest 用于已经过哈希处理的摘要。

有效值:

  • raw

  • 摘要

是否必需:是

相关主题