DSACryptoServiceProvider Classe

Definição

Define um objeto wrapper para aceder à implementação do fornecedor de serviços criptográficos (CSP) do DSA algoritmo. Esta classe não pode ser herdada.

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

Observações

Pode usar a DSACryptoServiceProvider classe para criar assinaturas digitais e proteger a integridade dos seus dados.

Para usar um sistema de chave pública para assinar digitalmente uma mensagem, o remetente aplica primeiro uma função de hash à mensagem para criar um digest da mensagem. O remetente então encripta o digest da mensagem com a chave privada do remetente para criar a assinatura pessoal do remetente. Ao receber a mensagem e a assinatura, o recetor desencripta a assinatura usando a chave pública do remetente para recuperar o resumo da mensagem e faz o hash da mensagem usando o mesmo algoritmo de hash que o remetente utilizou. Se o digest da mensagem que o recetor calcula corresponder exatamente ao digest da mensagem recebido do remetente, o recetor pode ter a certeza de que a mensagem não foi alterada durante o trânsito. Note que uma assinatura pode ser verificada por qualquer pessoa, porque a chave pública do remetente é de conhecimento comum.

Note

Os criadores do algoritmo DSA retiraram o seu apoio a ele. Considera usar a RSACryptoServiceProvider classe em vez da turma DSACryptoServiceProvider . Use DSACryptoServiceProvider apenas para compatibilidade com aplicações e dados legados.

Este algoritmo suporta comprimentos de chave desde 512 bits até 1024 bits em incrementos de 64 bits.

Construtores

Name Description
DSACryptoServiceProvider()

Inicializa uma nova instância da DSACryptoServiceProvider classe.

DSACryptoServiceProvider(CspParameters)

Inicializa uma nova instância da DSACryptoServiceProvider classe com os parâmetros especificados para o fornecedor de serviços criptográficos (CSP).

DSACryptoServiceProvider(Int32, CspParameters)

Inicializa uma nova instância da DSACryptoServiceProvider classe com o tamanho de chave e parâmetros especificados para o fornecedor de serviços criptográficos (CSP).

DSACryptoServiceProvider(Int32)

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

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
CspKeyContainerInfo

Obtém um CspKeyContainerInfo objeto que descreve informação adicional sobre um par de chaves criptográficas.

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 suportados pelo algoritmo assimétrico.

LegalKeySizes

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

(Herdado de AsymmetricAlgorithm)
PersistKeyInCsp

Recebe ou define um valor que indica se a chave deve ser mantida no fornecedor de serviços criptográficos (CSP).

PublicOnly

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

SignatureAlgorithm

Recebe o nome do algoritmo de assinatura.

UseMachineKeyStore

Recebe ou define um valor que indica se a chave deve ser mantida no armazenamento de chaves do computador em vez do armazenamento de perfil do utilizador.

Métodos

Name Description
Clear()

Liberta todos os recursos usados pela AsymmetricAlgorithm turma.

(Herdado de AsymmetricAlgorithm)
CreateSignature(Byte[])

Cria a DSA assinatura para os dados especificados.

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

Exporta um blob contendo a informação chave associada a um DSACryptoServiceProvider objeto.

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

Exporta o DSAParameters.

ExportPkcs8PrivateKey()

Exporta a chave atual no formato PKCS#8 PrivateKeyInfo.

(Herdado de AsymmetricAlgorithm)
ExportSubjectPublicKeyInfo()

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

(Herdado de AsymmetricAlgorithm)
Finalize()

Liberta todos os recursos associados a esta instância.

FromXmlString(String)

Reconstrói um DSA objeto a partir de uma string XML.

(Herdado de DSA)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

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

Quando sobrescrito numa classe derivada, calcula o valor de hash de uma porção especificada de um array de bytes usando um algoritmo de hash especificado.

(Herdado de DSA)
HashData(Stream, HashAlgorithmName)

Quando sobrescrito numa 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 a informação chave da DSA.

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)

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)
ImportParameters(DSAParameters)

Importa o especificado DSAParameters.

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)

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)
SignData(Byte[], HashAlgorithmName)

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

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

Calcula o valor de hash de uma parte do array de bytes especificado usando o algoritmo de hash especificado e assina o valor de hash resultante.

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

Assina um array de bytes desde o ponto de início especificado até ao ponto final especificado.

SignData(Byte[])

Calcula o valor de hash do array de bytes 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)

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

SignHash(Byte[], String)

Calcula a assinatura para o valor de hash especificado encriptando-a com a chave privada.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
ToXmlString(Boolean)

Cria e devolve uma representação de string XML do objeto atual DSA .

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

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

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

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)
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)
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)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

Tenta calcular o valor de hash dos dados fornecidos num 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)
VerifyData(Byte[], Byte[], HashAlgorithmName)

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

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

Verifica os dados de assinatura especificados comparando-os com a assinatura calculada para os dados especificados.

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

Verifica se uma assinatura digital é válida calculando o valor de hash dos dados numa parte de um array de bytes usando o algoritmo de hash especificado e comparando-o com a assinatura fornecida.

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

Verifica se uma assinatura digital é válida calculando o valor de hash dos dados num intervalo de bytes usando o algoritmo de hash especificado e comparando-o com a assinatura fornecida.

(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 com a assinatura fornecida.

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

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

VerifySignature(Byte[], Byte[])

Verifica a DSA assinatura dos dados especificados.

VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>)

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

(Herdado de DSA)

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

Ver também