Freigeben über


CryptImportPublicKeyInfoEx2-Funktion (wincrypt.h)

Die CryptImportPublicKeyInfoEx2-Funktion importiert einen öffentlichen Schlüssel in den Asymmetrischen CNG-Anbieter, der dem öffentlichen SchlüsselObjektbezeichner (OID) entspricht und ein CNG-Handle an den Schlüssel zurückgibt.

Syntax

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

Parameter

[in] dwCertEncodingType

Der Zertifikatcodierungstyp, der zum Verschlüsseln des Betreffs verwendet wurde. Der Nachrichtencodierungstyp Bezeichners, der in der hohen WORD- dieses Werts enthalten ist, wird von dieser Funktion ignoriert.

Dieser Parameter kann der folgende aktuell definierte Zertifikatcodierungstyp sein.

Wert Bedeutung
X509_ASN_ENCODING
1 (0x1)
Gibt X.509 Zertifikatcodierung an.

[in] pInfo

Die Adresse einer CERT_PUBLIC_KEY_INFO-Struktur, die die öffentlichen Schlüsselinformationen enthält, die in den Anbieter importiert werden sollen.

[in] dwFlags

Eine Reihe von Flags, die das Verhalten dieser Funktion ändern. Dies kann null oder eine Kombination aus einem oder mehreren der folgenden Werte sein.

Wert Bedeutung
CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
Überspringt öffentliche Schlüssel in der gruppe CRYPT_PUBKEY_ALG_OID_GROUP_ID, die explizit mit dem CRYPT_OID_PUBKEY_ENCRYPT_ONLY_FLAG Flag gekennzeichnet sind.
CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
Überspringt öffentliche Schlüssel in der gruppe CRYPT_PUBKEY_ALG_OID_GROUP_ID, die explizit mit dem CRYPT_OID_PUBKEY_SIGN_ONLY_FLAG Flag gekennzeichnet sind.
 

Diese Flags werden im dwKeyType Parameter der CryptFindOIDInfo Funktion übergeben, wenn der Bezeichner des öffentlichen Schlüsselobjekts dem entsprechenden Bezeichner des öffentlichen CNG-Schlüsselalgorithmus zugeordnet wird.

[in] pvAuxInfo

Dieser Parameter ist für die zukünftige Verwendung reserviert und muss auf NULL-festgelegt werden.

[out] phKey

Die Adresse einer BCRYPT_KEY_HANDLE Variablen, die das Handle des importierten Schlüssels empfängt.

Wenn dieses Handle nicht mehr benötigt wird, müssen Sie es freigeben, indem Sie die funktion BCryptDestroyKey aufrufen.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion nonzero (TRUE) zurück.

Wenn die Funktion fehlschlägt, wird null (FALSE) zurückgegeben. Rufen Sie für erweiterte Fehlerinformationen GetLastError-auf. Mögliche Fehlercodes umfassen, aber nicht beschränkt auf Folgendes.

Rückgabecode Beschreibung
ERROR_FILE_NOT_FOUND
Eine Importfunktion, die installiert oder registriert werden kann, konnte für die angegebenen dwCertEncodingType und pInfo Parameter nicht gefunden werden.
E_INVALIDARG
Mindestens ein Parameter ist ungültig.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Vista [Desktop-Apps | UWP-Apps]
mindestens unterstützte Server- Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform- Fenster
Header- wincrypt.h
Library Crypt32.lib
DLL- Crypt32.dll

Siehe auch

CERT_PUBLIC_KEY_INFO