CryptFindCertificateKeyProvInfo 函数 (wincrypt.h)
CryptFindCertificateKeyProvInfo 函数枚举加密提供程序及其容器,以查找与证书公钥对应的私钥。
语法
BOOL CryptFindCertificateKeyProvInfo(
[in] PCCERT_CONTEXT pCert,
[in] DWORD dwFlags,
[in] void *pvReserved
);
参数
[in] pCert
指向导出公钥信息时要使用的证书 CERT_CONTEXT 结构的指针。
[in] dwFlags
一组标志,用于修改此函数的行为。 这可以是零个值,也可以是以下值之一。
以下标志确定使用哪种技术来获取密钥。 如果这些标志都不存在,则此函数将仅尝试使用 CryptoAPI 获取密钥。
Windows Server 2003 和 Windows XP: 不支持这些标志。
[in] pvReserved
保留以供将来使用,必须为 NULL。
返回值
如果函数在搜索的容器中找到与证书公钥相对应的私钥,则为 TRUE;如果函数在容器中找不到容器或私钥,则为 FALSE。
GetLastError 返回以下错误:
返回代码 | 说明 |
---|---|
|
找不到容器。 |
注解
此函数枚举加密提供程序及其容器,以查找与证书公钥对应的 私钥。 对于匹配项, 函数更新证书的 CERT_KEY_PROV_INFO_PROP_ID 属性。 如果已设置 CERT_KEY_PROV_INFO_PROP_ID ,则检查它以确定它是否与提供程序的公钥匹配。 对于匹配,函数将跳过前面提到的 枚举。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | wincrypt.h |
Library | Crypt32.lib |
DLL | Crypt32.dll |