Функция 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 |
Header | wincrypt.h |
Библиотека | Crypt32.lib |
DLL | Crypt32.dll |