ECDiffieHellmanOpenSsl Classe

Definição

Fornece uma implementação do algoritmo Elliptic Curve Diffie-Hellman (ECDH) apoiado pelo 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
Herança
ECDiffieHellmanOpenSsl

Observações

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

Construtores

Name Description
ECDiffieHellmanOpenSsl()

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

ECDiffieHellmanOpenSsl(ECCurve)

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

ECDiffieHellmanOpenSsl(Int32)

Inicializa uma nova instância da ECDiffieHellmanOpenSsl classe que por defeito é a curva prima NIST do tamanho especificado.

ECDiffieHellmanOpenSsl(IntPtr)

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

ECDiffieHellmanOpenSsl(SafeEvpPKeyHandle)

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

Campos

Name Description
KeySizeValue

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

(Herdado de AsymmetricAlgorithm)
LegalKeySizesValue

Especifica os tamanhos de chave suportados pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)

Propriedades

Name Description
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 de chave usado pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
LegalKeySizes

Obtém os tamanhos de chave suportados pelo algoritmo assimétrico.

(Herdado de AsymmetricAlgorithm)
PublicKey

Obtém a chave pública que pode ser usada por outro ECDiffieHellman objeto para gerar um acordo secreto partilhado.

SignatureAlgorithm

Recebe o nome do algoritmo de assinatura.

(Herdado de ECDiffieHellman)

Métodos

Name Description
Clear()

Liberta todos os recursos usados pela AsymmetricAlgorithm turma.

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

Realiza a derivação de chaves usando um algoritmo de hash especificado com dados opcionais prependidos ou acrescentados.

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

Quando implementado numa classe derivada, realiza a derivação de chaves usando um algoritmo de hash especificado com dados opcionais prependidos ou acrescentados.

(Herdado de ECDiffieHellman)
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)

Realiza a derivação de chaves usando um algoritmo de hash especificado.

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

Realiza a derivação de chaves usando um algoritmo HMAC (Hash-based Message Authentication Code) especificado com dados opcionais prependidos ou acrescentados.

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

Quando implementado numa classe derivada, realiza a derivação de chaves usando um algoritmo HMAC (Hash-based Message Authentication Code) especificado com dados opcionais prependidos ou acrescentados.

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

Realiza a derivação de chaves usando um algoritmo HMAC (Código de Autenticação de Mensagens Baseado em Hash) especificado.

(Herdado de ECDiffieHellman)
DeriveKeyMaterial(ECDiffieHellmanPublicKey)

Realiza uma derivação chave sobre o segredo partilhado.

DeriveKeyMaterial(ECDiffieHellmanPublicKey)

Quando implementado numa classe derivada, realiza uma derivação de chave sobre o segredo partilhado.

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

Realiza a derivação de chaves usando a função TLS (Transport Layer Security) 1.1 PRF (FunçãoPseudo-Random).

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

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

(Herdado de ECDiffieHellman)
DeriveRawSecretAgreement(ECDiffieHellmanPublicKey)

Derivar matéria-chave bruta.

(Herdado de ECDiffieHellman)
Dispose()

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

(Herdado de AsymmetricAlgorithm)
Dispose(Boolean)

Liberta os recursos não geridos usados pela AsymmetricAlgorithm classe e, opcionalmente, liberta os recursos geridos.

(Herdado de AsymmetricAlgorithm)
DuplicateKeyHandle()

Obtém uma SafeEvpPKeyHandle representação da chave criptográfica.

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 PKCS#8 EncryptedPrivateKeyInfo com uma palavra-passe baseada em bytes.

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

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma palavra-passe baseada em caracteres.

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

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

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

Exporta a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma palavra-passe baseada em caracteres, codificada em PEM.

(Herdado de AsymmetricAlgorithm)
ExportExplicitParameters(Boolean)

Exporta a informação pública ou a chave pública e privada usando a forma explícita de curva da chave atual para uma ECParameters estrutura, de modo a que possa ser passada ao ImportParameters(ECParameters) método.

ExportParameters(Boolean)

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

ExportPkcs8PrivateKey()

Exporta a chave atual no formato PKCS#8 PrivateKeyInfo.

(Herdado de AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

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

(Herdado de AsymmetricAlgorithm)
ExportSubjectPublicKeyInfo()

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

(Herdado de AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

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

(Herdado de AsymmetricAlgorithm)
FromXmlString(String)

Este método inclui todos os casos.

(Herdado de ECDiffieHellman)
GenerateKey(ECCurve)

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

GetHashCode()

Serve como função de hash predefinida.

(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úblico/privado a partir de uma estrutura ECPrivateKey, substituindo as chaves deste objeto.

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

Importa o par de chaves público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo após desencriptar com uma palavra-passe baseada em bytes, substituindo as chaves deste objeto.

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

Importa o par de chaves pública/privada de uma estrutura PKCS#8 EncryptedPrivateKeyInfo após desencriptação com uma palavra-passe baseada em caracteres, substituindo as chaves deste objeto.

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

Importa uma chave privada codificada em PEM RFC 7468 encriptada, substituindo as chaves deste objeto.

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

Importa uma chave privada codificada em PEM RFC 7468 encriptada, substituindo as chaves deste objeto.

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

Importa uma chave codificada em PEM no RFC 7468, substituindo as chaves deste objeto.

(Herdado de ECDiffieHellman)
ImportParameters(ECParameters)

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

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Importa o par de chaves público/privado de uma estrutura PKCS#8 PrivateKeyInfo após a desencriptação, substituindo as chaves deste objeto.

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

Importa a chave pública de uma estrutura X.509 SubjectPublicKeyInfo após a desencriptação, substituindo as chaves deste objeto.

(Herdado de ECDiffieHellman)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
ToXmlString(Boolean)

Este método inclui todos os casos.

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

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

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

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

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

Tentativas de exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em bytes.

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

Tentativas de exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em caracteres.

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

Tentativas de exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo com uma palavra-passe 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 palavra-passe baseada em caracteres, codificada em PEM.

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

Tenta exportar a chave atual no formato PKCS#8 PrivateKeyInfo para um buffer fornecido.

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

Tentativas de exportar a chave atual no formato PKCS#8 PrivateKeyInfo codificado em PEM para um buffer fornecido.

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

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

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

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

(Herdado de AsymmetricAlgorithm)

Aplica-se a