Поделиться через


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

Функция CryptImportPublicKeyInfoEx 2 импортирует открытый ключ в поставщик асимметричных ключей 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 dwKeyType функции CryptFindOIDInfo при сопоставлении идентификатора объекта открытого ключа с соответствующим идентификатором алгоритма открытого ключа CNG.

[in] pvAuxInfo

Этот параметр зарезервирован для дальнейшего использования и должен иметь значение NULL.

[out] phKey

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

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

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

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

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

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [классические приложения | Приложения UWP]
минимальный поддерживаемый сервер Windows Server 2008 [классические приложения | Приложения UWP]
целевая платформа Виндоус
заголовка wincrypt.h
библиотеки Crypt32.lib
DLL Crypt32.dll

См. также

CERT_PUBLIC_KEY_INFO