ECDiffieHellman Classe

Definição

Fornece uma classe base abstrata da qual as implementações do algoritmo Elliptic Curve Diffie-Hellman (ECDH) podem derivar. Esta classe fornece o conjunto básico de operações que todas as implementações ECDH devem suportar.

public ref class ECDiffieHellman abstract : System::Security::Cryptography::ECAlgorithm
public ref class ECDiffieHellman abstract : System::Security::Cryptography::AsymmetricAlgorithm
public abstract class ECDiffieHellman : System.Security.Cryptography.ECAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class ECDiffieHellman : System.Security.Cryptography.AsymmetricAlgorithm
public abstract class ECDiffieHellman : System.Security.Cryptography.AsymmetricAlgorithm
type ECDiffieHellman = class
    inherit ECAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type ECDiffieHellman = class
    inherit AsymmetricAlgorithm
type ECDiffieHellman = class
    inherit AsymmetricAlgorithm
Public MustInherit Class ECDiffieHellman
Inherits ECAlgorithm
Public MustInherit Class ECDiffieHellman
Inherits AsymmetricAlgorithm
Herança
Herança
ECDiffieHellman
Derivado
Atributos

Observações

Esta classe serve como a classe base abstrata para implementações ECDH.

Construtores

Name Description
ECDiffieHellman()

Inicializa uma nova instância da ECDiffieHellman classe.

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.

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 está a ser usada pela instância atual do Elliptic Curve Diffie-Hellman (ECDH).

SignatureAlgorithm

Recebe o nome do algoritmo de assinatura.

Métodos

Name Description
Clear()

Liberta todos os recursos usados pela AsymmetricAlgorithm turma.

(Herdado de AsymmetricAlgorithm)
Create()

Cria uma nova instância da implementação padrão do algoritmo Elliptic Curve Diffie-Hellman (ECDH).

Create(ECCurve)

Cria uma nova instância da implementação padrão do algoritmo Elliptic Curve Diffie-Hellman (ECDH) com um novo par de chaves público/privado gerado sobre a curva especificada.

Create(ECParameters)

Cria uma nova instância da implementação padrão do algoritmo Elliptic Curve Diffie-Hellman (ECDH) com a chave descrita pelo objeto especificado ECParameters .

Create(String)
Obsoleto.

Cria uma nova instância da implementação especificada do algoritmo Elliptic Curve Diffie-Hellman (ECDH).

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.

DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)

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

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.

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.

DeriveKeyMaterial(ECDiffieHellmanPublicKey)

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

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

DeriveRawSecretAgreement(ECDiffieHellmanPublicKey)

Derivar matéria-chave bruta.

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

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
ExportECPrivateKey()

Exporta a chave atual no formato ECPrivateKey.

ExportECPrivateKey()

Exporta a chave atual no formato ECPrivateKey.

(Herdado de ECAlgorithm)
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)

Quando sobreposta numa classe derivada, exporta a informação pública ou a informação da chave pública e privada usando a forma explícita de curva de uma chave de trabalho ECDiffieHellman para uma ECParameters estrutura, de modo a que possa ser passada ao ImportParameters(ECParameters) método.

ExportExplicitParameters(Boolean)

Quando sobreposto numa classe derivada, exporta o explícito ECParameters para um ECCurve.

(Herdado de ECAlgorithm)
ExportParameters(Boolean)

Quando sobreposto numa classe derivada, exporta ou a informação pública ou pública e privada de uma chave funcional ECDiffieHellman para uma ECParameters estrutura, de modo a que possa ser transmitida ao ImportParameters(ECParameters) método.

ExportParameters(Boolean)

Quando sobreposto numa classe derivada, exporta o nome ou explícito ECParameters para um ECCurve. Se a curva tiver um nome, a propriedade Curva conterá parâmetros de curva nomeados, caso contrário conterá parâmetros explícitos.

(Herdado de ECAlgorithm)
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.

FromXmlString(String)

Quando sobrescrito numa classe derivada, reconstrói um AsymmetricAlgorithm objeto a partir de uma cadeia XML. Caso contrário, lança um NotImplementedException.

(Herdado de AsymmetricAlgorithm)
GenerateKey(ECCurve)

Quando sobrescrito numa classe derivada, gera um novo par de chaves públicas/privadas efémeras para a curva especificada.

GenerateKey(ECCurve)

Quando sobrescrito numa classe derivada, gera um novo par de chaves público/privado para a curva especificada.

(Herdado de ECAlgorithm)
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.

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

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 ECAlgorithm)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Quando sobrescrito numa classe derivada, 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 AsymmetricAlgorithm)
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.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, 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 ECAlgorithm)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Quando sobrescrito numa classe derivada, importa o par de chaves público/privado de uma estrutura PKCS#8 EncryptedPrivateKeyInfo após desencriptação com uma palavra-passe baseada em caracteres, substituindo as chaves deste objeto.

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

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

ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

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

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

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

ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

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

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

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

ImportFromPem(ReadOnlySpan<Char>)

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

(Herdado de ECAlgorithm)
ImportParameters(ECParameters)

Quando sobrescrito numa classe derivada, importa os parâmetros especificados para um ECCurve como uma chave efémera para o objeto atual ECDiffieHellman .

ImportParameters(ECParameters)

Quando sobreposto numa classe derivada, importa o especificado ECParameters.

(Herdado de ECAlgorithm)
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.

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 ECAlgorithm)
ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Quando é sobreposto numa classe derivada, importa o par de chaves público/privado de uma estrutura PrivateKeyInfo PKCS#8 após a desencriptação, substituindo as chaves deste objeto.

(Herdado de AsymmetricAlgorithm)
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.

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 ECAlgorithm)
ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Quando é sobreposta numa classe derivada, importa a chave pública de uma estrutura X.509 SubjectPublicKeyInfo após a desencriptação, substituindo as chaves deste objeto.

(Herdado de AsymmetricAlgorithm)
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.

ToXmlString(Boolean)

Quando é sobreposto numa classe derivada, cria e retorna uma representação XML de string do objeto atual AsymmetricAlgorithm . Caso contrário, lança um NotImplementedException.

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

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

TryExportECPrivateKey(Span<Byte>, Int32)

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

(Herdado de ECAlgorithm)
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.

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 ECAlgorithm)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Quando sobreposta numa classe derivada, tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em bytes.

(Herdado de AsymmetricAlgorithm)
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.

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 ECAlgorithm)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

Quando é sobreposta numa classe derivada, tenta exportar a chave atual no formato PKCS#8 EncryptedPrivateKeyInfo para um buffer fornecido, usando uma palavra-passe baseada em caracteres.

(Herdado de AsymmetricAlgorithm)
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.

TryExportPkcs8PrivateKey(Span<Byte>, Int32)

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

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

Quando sobreposta numa classe derivada, tenta exportar a chave atual no formato PKCS#8 PrivateKeyInfo para um buffer fornecido.

(Herdado de AsymmetricAlgorithm)
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.

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

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

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

Quando sobreposta numa classe derivada, tenta exportar a chave atual no formato X.509 SubjectPublicKeyInfo para um buffer fornecido.

(Herdado de AsymmetricAlgorithm)
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)

Implementações de Interface Explícita

Name Description
IDisposable.Dispose()

Esta API suporta a infraestrutura de produtos e não é pressuposta para ser utilizada diretamente a partir do seu código.

Para uma descrição deste elemento, veja Dispose().

(Herdado de AsymmetricAlgorithm)

Aplica-se a