ECDiffieHellmanCng.DeriveKeyFromHmac Metoda

Definice

Provádí odvozování klíčů pomocí zadaného algoritmu HMAC (hash-based Message Authentication Code) s volitelnými předřazením nebo připojenými daty.

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()

Parametry

otherPartyPublicKey
ECDiffieHellmanPublicKey

Veřejný klíč druhé strany.

hashAlgorithm
HashAlgorithmName

Hashovací algoritmus, který se má použít k odvození materiálu klíče.

hmacKey
Byte[]

Klíč pro HMAC.

secretPrepend
Byte[]

Hodnota, která se má předpendovat k odvozeným tajným kódům před hashováním.

secretAppend
Byte[]

Hodnota pro připojení k odvozeným tajným kódům před hashováním.

Návraty

Byte[]

HMAC sdíleného tajného kódu po předpřidání nebo připojení dat podle požadavku.

Výjimky

Křivka používaná nástrojem otherPartyPublicKey má jinou velikost než křivka z tohoto klíče.

-nebo-

Parametr hashAlgorithm neurčoval hodnotu hash.

otherPartyPublicKey je null.

Křivka používaná nástrojem otherPartyPublicKey se liší od křivky z tohoto klíče.

-nebo-

Tato instance představuje pouze veřejný klíč.

Platí pro