NCryptVerifySignature 使用密钥存储提供商 (KSP) - AWS CloudHSM

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

NCryptVerifySignature 使用密钥存储提供商 (KSP)

NCryptVerifySignature函数确认签名是否与指定的哈希值匹配。

参数

hKey[输入]

用于解密签名的密钥句柄。您必须使用密钥对中用于对数据进行签名的公钥部分NCryptSignHash

pPaddingInfo[输入,可选]

指向包含填充信息的结构的指针。结构类型取决于dwFlags值。仅对非对称密钥使用此参数;对于其他密钥类型,请将其设置为 NULL。

pbHashValue[输入]

指向包含待签哈希值的缓冲区的指针。使用指定缓冲区大小cbHashValue

cbHashValue[输入]

pbHashValue缓冲区的大小(以字节为单位)。

pbSignature[出局]

包含数据签名哈希值的缓冲区的地址。NCryptSignHash用于创建此签名。使用指定缓冲区大小cbSignature

cbSignature[输入]

pbSignature缓冲区的大小(以字节为单位)。NCryptSignHash用于创建签名。

dwFlags[输入]

用于修改函数行为的标志。允许的标志取决于您的密钥类型。使用以下值之一:

含义

NCRYPT_PAD_ _FLAG PKCS1

表示使用 PKCS1 填充的签名。设置pPaddingInfo为指向BCRYPT_PKCS1_PADDING_INFO结构。

NCRYPT_PAD_PSS_FLAG

表示使用概率签名方案 (PSS) 填充的签名。设置 pPaddingInfo为指向BCRYPT_PSS_PADDING_INFO结构。

NCRYPT_SILENT_FLAG

此标志无效。

返回值

该函数返回指示成功或失败的状态码。

常见的返回码包括:

返回代码 描述

错误_成功

操作成功完成。

NTE_INVALID_PARAMETER

一个或多个参数无效。

NTE_FAIL

操作无法完成。

NTE_INVALID_HANDLE

中的句柄hKey无效。

NTE_BAD_FLAGS

dwFlags参数包含无效值。

NTE_BAD_SIGNATURE

签名未经过验证。

NTE_BAD_KEY_STATE

密钥状态无效。

NTE_INTERNAL_ERROR

验证签名时发生内部错误。