Condividi tramite


DSACryptoServiceProvider Classe

Definizione

Definisce un oggetto wrapper per accedere all'implementazione CSP (Cryptographic Service Provider, provider del servizio di crittografia) dell'algoritmo DSA. La classe non può essere ereditata.

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
Ereditarietà
DSACryptoServiceProvider
Attributi
Implementazioni

Commenti

È possibile usare la DSACryptoServiceProvider classe per creare firme digitali e proteggere l'integrità dei dati.

Per usare un sistema a chiave pubblica per firmare digitalmente un messaggio, il mittente applica innanzitutto una funzione hash al messaggio per creare un digest del messaggio. Il mittente crittografa quindi il digest del messaggio con la chiave privata del mittente per creare la firma personale del mittente. Dopo aver ricevuto il messaggio e la firma, il ricevitore decrittografa la firma usando la chiave pubblica del mittente per recuperare il digest del messaggio e esegue l'hashing del messaggio usando lo stesso algoritmo hash usato dal mittente. Se il digest del messaggio calcolato dal ricevitore corrisponde esattamente al digest del messaggio ricevuto dal mittente, il ricevitore può assicurarsi che il messaggio non sia stato modificato durante il transito. Si noti che una firma può essere verificata da chiunque, perché la chiave pubblica del mittente è una conoscenza comune.

Nota

I creatori dell'algoritmo DSA hanno ritirato il supporto. Prendere in considerazione l'uso della RSACryptoServiceProvider classe anziché della DSACryptoServiceProvider classe . Usare DSACryptoServiceProvider solo per la compatibilità con applicazioni e dati legacy.

Questo algoritmo supporta lunghezze di chiave da 512 bit a 1024 bit in incrementi di 64 bit.

Costruttori

DSACryptoServiceProvider()

Inizializza una nuova istanza della classe DSACryptoServiceProvider.

DSACryptoServiceProvider(CspParameters)

Inizializza una nuova istanza della classe DSACryptoServiceProvider con i parametri specificati del provider del servizio di crittografia (CSP).

DSACryptoServiceProvider(Int32)

Inizializza una nuova istanza della classe DSACryptoServiceProvider con la dimensione della chiave specificata.

DSACryptoServiceProvider(Int32, CspParameters)

Inizializza una nuova istanza della classe DSACryptoServiceProvider con la dimensione della chiave e i parametri specificati del provider del servizio di crittografia (CSP).

Campi

KeySizeValue

Rappresenta la dimensione in bit del modulo della chiave usato dall'algoritmo asimmetrico.

(Ereditato da AsymmetricAlgorithm)
LegalKeySizesValue

Specifica le dimensioni delle chiavi supportate dall'algoritmo asimmetrico.

(Ereditato da AsymmetricAlgorithm)

Proprietà

CspKeyContainerInfo

Ottiene un oggetto CspKeyContainerInfo che descrive informazioni aggiuntive su una coppia di chiavi crittografiche.

KeyExchangeAlgorithm

Ottiene il nome dell'algoritmo di scambio delle chiavi.

KeySize

Ottiene la dimensione in bit della chiave utilizzata dall'algoritmo asimmetrico.

LegalKeySizes

Ottiene le dimensioni delle chiavi supportate dall'algoritmo asimmetrico.

LegalKeySizes

Ottiene le dimensioni delle chiavi supportate dall'algoritmo asimmetrico.

(Ereditato da AsymmetricAlgorithm)
PersistKeyInCsp

Ottiene o imposta un valore che indica se la chiave deve essere mantenuta nel provider del servizio di crittografia (CSP).

PublicOnly

Ottiene un valore che indica se l'oggetto DSACryptoServiceProvider contiene solo una chiave pubblica.

SignatureAlgorithm

Ottiene il nome dell'algoritmo di firma.

UseMachineKeyStore

Ottiene o imposta un valore che indica se la chiave deve essere mantenuta nell'archivio delle chiavi del computer invece che nell'archivio del profilo utente.

Metodi

Clear()

