Compartilhar via


DSACryptoServiceProvider Classe

Definição

Define um objeto wrapper para acessar a implementação do CSP (provedor de serviços de criptografia) do algoritmo DSA. Essa classe não pode ser herdada.

public ref class DSACryptoServiceProvider sealed : System::Security::Cryptography::DSA, System::Security::Cryptography::ICspAsymmetricAlgorithm
public ref class DSACryptoServiceProvider sealed : System::Security::Cryptography::DSA
public sealed class DSACryptoServiceProvider : System.Security.Cryptography.DSA, System.Security.Cryptography.ICspAsymmetricAlgorithm
public sealed class DSACryptoServiceProvider : System.Security.Cryptography.DSA
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class DSACryptoServiceProvider : System.Security.Cryptography.DSA, System.Security.Cryptography.ICspAsymmetricAlgorithm
type DSACryptoServiceProvider = class
    inherit DSA
    interface ICspAsymmetricAlgorithm
type DSACryptoServiceProvider = class
    inherit DSA
[<System.Runtime.InteropServices.ComVisible(true)>]
type DSACryptoServiceProvider = class
    inherit DSA
    interface ICspAsymmetricAlgorithm
Public NotInheritable Class DSACryptoServiceProvider
Inherits DSA
Implements ICspAsymmetricAlgorithm
Public NotInheritable Class DSACryptoServiceProvider
Inherits DSA
Herança
DSACryptoServiceProvider
Atributos
Implementações

Comentários

Você pode usar a DSACryptoServiceProvider classe para criar assinaturas digitais e proteger a integridade de seus dados.

Para usar um sistema de chave pública para assinar digitalmente uma mensagem, o remetente primeiro aplica uma função de hash à mensagem para criar um resumo da mensagem. Em seguida, o remetente criptografa o resumo da mensagem com a chave privada do remetente para criar a assinatura pessoal do remetente. Ao receber a mensagem e a assinatura, o receptor descriptografa a assinatura usando a chave pública do remetente para recuperar o resumo da mensagem e faz hashes da mensagem usando o mesmo algoritmo de hash usado pelo remetente. Se o resumo da mensagem que o receptor calcula corresponder exatamente ao resumo da mensagem recebido do remetente, o receptor poderá ter certeza de que a mensagem não foi alterada durante o trânsito. Observe que uma assinatura pode ser verificada por qualquer pessoa, pois a chave pública do remetente é de conhecimento comum.

Observação

Os criadores do algoritmo DSA retiraram o suporte para ele. Considere usar a RSACryptoServiceProvider classe em vez da DSACryptoServiceProvider classe . Use DSACryptoServiceProvider apenas para compatibilidade com aplicativos e dados herdados.

Esse algoritmo dá suporte a comprimentos de chave de 512 bits a 1024 bits em incrementos de 64 bits.

Construtores

DSACryptoServiceProvider()

Inicializa uma nova instância da classe DSACryptoServiceProvider.

DSACryptoServiceProvider(CspParameters)

Inicializa uma nova instância da classe DSACryptoServiceProvider usando os parâmetros especificados para o CSP (provedor de serviço de criptografia).

DSACryptoServiceProvider(Int32)

Inicializa uma nova instância da classe DSACryptoServiceProvider com o tamanho de chave especificado.

DSACryptoServiceProvider(Int32, CspParameters)

Inicializa uma nova instância da classe DSACryptoServiceProvider usando o tamanho de chave especificado e os parâmetros para o CSP (provedor de serviço de criptografia) especificados.

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

CspKeyContainerInfo

Obtém um objeto CspKeyContainerInfo que descreve informações adicionais sobre um par de chaves de criptografia.

KeyExchangeAlgorithm

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

KeySize

Obtém o tamanho da chave usada pelo algoritmo assimétrico em bits.

LegalKeySizes

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

LegalKeySizes

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

(Herdado de AsymmetricAlgorithm)
PersistKeyInCsp

Obtém ou define um valor que indica se a chave deve ser persistente no CSP (provedor de serviços de criptografia).

PublicOnly

Obtém um valor que indica se o objeto DSACryptoServiceProvider contém somente uma chave pública.

SignatureAlgorithm

Obtém o nome do algoritmo de assinatura.

UseMachineKeyStore

