ECDiffieHellmanCng.DeriveKeyFromHmac Methode

Definitie

Voert belangrijke afleiding uit met behulp van een opgegeven HMAC-algoritme (Hash-based Message Authentication Code) met optionele voor- of toevoeggegevens.

public:
 override 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 override byte[] DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? hmacKey, byte[]? secretPrepend, byte[]? secretAppend);
public override byte[] DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] hmacKey, byte[] secretPrepend, byte[] secretAppend);
override this.DeriveKeyFromHmac : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] * byte[] -> byte[]
Public Overrides Function DeriveKeyFromHmac (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName, hmacKey As Byte(), secretPrepend As Byte(), secretAppend As Byte()) As Byte()

Parameters

otherPartyPublicKey
ECDiffieHellmanPublicKey

De openbare sleutel van de andere partij.

hashAlgorithm
HashAlgorithmName

Het hash-algoritme dat moet worden gebruikt om het sleutelmateriaal af te leiden.

hmacKey
Byte[]

De sleutel voor de HMAC.

secretPrepend
Byte[]

Een waarde die moet worden voorafgegaan aan het afgeleide geheim voordat er een hash wordt uitgevoerd.

secretAppend
Byte[]

Een waarde die moet worden toegevoegd aan het afgeleide geheim voordat de hash wordt gehasht.

Retouren

Byte[]

De HMAC van het gedeelde geheim na het voorbereiden of toevoegen van gegevens zoals aangevraagd.

Uitzonderingen

De curve die door wordt otherPartyPublicKey gebruikt, heeft een andere grootte dan de curve van deze sleutel.

– of –

De hashAlgorithm parameter geeft geen hash op.

otherPartyPublicKey is null.

De curve die door otherPartyPublicKey wordt gebruikt, verschilt van de curve van deze sleutel.

– of –

Dit exemplaar vertegenwoordigt alleen een openbare sleutel.

Van toepassing op