Rilascia tutte le risorse usate dalla classe AsymmetricAlgorithm.

(Ereditato da AsymmetricAlgorithm)
CreateSignature(Byte[])

Crea la firma DSA per i dati specificati.

CreateSignature(Byte[], DSASignatureFormat)

Crea la firma DSA del valore hash specificato nel formato indicato.

(Ereditato da DSA)
CreateSignatureCore(ReadOnlySpan<Byte>, DSASignatureFormat)

Crea la firma DSA del valore hash specificato nel formato indicato.

(Ereditato da DSA)
Dispose()

Rilascia tutte le risorse usate dall'istanza corrente della classe AsymmetricAlgorithm.

(Ereditato da AsymmetricAlgorithm)
Dispose(Boolean)

Rilascia le risorse non gestite usate dalla classe AsymmetricAlgorithm e facoltativamente le risorse gestite.

(Ereditato da AsymmetricAlgorithm)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
ExportCspBlob(Boolean)

Esporta un blob che contiene le informazioni sulla chiave associate a un oggetto DSACryptoServiceProvider.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

Esporta la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo con una password basata su byte.

(Ereditato da AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

Esporta la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo con una password basata su caratteri.

(Ereditato da AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters)

Esporta la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo con una password basata su byte, con codifica PEM.

(Ereditato da AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters)

Esporta la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo con una password basata su caratteri, con codifica PEM.

(Ereditato da AsymmetricAlgorithm)
ExportParameters(Boolean)

Esporta DSAParameters.

ExportPkcs8PrivateKey()

Esporta la chiave corrente nel formato PKCS#8 PrivateKeyInfo.

(Ereditato da AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

Esporta la chiave corrente nel formato PRIVATEKeyInfo PKCS#8, con codifica PEM.

(Ereditato da AsymmetricAlgorithm)
ExportSubjectPublicKeyInfo()

Esporta la parte della chiave pubblica della chiave corrente nel formato X.509 SubjectPublicKeyInfo.

(Ereditato da AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

Esporta la parte chiave pubblica della chiave corrente nel formato X.509 SubjectPublicKeyInfo, con codifica PEM.

(Ereditato da AsymmetricAlgorithm)
Finalize()

Libera tutte le risorse associate a questa istanza.

FromXmlString(String)

Consente di ricostruire un oggetto DSA da una stringa XML.

(Ereditato da DSA)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetMaxSignatureSize(DSASignatureFormat)

Ottiene le dimensioni massime, in byte, per una firma prodotta da questa chiave nel formato indicato.

(Ereditato da DSA)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
HashData(Byte[], Int32, Int32, HashAlgorithmName)

Quando sottoposto a override in una classe derivata, calcola il valore hash di una parte specificata di una matrice di byte usando un algoritmo hash specificato.

(Ereditato da DSA)
HashData(Stream, HashAlgorithmName)

Quando sottoposto a override in una classe derivata, calcola il valore hash di un flusso binario specificato usando un algoritmo hash specificato.

(Ereditato da DSA)
ImportCspBlob(Byte[])

Importa un blob che rappresenta le informazioni sulla chiave DSA.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Importa la coppia di chiavi pubblica/privata da una struttura PKCS#8 EncryptedPrivateKeyInfo dopo la decrittografia con una password basata su byte, sostituendo le chiavi per questo oggetto.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Importa la coppia di chiavi pubblica/privata da una struttura PKCS#8 EncryptedPrivateKeyInfo dopo la decrittografia con una password basata su byte, sostituendo le chiavi per questo oggetto.

(Ereditato da DSA)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Importa la coppia di chiavi pubblica/privata da una struttura PKCS#8 EncryptedPrivateKeyInfo dopo la decrittografia con una password basata su caratteri, sostituendo le chiavi per questo oggetto.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Importa la coppia di chiavi pubblica/privata da una struttura PKCS#8 EncryptedPrivateKeyInfo dopo la decrittografia con una password basata su caratteri, sostituendo le chiavi per questo oggetto.

(Ereditato da DSA)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

Importa una chiave privata con codifica PEM RFC 7468 crittografata, sostituendo le chiavi per questo oggetto.

(Ereditato da DSA)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Importa una chiave privata con codifica PEM RFC 7468 crittografata, sostituendo le chiavi per questo oggetto.

(Ereditato da DSA)
ImportFromPem(ReadOnlySpan<Char>)

Importa una chiave con codifica PEM RFC 7468, sostituendo le chiavi per questo oggetto.

(Ereditato da DSA)
ImportParameters(DSAParameters)

Importa l'oggetto DSAParameters specificato.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Importa la coppia di chiavi pubblica/privata da una struttura PKCS#8 PrivateKeyInfo dopo la decrittografia, sostituendo le chiavi per questo oggetto.

(Ereditato da DSA)
ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Importa la chiave pubblica da una struttura X.509 SubjectPublicKeyInfo dopo la decrittografia, sostituendo le chiavi per questo oggetto.

(Ereditato da DSA)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
SignData(Byte[])

Calcola il valore hash della matrice di byte specificata, quindi di firmare il valore hash risultante.

SignData(Byte[], HashAlgorithmName)

Calcola il valore hash della matrice di byte specificata usando l'algoritmo hash specificato e firma il valore hash risultante.

(Ereditato da DSA)
SignData(Byte[], HashAlgorithmName, DSASignatureFormat)

Calcola il valore hash dei dati specificati e li firma usando il formato di firma specificato.

(Ereditato da DSA)
SignData(Byte[], Int32, Int32)

Firma una matrice di byte dal punto iniziale al punto finale specificati.

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

Calcola il valore hash di una parte della matrice di byte specificata usando l'algoritmo hash specificato e firma il valore hash risultante.

(Ereditato da DSA)
SignData(Byte[], Int32, Int32, HashAlgorithmName, DSASignatureFormat)

Calcola il valore hash dei dati specificati e li firma usando il formato di firma specificato.

(Ereditato da DSA)
SignData(Stream)

Calcola il valore hash del flusso di input specificato, quindi di firmare il valore hash risultante.

SignData(Stream, HashAlgorithmName)

Calcola il valore hash del flusso specificato usando l'algoritmo hash specificato e firma il valore hash risultante.

(Ereditato da DSA)
SignData(Stream, HashAlgorithmName, DSASignatureFormat)

Calcola il valore hash dei dati specificati e li firma usando il formato di firma specificato.

(Ereditato da DSA)
SignDataCore(ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Calcola il valore hash dei dati specificati e li firma usando il formato di firma specificato.

(Ereditato da DSA)
SignDataCore(Stream, HashAlgorithmName, DSASignatureFormat)

Calcola il valore hash dei dati specificati e li firma usando il formato di firma specificato.

(Ereditato da DSA)
SignHash(Byte[], String)

Calcola la firma per il valore hash specificato crittografandola con la chiave privata.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
ToXmlString(Boolean)

Consente di creare e restituire una rappresentazione in forma di stringa XML dell'oggetto DSA corrente.

(Ereditato da DSA)
TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

Prova a creare la firma DSA per il valore hash specificato nel formato indicato e la inserisce nel buffer specificato.

(Ereditato da DSA)
TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, Int32)

Tenta di creare la firma DSA per l'hash specificato nel buffer fornito.

(Ereditato da DSA)
TryCreateSignatureCore(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

Prova a creare la firma DSA per il valore hash specificato nel formato indicato e la inserisce nel buffer specificato.

(Ereditato da DSA)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo in un buffer specificato, usando una password basata su byte.

(Ereditato da DSA)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo in un buffer specificato, usando una password basata su caratteri.

(Ereditato da DSA)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters, Span<Char>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo con una password basata su byte, con codifica PEM.

(Ereditato da AsymmetricAlgorithm)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters, Span<Char>, Int32)

Esporta la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo con una password basata su caratteri, con codifica PEM.

(Ereditato da AsymmetricAlgorithm)
TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#8 PrivateKeyInfo in un buffer specificato.

(Ereditato da DSA)
TryExportPkcs8PrivateKeyPem(Span<Char>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#8 PrivateKeyInfo con codifica PEM in un buffer specificato.

(Ereditato da AsymmetricAlgorithm)
TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Tenta di esportare la chiave corrente nel formato X.509 SubjectPublicKeyInfo in un buffer specificato.

(Ereditato da DSA)
TryExportSubjectPublicKeyInfoPem(Span<Char>, Int32)

Tenta di esportare la chiave corrente nel formato X.509 SubjectPublicKeyInfo con codifica PEM in un buffer specificato.

(Ereditato da AsymmetricAlgorithm)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

Tenta di calcolare il valore hash dei dati specificati in un buffer specificato.

(Ereditato da DSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, DSASignatureFormat, Int32)

Prova a creare la firma DSA per i dati specificati nel formato indicato e la inserisce nel buffer specificato.

(Ereditato da DSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

Tenta di creare la firma DSA per i dati specificati nel buffer fornito.

(Ereditato da DSA)
TrySignDataCore(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, DSASignatureFormat, Int32)

Prova a creare la firma DSA per i dati specificati nel formato indicato e la inserisce nel buffer specificato.

(Ereditato da DSA)
VerifyData(Byte[], Byte[])

Verifica i dati della firma specificata confrontandola con la firma calcolata per i dati specificati.

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

Verifica che una firma digitale sia valida calcolando il valore hash dei dati specificati usando l'algoritmo hash specificato e confrontandolo con la firma fornita.

(Ereditato da DSA)
VerifyData(Byte[], Byte[], HashAlgorithmName, DSASignatureFormat)

Verifica che una firma digitale sia valida per i dati specificati.

(Ereditato da DSA)
VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName)

Verifica che una firma digitale sia valida calcolando il valore hash dei dati in una parte di matrice di byte usando l'algoritmo hash specificato e confrontandolo con la firma fornita.

(Ereditato da DSA)
VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName, DSASignatureFormat)

Verifica che una firma digitale sia valida per i dati specificati.

(Ereditato da DSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName)

Verifica che una firma digitale sia valida calcolando il valore hash dei dati in un intervallo di byte usando l'algoritmo hash specificato e confrontandolo con la firma fornita.

(Ereditato da DSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Verifica che una firma digitale sia valida per i dati specificati.

(Ereditato da DSA)
VerifyData(Stream, Byte[], HashAlgorithmName)

Verifica che una firma digitale sia valida calcolando il valore hash del flusso specificato usando l'algoritmo hash specificato e confrontandolo con la firma fornita.

(Ereditato da DSA)
VerifyData(Stream, Byte[], HashAlgorithmName, DSASignatureFormat)

Verifica che una firma digitale sia valida per i dati specificati.

(Ereditato da DSA)
VerifyDataCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Verifica che una firma digitale sia valida per i dati specificati.

(Ereditato da DSA)
VerifyDataCore(Stream, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Verifica che una firma digitale sia valida per i dati specificati.

(Ereditato da DSA)
VerifyHash(Byte[], String, Byte[])

Verifica i dati della firma specificata confrontandola con la firma calcolata per il valore hash specificato.

VerifySignature(Byte[], Byte[])

Verifica la firma DSA per i dati specificati.

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

Verifica che una firma digitale sia valida per l'hash fornito.

(Ereditato da DSA)
VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>)

Verifica che una firma digitale sia valida per un hash di dati specificato.

(Ereditato da DSA)
VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, DSASignatureFormat)

Verifica che una firma digitale sia valida per l'hash fornito.

(Ereditato da DSA)
VerifySignatureCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, DSASignatureFormat)

Verifica che una firma digitale sia valida per l'hash fornito.

(Ereditato da DSA)

Implementazioni dell'interfaccia esplicita

IDisposable.Dispose()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Per una descrizione di questo membro, vedere Dispose().

(Ereditato da AsymmetricAlgorithm)

Si applica a

Vedi anche