Obtém ou define um valor que indica se a chave deve ser persistente no repositório de chaves do computador em vez do repositório de perfil do usuário.

Métodos

Clear()

Libera todos os recursos usados pela classe AsymmetricAlgorithm.

(Herdado de AsymmetricAlgorithm)
CreateSignature(Byte[])

Cria a assinatura DSA dos dados especificados.

CreateSignature(Byte[], DSASignatureFormat)

Cria a assinatura DSA para o valor de hash especificado no formato indicado.

(Herdado de DSA)
CreateSignatureCore(ReadOnlySpan<Byte>, DSASignatureFormat)

Cria a assinatura DSA para o valor de hash especificado no formato indicado.

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

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
ExportCspBlob(Boolean)

Exporta um blob que contém as informações de chave associadas a um objeto DSACryptoServiceProvider.

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)
ExportParameters(Boolean)

Exporta o DSAParameters.

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)
Finalize()

Libera todos os recursos associados com esta instância.

FromXmlString(String)

Reconstrói um objeto DSA de uma cadeia de caracteres XML.

(Herdado de DSA)
GetHashCode()

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

(Herdado de Object)
GetMaxSignatureSize(DSASignatureFormat)

Obtém o maior tamanho, em bytes, de uma assinatura produzida por essa chave no formato indicado.

(Herdado de DSA)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
HashData(Byte[], Int32, Int32, HashAlgorithmName)

Quando substituído em uma classe derivada, calcula o valor de hash de uma parte especificada de uma matriz de bytes usando um algoritmo de hash especificado.

(Herdado de DSA)
HashData(Stream, HashAlgorithmName)

Quando substituído em uma classe derivada, calcula o valor de hash de um fluxo binário especificado usando um algoritmo de hash especificado.

(Herdado de DSA)
ImportCspBlob(Byte[])

Importa um blob que representa as informações de chave DSA.

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.

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

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 DSA)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

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

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

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

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

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

(Herdado de DSA)
ImportParameters(DSAParameters)

Importa o DSAParameters especificado.

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 DSA)
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 DSA)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
SignData(Byte[])

Calcula o valor de hash da matriz de bytes especificada e assina o valor de hash resultante.

SignData(Byte[], HashAlgorithmName)

Calcula o valor de hash da matriz de byte especificada usando o algoritmo de hash especificado e assina o valor de hash resultante.

(Herdado de DSA)
SignData(Byte[], HashAlgorithmName, DSASignatureFormat)

Calcula o valor de hash dos dados especificados e os assina usando o formato de assinatura especificado.

(Herdado de DSA)
SignData(Byte[], Int32, Int32)

Assina uma matriz de bytes do ponto inicial especificado para o ponto final indicado.

SignData(Byte[], Int32, Int32, HashAlgorithmName)

Calcula o valor de hash de uma parte da matriz de byte especificada usando o algoritmo de hash especificado e assina o valor de hash resultante.

(Herdado de DSA)
SignData(Byte[], Int32, Int32, HashAlgorithmName, DSASignatureFormat)

Calcula o valor de hash dos dados especificados e os assina usando o formato de assinatura especificado.

(Herdado de DSA)
SignData(Stream)

Calcula o valor de hash do fluxo de entrada especificado e assina o valor de hash resultante.

SignData(Stream, HashAlgorithmName)

Calcula o valor de hash do fluxo especificado usando o algoritmo de hash especificado e assina o valor de hash resultante.

(Herdado de DSA)
SignData(Stream, HashAlgorithmName, DSASignatureFormat)

Calcula o valor de hash dos dados especificados e os assina usando o formato de assinatura especificado.

(Herdado de DSA)
SignDataCore(ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Calcula o valor de hash dos dados especificados e os assina usando o formato de assinatura especificado.

(Herdado de DSA)
SignDataCore(Stream, HashAlgorithmName, DSASignatureFormat)

Calcula o valor de hash dos dados especificados e os assina usando o formato de assinatura especificado.

(Herdado de DSA)
SignHash(Byte[], String)

Computa a assinatura para o valor de hash especificado criptografando-a com a chave privada.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
ToXmlString(Boolean)

Cria e retorna uma representação de cadeia de caracteres XML do objeto DSA atual.

(Herdado de DSA)
TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

Tenta criar a assinatura DSA para o valor de hash especificado no formato indicado e colocá-la no buffer fornecido.

(Herdado de DSA)
TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, Int32)

