ECDiffieHellman.DeriveKeyFromHash Metoda

Definice

Provádí odvození klíče pomocí zadaného hash algoritmu.

Přetížení

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)

Provádí odvození klíče pomocí zadaného hash algoritmu.

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

Při implementaci v odvozené třídě provádí odvození klíče pomocí zadaného hash algoritmu s volitelnými předpended nebo připojenými daty.

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)

Zdroj:
ECDiffieHellman.cs
Zdroj:
ECDiffieHellman.cs
Zdroj:
ECDiffieHellman.cs

Provádí odvození klíče pomocí zadaného hash algoritmu.

C#
public byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);

Parametry

otherPartyPublicKey
ECDiffieHellmanPublicKey

Veřejný klíč druhé strany.

hashAlgorithm
HashAlgorithmName

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

Návraty

Byte[]

Hodnota hash 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 DeriveKeyFromHash předávání null jako předpřidávací a přidávací hodnoty.

Platí pro

.NET 9 a další verze
Produkt Verze
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.1

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

Zdroj:
ECDiffieHellman.cs
Zdroj:
ECDiffieHellman.cs
Zdroj:
ECDiffieHellman.cs

Při implementaci v odvozené třídě provádí odvození klíče pomocí zadaného hash algoritmu s volitelnými předpended nebo připojenými daty.

C#
public virtual byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? secretPrepend, byte[]? secretAppend);
C#
public virtual byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] secretPrepend, byte[] secretAppend);

Parametry

otherPartyPublicKey
ECDiffieHellmanPublicKey

Veřejný klíč druhé strany.

hashAlgorithm
HashAlgorithmName

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

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[]

Hodnota hash sdíleného tajného klíče 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). Vrácená hodnota z této metody je výsledkem použití zadaného HASH(secretPrepend || z || secretAppend) hash algoritmu, kde || znamená zřetězení.

Pokud je nullhodnota secretPrepend nebo secretAppend , jsou považovány za prázdná pole.

Platí pro

.NET 9 a další verze
Produkt Verze
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.1