ECDiffieHellmanOpenSsl Classe

Definição

Fornece uma implementação do algoritmo ECDH (Diffie-Hellman de curva elíptica) com suporte de OpenSSL.

public ref class ECDiffieHellmanOpenSsl sealed : System::Security::Cryptography::ECDiffieHellman
public sealed class ECDiffieHellmanOpenSsl : System.Security.Cryptography.ECDiffieHellman
type ECDiffieHellmanOpenSsl = class
    inherit ECDiffieHellman
Public NotInheritable Class ECDiffieHellmanOpenSsl
Inherits ECDiffieHellman
Herança
ECDiffieHellmanOpenSsl
Herança

Comentários

Essa classe só deve ser usada diretamente ao fazer a interoperabilidade de plataforma com a biblioteca OpenSSL do sistema. Quando a interoperabilidade de plataforma não é necessária, você deve usar os ECDiffieHellman.Create métodos de fábrica em vez de uma implementação derivada específica.

Construtores

ECDiffieHellmanOpenSsl()

Inicializa uma nova instância da classe ECDiffieHellmanOpenSsl, com uma curva padrão de NIST P-521/secp521r1.

ECDiffieHellmanOpenSsl(ECCurve)

Inicializa uma nova instância da classe ECDiffieHellmanOpenSsl e gera uma nova chave na curva especificada.

ECDiffieHellmanOpenSsl(Int32)

Inicializa uma nova instância da classe ECDiffieHellmanOpenSsl estabelecendo como padrão a curva principal do NIST do tamanho especificado.

ECDiffieHellmanOpenSsl(IntPtr)

Inicializa uma nova instância da ECDiffieHellmanOpenSsl classe de uma chave OpenSSL existente representada como um EC_KEY*.

ECDiffieHellmanOpenSsl(SafeEvpPKeyHandle)

Inicializa uma nova instância da ECDiffieHellmanOpenSsl classe de uma chave OpenSSL existente representada como um EVP_PKEY*.

Campos

KeySizeValue

Representa o tamanho, em bits, do módulo chave usado pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
LegalKeySizesValue

Especifica os tamanhos de chave que são compatíveis com o algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)

Propriedades

KeyExchangeAlgorithm

Obtém o nome do algoritmo de troca de chaves.

(Herdado de ECDiffieHellman)
KeySize

Obtém ou define o tamanho, em bits, do módulo chave usado pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
LegalKeySizes

Obtém os tamanhos de chave que têm suporte pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
PublicKey

Obtém a chave pública que pode ser usada por outro objeto ECDiffieHellman para gerar um contrato de segredo compartilhado.

SignatureAlgorithm

Obtém o nome do algoritmo de assinatura.

(Herdado de ECDiffieHellman)

Métodos

Clear()

Libera todos os recursos usados pela classe AsymmetricAlgorithm.

(Herdado de AsymmetricAlgorithm)
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)

Executa a derivação de chave usando um algoritmo de hash especificado.

(Herdado de ECDiffieHellman)
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[])

Executa a derivação de chave usando um algoritmo de hash especificado com os dados opcionais anexados ou acrescentados.

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[])

Quando implementado em uma classe derivada, executa a derivação de chave usando um algoritmo de hash especificado com os dados opcionais anexados ou acrescentados.

(Herdado de ECDiffieHellman)
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[])

Executa a derivação de chave usando um algoritmo HMAC (Message Authentication Code baseado em hash) especificado.

(Herdado de ECDiffieHellman)
DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])

Executa a derivação de chave usando um algoritmo HMAC (Message Authentication Code baseado em hash) especificado com os dados opcionais acrescentados ou anexados.

DeriveKeyFromHmac(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[], Byte[])

Quando implementado em uma classe derivada, executa a derivação de chave usando um algoritmo HMAC (Message Authentication Code baseado em hash) especificado com os dados opcionais acrescentados ou anexados.

(Herdado de ECDiffieHellman)
DeriveKeyMaterial(ECDiffieHellmanPublicKey)

Executa uma derivação de chave no segredo compartilhado.

DeriveKeyMaterial(ECDiffieHellmanPublicKey)

Quando implementada em uma classe derivada, executa uma derivação de chave no segredo compartilhado.

(Herdado de ECDiffieHellman)
DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[])

Executa a derivação de chave usando a PRF (função pseudoaleatória) do protocolo TLS 1.1.

DeriveKeyTls(ECDiffieHellmanPublicKey, Byte[], Byte[])

Quando implementada em uma classe derivada, executa a derivação de chave usando a PRF (função pseudoaleatória) do protocolo TLS 1.1.

(Herdado de ECDiffieHellman)
DeriveRawSecretAgreement(ECDiffieHellmanPublicKey)

Derivar material de chave bruta.

(Herdado de ECDiffieHellman)
Dispose()

Libera todos os recursos usados pela instância atual da classe AsymmetricAlgorithm.

(Herdado de AsymmetricAlgorithm)
Dispose(Boolean)

Libera os recursos não gerenciados usados pela classe AsymmetricAlgorithm e, opcionalmente, libera os recursos gerenciados.

(Herdado de AsymmetricAlgorithm)
DuplicateKeyHandle()

Obtém uma representação SafeEvpPKeyHandle da chave de criptografia.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
ExportECPrivateKey()

Exporta a chave atual no formato ECPrivateKey.

(Herdado de ECDiffieHellman)
ExportECPrivateKeyPem()

Exporta a chave atual no formato ECPrivateKey, codificado em PEM.

(Herdado de ECAlgorithm)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

Exporta a chave atual no formato EncryptedPrivateKeyInfo do PKCS nº 8 com uma senha baseada em bytes.

