Sdílet prostřednictvím


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

Definice

Při implementaci v odvozené třídě provádí odvozování klíčů 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[]

Semeno PRF o 64 bajtech.

Návraty

Byte[]

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

Výjimky

Odvozená třída musí tuto metodu přepsat.

Křivka používaná uživatelem 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žitá 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 dokumentu IETF RFC 4346, oddíl 5.

Platí pro