Sdílet prostřednictvím


ECDiffieHellman.DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[]) Metoda

Definice

Při implementaci v odvozené třídě provádí odvození klíče pomocí protokolu TLS (Transport Layer Security) 1.1 PRF (Pseudo-Random Function).

public:
 virtual cli::array <System::Byte> ^ DeriveKeyTls(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, cli::array <System::Byte> ^ prfLabel, cli::array <System::Byte> ^ prfSeed);
public virtual byte[] DeriveKeyTls (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, byte[] prfLabel, byte[] prfSeed);
abstract member DeriveKeyTls : System.Security.Cryptography.ECDiffieHellmanPublicKey * byte[] * byte[] -> byte[]
override this.DeriveKeyTls : System.Security.Cryptography.ECDiffieHellmanPublicKey * byte[] * byte[] -> byte[]
Public Overridable Function DeriveKeyTls (otherPartyPublicKey As ECDiffieHellmanPublicKey, prfLabel As Byte(), prfSeed As Byte()) As Byte()

Parametry

otherPartyPublicKey
ECDiffieHellmanPublicKey

Veřejný klíč druhé strany.

prfLabel
Byte[]

Popisek PRF s kódováním ASCII.

prfSeed
Byte[]

Počáteční hodnota PRF o 64 bajtech.

Návraty

Byte[]

Prvních 48 bajtů z TLS 1.1 PRF, který jako klíč používá sdílený tajný klíč.

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.

otherPartyPublicKeynebo prfLabelprfSeed je null.

prfSeed není přesně 64 bajtů.

-nebo-

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

Návratová hodnota této metody je 48 bajtů výstupu PROTOKOLU TLS 1.1 PRF (Pseudo-Random Function), PRF(z, prfLabel, prfSeed).

Další informace najdete v části IETF RFC 4346, oddíl 5.

Platí pro