ECDiffieHellman.DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[]) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Quando implementada em uma classe derivada, executa a derivação de chave usando a PRF (função pseudoaleatória) do protocolo TLS 1.1.
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 do outro participante.
- prfLabel
- Byte[]
O rótulo PRF codificado em ASCII.
- prfSeed
- Byte[]
A semente PRF de 64 bytes.
Retornos
Os primeiros 48 bytes do protocolo TLS 1.1 PRF, usando o segredo compartilhado como a chave.
Exceções
Uma classe derivada deve substituir esse método.
A curva usada por otherPartyPublicKey
tem um tamanho diferente da curva dessa chave.
otherPartyPublicKey
, prfLabel
ou prfSeed
é null
.
prfSeed
não tem tamanho de exatamente 64 bytes.
- ou -
A curva usada por otherPartyPublicKey
é diferente da curva dessa chave.
- ou -
Essa instância representa apenas uma chave pública.
Comentários
Esse método executa internamente a Curva Elíptica Diffie-Hellman contrato de chave para produzir o segredo compartilhado (z
).
O valor retornado desse método é uma saída de 48 bytes do PRF do TLS 1.1 (Função Pseudo-Aleatória), PRF(z, prfLabel, prfSeed)
.
Para obter mais informações, consulte IETF RFC 4346, seção 5.