IX509SignatureInformation::GetSignatureAlgorithm 方法 (certenroll.h)

GetSignatureAlgorithm 方法检索签名算法对象标识符 (OID)。

Syntax

HRESULT GetSignatureAlgorithm(
  [in]  VARIANT_BOOL Pkcs7Signature,
  [in]  VARIANT_BOOL SignatureKey,
  [out] IObjectId    **ppValue
);

参数

[in] Pkcs7Signature

一个VARIANT_BOOL变量,指定该算法是用于对 PKCS #7 还是 CMC 证书请求进行签名。

[in] SignatureKey

一个VARIANT_BOOL变量,该变量指定当算法 OID 与多个用途关联时,是否首选仅用于签名的算法。 例如,XCN_OID_RSA_RSA(1.2.840.113549.1.1.1)可用于签名和密钥交换。

[out] ppValue

接收指向表示算法 OID 的 IObjectId 接口的指针的变量的地址。

返回值

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

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

返回代码/值 Description
CERTSRV_E_PROPERTY_EMPTY
尚未指定哈希算法 OID 或 NullSigned 属性,但找不到签名算法 OID。
CRYPT_E_UNKNOWN_ALGO
找不到组合签名算法。

注解

此方法搜索与输入参数一致的缓存签名算法。 如果找不到任何值,该方法将使用输入参数以及分配给各种 IX509SignatureInformation 属性的值,如以下列表所示。

要求

Requirement 价值
最低支持的客户端 Windows Vista [仅限桌面应用]
支持的最低服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows操作系统
Header certenroll.h
DLL CertEnroll.dll

另请参阅

IX509SignatureInformation