Tenta criar a assinatura DSA para o hash especificado no buffer fornecido.

(Herdado de DSA)
TryCreateSignatureCore(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

Tenta criar a assinatura DSA para o valor de hash especificado no formato indicado e colocá-la no buffer fornecido.

(Herdado de DSA)
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 DSA)
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 DSA)
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 DSA)
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 DSA)
TryExportSubjectPublicKeyInfoPem(Span<Char>, Int32)

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

(Herdado de AsymmetricAlgorithm)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

Tenta computar o valor de hash dos dados fornecidos em um buffer fornecido.

(Herdado de DSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, DSASignatureFormat, Int32)

Tenta criar a assinatura DSA para os dados especificados no formato indicado e colocá-la no buffer fornecido.

(Herdado de DSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

Tenta criar a assinatura DSA para os dados especificados no buffer fornecido.

(Herdado de DSA)
TrySignDataCore(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, DSASignatureFormat, Int32)

Tenta criar a assinatura DSA para os dados especificados no formato indicado e colocá-la no buffer fornecido.

(Herdado de DSA)
VerifyData(Byte[], Byte[])

Verifica os dados de assinatura especificada comparando-os à assinatura calculada para os dados especificados.

VerifyData(Byte[], Byte[], HashAlgorithmName)

Verifica se uma assinatura digital é válida calculando o valor de hash dos dados especificados usando o algoritmo de hash especificados e comparando-o à assinatura fornecida.

(Herdado de DSA)
VerifyData(Byte[], Byte[], HashAlgorithmName, DSASignatureFormat)

Verifica se uma assinatura digital é válida para os dados fornecidos.

(Herdado de DSA)
VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName)

Verifica se uma assinatura digital é válida calculando o valor de hash dos dados especificados em uma parte de uma matriz de bytes usando o algoritmo de hash especificado e comparando-o à assinatura fornecida.

(Herdado de DSA)
VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName, DSASignatureFormat)

Verifica se uma assinatura digital é válida para os dados fornecidos.

(Herdado de DSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName)

Verifica se uma assinatura digital é válida calculando o valor de hash dos dados em um intervalo de bytes usando o algoritmo de hash especificados e comparando-o à assinatura fornecida.

(Herdado de DSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Verifica se uma assinatura digital é válida para os dados fornecidos.

(Herdado de DSA)
VerifyData(Stream, Byte[], HashAlgorithmName)

Verifica se uma assinatura digital é válida calculando o valor de hash do fluxo especificado usando o algoritmo de hash especificado e comparando-o à assinatura fornecida.

(Herdado de DSA)
VerifyData(Stream, Byte[], HashAlgorithmName, DSASignatureFormat)

Verifica se uma assinatura digital é válida para os dados fornecidos.

(Herdado de DSA)
VerifyDataCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Verifica se uma assinatura digital é válida para os dados fornecidos.

(Herdado de DSA)
VerifyDataCore(Stream, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Verifica se uma assinatura digital é válida para os dados fornecidos.

(Herdado de DSA)
VerifyHash(Byte[], String, Byte[])

Verifica os dados de assinatura especificados comparando-os à assinatura calculada para o valor de hash especificado.

VerifySignature(Byte[], Byte[])

Verifica a assinatura DSA para os dados especificados.

VerifySignature(Byte[], Byte[], DSASignatureFormat)

Verifica se uma assinatura digital é válida para o hash fornecido.

(Herdado de DSA)
VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>)

Verifica se a assinatura digital é válida para um hash de dados fornecido.

(Herdado de DSA)
VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, DSASignatureFormat)

Verifica se uma assinatura digital é válida para o hash fornecido.

(Herdado de DSA)
VerifySignatureCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, DSASignatureFormat)

Verifica se uma assinatura digital é válida para o hash fornecido.

(Herdado de DSA)

Implantações explícitas de interface

IDisposable.Dispose()

Esta API dá suporte à infraestrutura do produto e não deve ser usada diretamente do seu código.

Para obter uma descrição desse membro, confira Dispose().

(Herdado de AsymmetricAlgorithm)

Aplica-se a

Confira também