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í odvozování klíčů pomocí zadaného algoritmu HMAC (Hash-based Message Authentication Code) algoritmus.
Přetížení
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[]) |
Při implementaci v odvozené třídě provádí odvození klíčů pomocí zadaného algoritmu HMAC (Hash-based Message Authentication Code) s volitelnými předřazením nebo připojenými daty. |
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[]) |
Provádí odvozování klíčů pomocí zadaného algoritmu HMAC (Hash-based Message Authentication Code) algoritmus. |
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
Při implementaci v odvozené třídě provádí odvození klíčů pomocí zadaného algoritmu HMAC (Hash-based Message Authentication Code) s volitelnými předřazením 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
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
HMAC sdíleného tajného kódu po předpřidání nebo připojení dat podle požadavku.
Výjimky
Odvozená třída musí tuto metodu přepsat.
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íč.
Poznámky
Tato metoda interně provádí smlouvu o klíči Elliptic Curve Diffie-Hellman k vytvoření sdíleného tajného klíče (z
).
Pokud hmacKey
je null
hodnota , 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ě je vrácená hodnota z této metody výsledkem HMAC-HASH(hmacKey, secretPrepend || z || secretAppend)
.
Pokud je null
hodnota secretPrepend
nebo secretAppend
, jsou považovány za prázdná pole.
Platí pro
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[])
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
- Zdroj:
- ECDiffieHellman.cs
Provádí odvozování klíčů pomocí zadaného algoritmu HMAC (Hash-based Message Authentication Code) algoritmus.
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
Hashovací algoritmus, který se má použít k odvození materiálu klíče.
- hmacKey
- Byte[]
Klíč pro HMAC.
Návraty
HMAC sdíleného tajného klíče.
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íč.
Poznámky
Toto přetížení volá metodu DeriveKeyFromHmac předávání null
jako předpřidávací a přidávací hodnoty.