ECDiffieHellman.DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[]) Método

Definição

Quando implementado numa classe derivada, realiza a derivação de chaves usando a função 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()

Parâmetros

otherPartyPublicKey
ECDiffieHellmanPublicKey

A chave pública da outra parte.

prfLabel
Byte[]

A etiqueta PRF codificada em ASCII.

prfSeed
Byte[]

A semente PRF de 64 bytes.

Devoluções

Byte[]

Os primeiros 48 bytes do PRF TLS 1.1, usando o segredo partilhado como chave.

Exceções

Uma classe derivada deve sobrepor-se a este método.

A curva usada por otherPartyPublicKey tem um tamanho diferente da curva desta chave.

otherPartyPublicKey, prfLabel ou prfSeed é null.

prfSeed não tem exatamente 64 bytes de comprimento.

-ou-

A curva usada por otherPartyPublicKey é diferente da curva desta chave.

-ou-

Esta instância representa apenas uma chave pública.

Observações

Este método executa internamente a Curva Elíptica Diffie-Hellman concordância de chaves para produzir o segredo partilhado (z).

O valor de retorno deste método é uma saída de 48 bytes da PRF TLS 1.1 (FunçãoPseudo-Random), PRF(z, prfLabel, prfSeed).

Para mais informações, consulte o IETF RFC 4346, secção 5.

Aplica-se a