CryptImportPublicKeyInfoEx2-Funktion (wincrypt.h)

Die Funktion CryptImportPublicKeyInfoEx2 importiert einen öffentlichen Schlüssel in den asymmetrischen CNG-Anbieter, der dem Objektbezeichner des öffentlichen Schlüssels (Public Key Object Identifier, OID) entspricht, und gibt ein CNG-Handle an den Schlüssel zurück.

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 Antragstellers verwendet wurde. Der Bezeichner des Nachrichtencodierungstyps , der im hohen WORD-Wert dieses Werts enthalten ist, wird von dieser Funktion ignoriert.

Bei diesem Parameter kann es sich um den folgenden aktuell definierten Zertifikatcodierungstyp handeln.

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

[in] pInfo

Die Adresse einer CERT_PUBLIC_KEY_INFO-Struktur , die die Informationen zum öffentlichen Schlüssel 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 flag CRYPT_OID_PUBKEY_ENCRYPT_ONLY_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 flag CRYPT_OID_PUBKEY_SIGN_ONLY_FLAG gekennzeichnet sind.
 

Diese Flags werden im dwKeyType-Parameter der CryptFindOIDInfo-Funktion übergeben, wenn der Objektbezeichner des öffentlichen Schlüssels dem entsprechenden Bezeichner des öffentlichen CNG-Algorithmus 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, gibt sie null (FALSE) zurück. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten. Mögliche Fehlercodes sind u. a. folgende:

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

   
Unterstützte Mindestversion (Client) Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile wincrypt.h
Bibliothek Crypt32.lib
DLL Crypt32.dll

Weitere Informationen

CERT_PUBLIC_KEY_INFO