PasswordDeriveBytes.CryptDeriveKey(String, String, Int32, Byte[]) Methode

Definition

Leitet einen kryptografischen Schlüssel vom Objekt ab PasswordDeriveBytes .

public:
 cli::array <System::Byte> ^ CryptDeriveKey(System::String ^ algname, System::String ^ alghashname, int keySize, cli::array <System::Byte> ^ rgbIV);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public byte[] CryptDeriveKey(string? algname, string? alghashname, int keySize, byte[] rgbIV);
public byte[] CryptDeriveKey(string algname, string alghashname, int keySize, byte[] rgbIV);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
member this.CryptDeriveKey : string * string * int * byte[] -> byte[]
member this.CryptDeriveKey : string * string * int * byte[] -> byte[]
Public Function CryptDeriveKey (algname As String, alghashname As String, keySize As Integer, rgbIV As Byte()) As Byte()

Parameter

algname
String

Der Algorithmusname, für den der Schlüssel abgeleitet werden soll.

alghashname
String

Der Name des Hashalgorithmus, der zum Ableiten des Schlüssels verwendet werden soll.

keySize
Int32

Die Größe des Schlüssels in Bits, der abgeleitet werden soll.

rgbIV
Byte[]

Der zu verwendende Initialisierungsvektor (IV), um den Schlüssel abzuleiten.

Gibt zurück

Byte[]

Der abgeleitete Schlüssel.

Attribute

Ausnahmen

Der keySize Parameter ist falsch.

-oder-

Der kryptografische Dienstanbieter (CSP) kann nicht erworben werden.

-oder-

Der algname Parameter ist kein gültiger Algorithmusname.

-oder-

Der alghashname Parameter ist kein gültiger Hashalgorithmusname.

Beispiele

Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die PasswordDeriveBytes Klasse bereitgestellt wird.


// Create the key and set it to the Key property
// of the TripleDESCryptoServiceProvider object.
// This example uses the SHA1 algorithm.
// Due to collision problems with SHA1, Microsoft recommends SHA256 or better.
tdes.Key = pdb.CryptDeriveKey("TripleDES", "SHA1", 192, tdes.IV);

' Create the key and set it to the Key property
' of the TripleDESCryptoServiceProvider object.
' This example uses the SHA1 algorithm.
' Due to collision problems with SHA1, Microsoft recommends SHA256 or better.
tdes.Key = pdb.CryptDeriveKey("TripleDES", "SHA1", 192, tdes.IV)

Hinweise

Diese Funktion ist ein Wrapper für die Crypto-API-Funktion CryptDeriveKey(), und soll die Interoperabilität mit Anwendungen mit der Crypto-API anbieten.

Wenn der keySize Parameter auf 0 Bit festgelegt ist, wird die Standardschlüsselgröße für den angegebenen Algorithmus verwendet.

Gilt für:

Weitere Informationen