Freigeben über


ECDiffieHellman.DeriveKeyFromHmac Methode

Definition

Führt die Schlüsselableitung mithilfe eines angegebenen HMAC-Algorithmus (Hash-based Message Authentication Code, Hash-Nachrichtenauthentifizierungscode) aus.

Überlädt

DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])

Führt die Schlüsselableitung bei der Implementierung in einer abgeleiteten Klasse mithilfe eines angegebenen HMAC-Algorithmus (Hash-based Message Authentication Code, Hash-Nachrichtenauthentifizierungscode) mit optionalen vorangestellten oder angefügten Daten aus.

DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[])

Führt die Schlüsselableitung mithilfe eines angegebenen HMAC-Algorithmus (Hash-based Message Authentication Code, Hash-Nachrichtenauthentifizierungscode) aus.

DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])

Quelle:
ECDiffieHellman.cs
Quelle:
ECDiffieHellman.cs
Quelle:
ECDiffieHellman.cs

Führt die Schlüsselableitung bei der Implementierung in einer abgeleiteten Klasse mithilfe eines angegebenen HMAC-Algorithmus (Hash-based Message Authentication Code, Hash-Nachrichtenauthentifizierungscode) mit optionalen vorangestellten oder angefügten Daten aus.

public:
 virtual cli::array <System::Byte> ^ DeriveKeyFromHmac(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, cli::array <System::Byte> ^ hmacKey, cli::array <System::Byte> ^ secretPrepend, cli::array <System::Byte> ^ secretAppend);
public virtual byte[] DeriveKeyFromHmac (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? hmacKey, byte[]? secretPrepend, byte[]? secretAppend);
public virtual byte[] DeriveKeyFromHmac (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] hmacKey, byte[] secretPrepend, byte[] secretAppend);
abstract member DeriveKeyFromHmac : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] * byte[] -> byte[]
override this.DeriveKeyFromHmac : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] * byte[] -> byte[]
Public Overridable Function DeriveKeyFromHmac (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName, hmacKey As Byte(), secretPrepend As Byte(), secretAppend As Byte()) As Byte()

Parameter

otherPartyPublicKey
ECDiffieHellmanPublicKey

Der öffentliche Schlüssel der anderen Partei.

hashAlgorithm
HashAlgorithmName

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

hmacKey
Byte[]

Der Schlüssel für den HMAC.

secretPrepend
Byte[]

Ein Wert, der dem abgeleiteten geheimen Schlüssel vor dem Hashverfahren vorangestellt wird.

secretAppend
Byte[]

Ein Wert, der dem abgeleiteten geheimen Schlüssel vor dem Hashverfahren angefügt wird.

Gibt zurück

Byte[]

Der HMAC des gemeinsamen geheimen Schlüssels nach dem Voranstellen oder Anfügen von Daten wie angefordert.

Ausnahmen

Eine abgeleitete Klasse muss diese Methode überschreiben.

Die von otherPartyPublicKey verwendete Kurve hat eine andere Größe als die Kurve aus diesem Schlüssel.

- oder -

Der hashAlgorithm-Parameter gibt keinen Hash an.

otherPartyPublicKey ist null.

Die von otherPartyPublicKey verwendete Kurve unterscheidet sich von der Kurve aus diesem Schlüssel.

- oder -

Diese Instanz stellt nur einen öffentlichen Schlüssel dar.

Hinweise

Diese Methode führt intern die Elliptische Kurve Diffie-Hellman Schlüsselvereinbarung aus, um das freigegebene Geheimnisz () zu erzeugen.

Wenn hmacKey ist , ist nullder Rückgabewert dieser Methode das Ergebnis der Verwendung des HMAC-HASH(z, secretPrepend || z || secretAppend) angegebenen HMAC-Algorithmus, wobei || eine Verkettung bedeutet. Andernfalls ist der Rückgabewert dieser Methode das Ergebnis von HMAC-HASH(hmacKey, secretPrepend || z || secretAppend).

Wenn der Wert von secretPrepend oder secretAppend ist null, werden sie als leere Arrays behandelt.

Gilt für:

DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[])

Quelle:
ECDiffieHellman.cs
Quelle:
ECDiffieHellman.cs
Quelle:
ECDiffieHellman.cs

Führt die Schlüsselableitung mithilfe eines angegebenen HMAC-Algorithmus (Hash-based Message Authentication Code, Hash-Nachrichtenauthentifizierungscode) aus.

public:
 cli::array <System::Byte> ^ DeriveKeyFromHmac(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, cli::array <System::Byte> ^ hmacKey);
public byte[] DeriveKeyFromHmac (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? hmacKey);
public byte[] DeriveKeyFromHmac (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] hmacKey);
member this.DeriveKeyFromHmac : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] -> byte[]
Public Function DeriveKeyFromHmac (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName, hmacKey As Byte()) As Byte()

Parameter

otherPartyPublicKey
ECDiffieHellmanPublicKey

Der öffentliche Schlüssel der anderen Partei.

hashAlgorithm
HashAlgorithmName

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

hmacKey
Byte[]

Der Schlüssel für den HMAC.

Gibt zurück

Byte[]

Der HMAC des gemeinsamen geheimen Schlüssels.

Ausnahmen

Die von otherPartyPublicKey verwendete Kurve hat eine andere Größe als die Kurve aus diesem Schlüssel.

- oder -

Der hashAlgorithm-Parameter gibt keinen Hash an.

otherPartyPublicKey ist null.

Die von otherPartyPublicKey verwendete Kurve unterscheidet sich von der Kurve aus diesem Schlüssel.

- oder -

Diese Instanz stellt nur einen öffentlichen Schlüssel dar.

Hinweise

Diese Überladung ruft die -Methode auf, die DeriveKeyFromHmac als Vorab- und Anfügewerte übergeben null wird.

Gilt für: