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

Definition

Wenn sie in einer abgeleiteten Klasse implementiert wird, führt die Schlüsselableitung mithilfe der TLS (Transport Layer Security) 1.1 PRF (Pseudo-Random Function) aus.

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

Parameter

otherPartyPublicKey
ECDiffieHellmanPublicKey

Der öffentliche Schlüssel der anderen Partei.

prfLabel
Byte[]

Die ASCII-codierte PRF-Bezeichnung.

prfSeed
Byte[]

Das 64-Byte-PRF-Saatgut.

Gibt zurück

Byte[]

Die ersten 48 Bytes aus dem TLS 1.1 PRF, wobei der freigegebene Geheimschlüssel als Schlüssel verwendet wird.

Ausnahmen

Eine abgeleitete Klasse muss diese Methode überschreiben.

Die verwendete otherPartyPublicKey Kurve hat eine andere Größe als die Kurve von diesem Schlüssel.

otherPartyPublicKey, prfLabel oder prfSeed ist .null

prfSeed ist nicht genau 64 Bytes lang.

-oder-

Die verwendete otherPartyPublicKey Kurve unterscheidet sich von der Kurve von diesem Schlüssel.

-oder-

Diese Instanz stellt nur einen öffentlichen Schlüssel dar.

Hinweise

Diese Methode führt intern die Elliptic Curve Diffie-Hellman Schlüsselvereinbarung aus, um das freigegebene Geheimnis (z) zu erzeugen.

Der Rückgabewert dieser Methode ist eine 48-Byte-Ausgabe des TLS 1.1 PRF (Pseudo-Random Function), PRF(z, prfLabel, prfSeed).

Weitere Informationen finden Sie unter IETF RFC 4346, Abschnitt 5.

Gilt für: