ECDiffieHellman.DeriveKeyFromHmac Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Provádí odvození klíče pomocí zadaného algoritmu HMAC (kód pro ověřování zpráv založený na hodnotě hash).
Přetížení
| Name | Description |
|---|---|
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[]) |
Při implementaci v odvozené třídě provede odvození klíče pomocí zadaného algoritmu HMAC (Hash-based Message Authentication Code) s volitelnými předpended nebo připojenými daty. |
| DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[]) |
Provádí odvození klíče pomocí zadaného algoritmu HMAC (kód pro ověřování zpráv založený na hodnotě hash). |
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
Při implementaci v odvozené třídě provede odvození klíče pomocí zadaného algoritmu HMAC (Hash-based Message Authentication Code) s volitelnými předpended nebo připojenými daty.
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()
Parametry
- otherPartyPublicKey
- ECDiffieHellmanPublicKey
Veřejný klíč druhé strany.
- hashAlgorithm
- HashAlgorithmName
Algoritmus hash, který se má použít k odvození klíčového materiálu.
- hmacKey
- Byte[]
Klíč pro HMAC.
- secretPrepend
- Byte[]
Před hodnotou odvozeného tajného kódu před hodnotou hash.
- secretAppend
- Byte[]
Hodnota, která se má před hashováním připojit k odvozeným tajným kódům.
Návraty
HMAC sdíleného tajného klíče po předpřipravení nebo připojení dat podle požadavku.
Výjimky
Odvozená třída musí tuto metodu přepsat.
Křivka použitá otherPartyPublicKey tímto klíčem má jinou velikost než křivka.
nebo
Parametr hashAlgorithm nezadává hodnotu hash.
otherPartyPublicKey je null.
Křivka použitá otherPartyPublicKey tímto klíčem se liší od křivky.
nebo
Tato instance představuje pouze veřejný klíč.
Poznámky
Tato metoda interně provádí smlouvu s klíčem Elliptic Curve Diffie-Hellman k vytvoření sdíleného tajného klíče (z).
Pokud hmacKey je null, návratová hodnota z této metody je výsledkem použití zadaného HMAC-HASH(z, secretPrepend || z || secretAppend) algoritmu HMAC, kde || označuje zřetězení. V opačném případě návratová hodnota z této metody je výsledkem HMAC-HASH(hmacKey, secretPrepend || z || secretAppend).
Pokud je hodnota secretPrepend nebo secretAppend je null, považují se za prázdná pole.
Platí pro
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[])
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
Provádí odvození klíče pomocí zadaného algoritmu HMAC (kód pro ověřování zpráv založený na hodnotě hash).
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()
Parametry
- otherPartyPublicKey
- ECDiffieHellmanPublicKey
Veřejný klíč druhé strany.
- hashAlgorithm
- HashAlgorithmName
Algoritmus hash, který se má použít k odvození klíčového materiálu.
- hmacKey
- Byte[]
Klíč pro HMAC.
Návraty
HMAC sdíleného tajného kódu.
Výjimky
Křivka použitá otherPartyPublicKey tímto klíčem má jinou velikost než křivka.
nebo
Parametr hashAlgorithm nezadává hodnotu hash.
otherPartyPublicKey je null.
Křivka použitá otherPartyPublicKey tímto klíčem se liší od křivky.
nebo
Tato instance představuje pouze veřejný klíč.
Poznámky
Toto přetížení volá metodu DeriveKeyFromHmac předanou null a připojující hodnoty.