(Herdado de AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

Exporta a chave atual no formato EncryptedPrivateKeyInfo do PKCS nº 8 com uma senha baseada em caracteres.

(Herdado de AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em bytes, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em char, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
ExportExplicitParameters(Boolean)

Exporta as informações de chave pública ou pública e privada usando o formato de curva explícita da chave atual para uma estrutura de ECParameters para que elas possam ser passadas para o método ImportParameters(ECParameters).

ExportExplicitParameters(Boolean)

Quando substituído em uma classe derivada, exporta as informações de chave pública ou chaves públicas e privadas usando o formulário de curva explícita de uma chave ECDiffieHellman de trabalho para uma estrutura ECParameters para que ela possa ser passada para o método ImportParameters(ECParameters).

(Herdado de ECDiffieHellman)
ExportParameters(Boolean)

Exporta a chave usada pelo objeto ECCurve em um objeto ECParameters.

ExportPkcs8PrivateKey()

Exporta a chave atual no formato PrivateKeyInfo do PKCS nº 8.

(Herdado de AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

Exporta a chave atual no formato PrivateKeyInfo PKCS nº 8, codificado em PEM.

(Herdado de AsymmetricAlgorithm)
ExportSubjectPublicKeyInfo()

Exporta a parte pública da chave atual no formato SubjectPublicKeyInfo X.509.

(Herdado de AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

Exporta a parte de chave pública da chave atual no formato SubjectPublicKeyInfo X.509, codificado em PEM.

(Herdado de AsymmetricAlgorithm)
FromXmlString(String)

Esse método é gerado em todos os casos.

(Herdado de ECDiffieHellman)
GenerateKey(ECCurve)

Gera um novo par de chaves pública/privada efêmero para a curva especificada.

GenerateKey(ECCurve)

Quando substituído em uma classe derivada, gera um novo par de chaves pública/privada efêmero para a curva especificada.

(Herdado de ECDiffieHellman)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
ImportECPrivateKey(ReadOnlySpan<Byte>, Int32)

Importa o par de chaves pública/privada de uma estrutura de ECPrivateKey, substituindo as chaves desse objeto.

(Herdado de ECDiffieHellman)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Importa o par de chaves pública/privada de uma estrutura de EncryptedPrivateKeyInfo do PKCS nº 8 após descriptografar com uma senha baseada em bytes, substituindo as chaves desse objeto.

(Herdado de ECDiffieHellman)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Importa o par de chaves pública/privada de uma estrutura de EncryptedPrivateKeyInfo do PKCS nº 8 após descriptografar com uma senha baseada em caracteres, substituindo as chaves desse objeto.

(Herdado de ECDiffieHellman)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

Importa uma chave privada criptografada no formato PEM conforme RFC 7468, substituindo as chaves do objeto.

(Herdado de ECDiffieHellman)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Importa uma chave privada criptografada no formato PEM conforme RFC 7468, substituindo as chaves do objeto.

(Herdado de ECDiffieHellman)
ImportFromPem(ReadOnlySpan<Char>)

Importa uma chave codificada no formato PEM do RFC 7468, substituindo as chaves do objeto.

(Herdado de ECDiffieHellman)
ImportParameters(ECParameters)

Importa os parâmetros especificados para um objeto ECCurve como uma chave para a instância atual.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Importa o par de chaves pública/privada de uma estrutura de PrivateKeyInfo do PKCS nº 8 após a descriptografia, substituindo as chaves desse objeto.

(Herdado de ECDiffieHellman)
ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Importa a chave pública de uma estrutura de SubjectPublicKeyInfo X.509 após a descriptografia, substituindo as chaves desse objeto.

(Herdado de ECDiffieHellman)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
ToXmlString(Boolean)

Esse método é gerado em todos os casos.

(Herdado de ECDiffieHellman)
TryExportECPrivateKey(Span<Byte>, Int32)

Tenta exportar a chave atual no formato ECPrivateKey para um buffer fornecido.

(Herdado de ECDiffieHellman)
TryExportECPrivateKeyPem(Span<Char>, Int32)

Tenta exportar a chave atual no formato ECPrivateKey codificado em PEM para um buffer fornecido.

(Herdado de ECAlgorithm)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Tenta exportar a chave atual no formato EncryptedPrivateKeyInfo do PKCS n º 8 para um buffer fornecido, usando uma senha baseada em bytes.

(Herdado de ECDiffieHellman)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

Tenta exportar a chave atual no formato EncryptedPrivateKeyInfo do PKCS n º 8 para um buffer fornecido, usando uma senha baseada em caracteres.

(Herdado de ECDiffieHellman)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters, Span<Char>, Int32)

Tenta exportar a chave atual no formato EncryptedPrivateKeyInfo do PKCS nº 8 com uma senha baseada em bytes, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters, Span<Char>, Int32)

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma senha baseada em char, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Tenta exportar a chave atual no formato PrivateKeyInfo do PKCS n º 8 para um buffer fornecido.

(Herdado de ECDiffieHellman)
TryExportPkcs8PrivateKeyPem(Span<Char>, Int32)

Tenta exportar a chave atual no formato PrivateKeyInfo PKCS nº 8 codificado em PEM para um buffer fornecido.

(Herdado de AsymmetricAlgorithm)
TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Tenta exportar a chave atual no formato SubjectPublicKeyInfo X.509 para um buffer fornecido.

(Herdado de ECDiffieHellman)
TryExportSubjectPublicKeyInfoPem(Span<Char>, Int32)

Tenta exportar a chave atual no formato SubjectPublicKeyInfo X.509 codificado em PEM para um buffer fornecido.

(Herdado de AsymmetricAlgorithm)

Aplica-se a