IX509CertificateRequestCmc2::CheckSignature 方法 (certenroll.h)

CheckSignature 方法验证证书请求是否已签名以及签名是否有效。

语法

HRESULT CheckSignature(
  [in] Pkcs10AllowedSignatureTypes AllowedSignatureTypes
);

参数

[in] AllowedSignatureTypes

Pkcs10AllowedSignatureTypes 枚举中的值。 这可以是以下值的按位组合。

含义
AllowedKeySignature
允许使用非对称密钥生成的签名。 如果设置了此标志,则会根据内部 PKCS #10 请求中的公钥验证签名。 这是默认标志。
AllowedNullSignature
允许使用 Null 签名的签名。

返回值

如果函数成功,该函数将返回 S_OK

如果函数失败,它将返回指示错误的 HRESULT 值。 可能的值包括(但并不限于)下表中的项。 有关常见错误代码的列表,请参阅 常见 HRESULT 值

返回代码 说明
CRYPT_E_NO_SIGNER
尚未对证书请求进行签名。
ERROR_INVALID_STATE
签名类型不是由 AllowedSignatureTypes 参数指定的。
NTE_BAD_SIGNATURE
AllowedSignatureTypes 参数指定的值不是 Pkcs10AllowedSignatureTypes 枚举类型的成员。

注解

此方法使用公钥解密签名,并将签名与证书请求的哈希进行比较。

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 certenroll.h

另请参阅

IX509CertificateRequestCmc2