CryptImportKey

Aus API-Wiki
Wechseln zu: Navigation, Suche

Mit der Funktion CryptImportKey wird ein Schlüssel, der als Datenfeld vorliegt in den CSP importiert. Dies kann ein symmetrischer Schlüssel, ein öffentlicher asymmetrischer, oder ein privater asymmetrischer Schlüssel sein.

Declare Function CryptImportKey Lib "advapi32.dll" ( _
                 ByVal hProv As Long, _
                 ByRef pbData As Any, _
                 ByVal dwDataLen As Long, _
                 ByVal hPubKey As Long, _
                 ByVal dwFlags As Long, _
                 ByRef phKey As Long) As Long

Parameter

hProv

[in] Handle des CSPs ermittelt mit CryptAcquireContext.

pbData

[in] Zeiger auf die Schlüsseldaten.

dwDataLen

[in] Länge der Schlüsseldaten in Bytes.

hPubKey

[in] Wurden die Schlüsseldaten in pbData verschlüsselt (siehe CryptExportKey), so wird in diesem Parameter das Handle zu dem Schlüssel übergeben mit dem die Daten entschlüsselt werden können.

dwFlags

[in] Zusätzliche Optionen:
CRYPT_EXPORTABLE
CRYPT_OAEP
CRYPT_NO_SALT
CRYPT_USER_PROTECTED
CRYPT_IPSEC_HMAC_KEY

phKey

[out] Handle zu dem, aus den Daten erstellten Schlüssel.

Rückgabe(n)

Bei Erfolg wird ein Wert ungleich 0 zurückgegeben.

Anmerkung

Mit der Funktion CryptImportKey können sowohl symmetrische Schlüssel als auch asymmetrische Schlüssel importiert werden. Wird ein öffentlicher asymmetrischer Schlüssel importiert, so bleiben etwaige, im Schlüsselcontainer existierende asymmetrische private Schlüssel unverändert. Wird ein asymmetrischer privater Schlüssel importiert, so wird ein etwaiger im Schlüsselcontainer existierender Schlüssel zerstört und durch den importierten Schlüssel ersetzt.