CryptGenKey: Unterschied zwischen den Versionen

Aus API-Wiki
Wechseln zu: Navigation, Suche
(Parameter)
(Beispiel)
Zeile 37: Zeile 37:
 
     End If
 
     End If
 
</pre>
 
</pre>
 +
 +
Ein komplettes Beispiel zum Ver- und Entschlüsseln findet sich unter [[CryptDecrypt]]
  
 
[[Kategorie:Crypt Api]]
 
[[Kategorie:Crypt Api]]

Version vom 8. April 2007, 09:34 Uhr

Die Funktion CryptGenKey erstellt einen zufälligen Schlüssel zur Verschlüsselung von Daten.

Declare Function CryptGenKey Lib "advapi32.dll" ( _
                 ByVal hProv As Long, _
                 ByVal AlgID As Long, _
                 ByVal dwFlags As Long, _
                 ByRef phKey As Long) As Long


Parameter

phProv

[in] Handle zu einem CSP. Ein solches Handle wird mit CryptAcquireContext erzeugt.

AlgID

[in] Definiert den Verschlüsselungsalgorithmus für den der Schlüssel verwendet wird. Beispiele sind: CALG_AES_128 oder CALG_3DES_112

dwFlags

[in] Flags welche die Schlüsselerstellung weiter steuern, z.B. CRYPT_EXPORTABLE. Mittels der oberen 16 Bits kann ausserdem die gewünschte Schlüssellänge angegeben werden.

phKey

[out] In diesem Long Wert wird das Handle des erstellten Schlüssels zurückgegeben. Um den Schlüssel zu zerstören wird CryptDestroyKey verwendet.

Rückgabe(n)

Bei Erfolg wird ein Wert ungleich 0 zurückgegeben.


Beispiel

    Const CALG_RSA_SIGN As Long = (ALG_CLASS_SIGNATURE Or ALG_TYPE_RSA Or ALG_SID_RSA_ANY)

    If CryptGenKey(hCryptProv, CALG_RSA_SIGN, KeyLength * &H10000 Or _
            CRYPT_EXPORTABLE, hRsaKey) = 0 Then
        Err.Raise Err.LastDllError, , "CryptGenKey Error!"
    End If

Ein komplettes Beispiel zum Ver- und Entschlüsseln findet sich unter CryptDecrypt