Функция CryptImportPublicKeyInfoEx2 (wincrypt.h)

Функция CryptImportPublicKeyInfoEx2 импортирует открытый ключ в асимметричный поставщик CNG, соответствующий идентификатору объектаоткрытого ключа (OID), и возвращает дескриптор CNG в ключ.

Синтаксис

BOOL CryptImportPublicKeyInfoEx2(
  [in]  DWORD                 dwCertEncodingType,
  [in]  PCERT_PUBLIC_KEY_INFO pInfo,
  [in]  DWORD                 dwFlags,
  [in]  void                  *pvAuxInfo,
  [out] BCRYPT_KEY_HANDLE     *phKey
);

Параметры

[in] dwCertEncodingType

Тип кодирования сертификата, который использовался для шифрования субъекта. Эта функция игнорирует идентификатор типа кодирования сообщений , содержащийся в высоком значении WORD .

Этот параметр может быть следующим определенным в настоящее время типом кодирования сертификата.

Значение Значение
X509_ASN_ENCODING
1 (0x1)
Задает кодировку сертификата X.509 .

[in] pInfo

Адрес структуры CERT_PUBLIC_KEY_INFO , содержащей сведения о открытом ключе для импорта в поставщик.

[in] dwFlags

Набор флагов, которые изменяют поведение этой функции. Это может быть ноль или сочетание одного или нескольких из следующих значений.

Значение Значение
CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
Пропускает открытые ключи в группе CRYPT_PUBKEY_ALG_OID_GROUP_ID, которые явно помечены флагом CRYPT_OID_PUBKEY_ENCRYPT_ONLY_FLAG.
CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
Пропускает открытые ключи в группе CRYPT_PUBKEY_ALG_OID_GROUP_ID, которые явно помечены флагом CRYPT_OID_PUBKEY_SIGN_ONLY_FLAG.
 

Эти флаги передаются в параметре dwKeyType функции CryptFindOIDInfo при сопоставлении идентификатора объекта открытого ключа с соответствующим идентификатором алгоритма открытого ключа CNG.

[in] pvAuxInfo

Этот параметр зарезервирован для использования в будущем и должен иметь значение NULL.

[out] phKey

Адрес переменной BCRYPT_KEY_HANDLE , которая получает дескриптор импортированного ключа.

Если этот дескриптор больше не нужен, его необходимо освободить, вызвав функцию BCryptDeographyKey .

Возвращаемое значение

Если функция выполняется успешно, функция возвращает ненулевое значение (TRUE).

Если функция завершается сбоем, она возвращает ноль (FALSE). Чтобы получить дополнительные сведения об ошибке, вызовите Метод GetLastError. Возможные коды ошибок включают, помимо прочего, следующие.

Код возврата Описание
ERROR_FILE_NOT_FOUND
Не удалось найти функцию импорта, которую можно установить или зарегистрировать для указанных параметров dwCertEncodingType и pInfo .
E_INVALIDARG
Один или несколько параметров недопустимы.

Требования

   
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header wincrypt.h
Библиотека Crypt32.lib
DLL Crypt32.dll

См. также раздел

CERT_PUBLIC_KEY_INFO