Condividi tramite


RSA Classe

Definizione

Rappresenta la classe di base dalla quale ereditano tutte le implementazioni dell'algoritmo RSA.

public ref class RSA abstract : System::Security::Cryptography::AsymmetricAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type RSA = class
    inherit AsymmetricAlgorithm
type RSA = class
    inherit AsymmetricAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type RSA = class
    inherit AsymmetricAlgorithm
Public MustInherit Class RSA
Inherits AsymmetricAlgorithm
Ereditarietà
Derivato
Attributi

Commenti

Gli sviluppatori sono invitati a programmare sulla RSA classe base anziché su qualsiasi classe derivata specifica. Le classi derivate sono destinate all'interoperabilità con le librerie di crittografia del sistema sottostanti.

Costruttori

RSA()

Inizializza una nuova istanza della classe RSA.

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à

KeyExchangeAlgorithm

Ottiene il nome dell'algoritmo di scambio delle chiavi disponibile con l'implementazione di RSA.

KeyExchangeAlgorithm

Quando ne viene eseguito l'override in una classe derivata, ottiene il nome dell'algoritmo di scambio delle chiavi; in caso contrario, genera NotImplementedException.

(Ereditato da AsymmetricAlgorithm)
KeySize

Ottiene o imposta la dimensione in bit del modulo della chiave usato dall'algoritmo asimmetrico.

(Ereditato da AsymmetricAlgorithm)
LegalKeySizes

Ottiene le dimensioni delle chiavi supportate dall'algoritmo asimmetrico.

(Ereditato da AsymmetricAlgorithm)
SignatureAlgorithm

Ottiene il nome dell'algoritmo di firma disponibile con l'implementazione di RSA.

SignatureAlgorithm

Quando ne viene eseguito l'override in una classe derivata, ottiene il nome dell'algoritmo di scambio delle chiavi; in caso contrario, genera sempre NotImplementedException.

(Ereditato da AsymmetricAlgorithm)

Metodi

Clear()

Rilascia tutte le risorse usate dalla classe AsymmetricAlgorithm.

(Ereditato da AsymmetricAlgorithm)
Create()

Crea un'istanza dell'implementazione predefinita dell'algoritmo RSA.

Create(Int32)

Crea una nuova chiave RSA temporanea con le dimensioni della chiave specificate.

Create(RSAParameters)

Crea una nuova chiave RSA temporanea con i parametri di chiave RSA specificati.

Create(String)
Obsoleti.

Crea un'istanza dell'implementazione specificata di RSA.

Decrypt(Byte[], RSAEncryptionPadding)

Quando è sottoposto a override in una classe derivata, decrittografa i dati di input usando la modalità di riempimento specificata.

Decrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

Decrittografa i dati di input usando la modalità di riempimento specificata.

Decrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding)

Decrittografa i dati di input usando la modalità di riempimento specificata.

DecryptValue(Byte[])
Obsoleti.

Quando è sottoposto a override in una classe derivata, decrittografa i dati di input usando la chiave privata.

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)
Encrypt(Byte[], RSAEncryptionPadding)

Quando è sottoposto a override in una classe derivata, crittografa i dati di input usando la modalità di riempimento specificata.

Encrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

Crittografa i dati di input usando la modalità di riempimento specificata.

Encrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding)

Crittografa i dati di input usando la modalità di riempimento specificata.

EncryptValue(Byte[])
Obsoleti.

Quando è sottoposto a override in una classe derivata, decrittografa i dati di input usando la chiave pubblica.

Equals(Object)

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

(Ereditato da Object)
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)

Quando è sottoposto a override in una classe derivata, esporta RSAParameters.

ExportPkcs8PrivateKey()

Esporta la chiave corrente nel formato PKCS#8 PrivateKeyInfo.

(Ereditato da AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

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

(Ereditato da AsymmetricAlgorithm)
ExportRSAPrivateKey()

Esporta la chiave corrente nel formato PKCS#1 RSAPrivateKey.

ExportRSAPrivateKeyPem()

Esporta la chiave corrente nel formato PKCS#1 RSAPrivateKey, con codifica PEM.

ExportRSAPublicKey()

Esporta la parte della chiave pubblica della chiave corrente nel formato PKCS#1 RSAPublicKey.

ExportRSAPublicKeyPem()

Esporta la parte della chiave pubblica della chiave corrente nel formato PKCS#1 RSAPublicKey, codificata CON PEM.

ExportSubjectPublicKeyInfo()

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

(Ereditato da AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

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

(Ereditato da AsymmetricAlgorithm)
FromXmlString(String)

Inizializza un oggetto RSA dalle informazioni sulla chiave di una stringa XML.

FromXmlString(String)

Quando ne viene eseguito l'override in una classe derivata, ricostruisce un oggetto AsymmetricAlgorithm da una stringa XML; in caso contrario, genera NotImplementedException.

(Ereditato da AsymmetricAlgorithm)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetMaxOutputSize()

Ottiene il numero massimo di byte che un'operazione RSA può produrre.

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.

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.

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)

Quando sottoposto a override in una classe derivata, 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 AsymmetricAlgorithm)
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)

Quando sottoposto a override in una classe derivata, 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 AsymmetricAlgorithm)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

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

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

Quando sottoposto a override in una classe derivata, importa una chiave con codifica PEM RFC 7468 crittografata, sostituendo le chiavi per questo oggetto.

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

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

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

Quando sottoposto a override in una classe derivata, importa una chiave con codifica PEM RFC 7468 crittografata, sostituendo le chiavi per questo oggetto.

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

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

ImportFromPem(ReadOnlySpan<Char>)

Quando sottoposto a override in una classe derivata, importa una chiave codificata in modo testuale RFC 7468, sostituendo le chiavi per questo oggetto.

(Ereditato da AsymmetricAlgorithm)
ImportParameters(RSAParameters)

Quando è sottoposto a override in una classe derivata, importa l'oggetto RSAParameters 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.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Quando sottoposto a override in una classe derivata, importa la coppia di chiavi pubblica/privata da una struttura PKCS#8 PrivateKeyInfo dopo la decrittografia, sostituendo le chiavi per questo oggetto.

(Ereditato da AsymmetricAlgorithm)
ImportRSAPrivateKey(ReadOnlySpan<Byte>, Int32)

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

ImportRSAPublicKey(ReadOnlySpan<Byte>, Int32)

Importa la chiave pubblica da una struttura PKCS#1 RSAPublicKey dopo la decrittografia, sostituendo le chiavi per questo oggetto.

ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

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

ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Quando sottoposto a override in una classe derivata, importa la chiave pubblica da una struttura X.509 SubjectPublicKeyInfo dopo la decrittografia, sostituendo le chiavi per questo oggetto.

(Ereditato da AsymmetricAlgorithm)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
SignData(Byte[], HashAlgorithmName, RSASignaturePadding)

Calcola il valore hash della matrice di byte specificata usando l'algoritmo hash e la modalità di spaziatura interna specificati e firma il valore hash risultante.

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

Calcola il valore hash di una parte della matrice di byte specificata usando l'algoritmo hash e la modalità di riempimento specificati e firma il valore hash risultante.

SignData(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcola il valore hash dei dati specificati e lo firma.

SignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcola l'hash dei dati forniti con l'algoritmo specificato e firma l'hash con la chiave corrente, scrivendo la firma in un buffer fornito.

SignData(Stream, HashAlgorithmName, RSASignaturePadding)

Calcola il valore hash del flusso specificato usando l'algoritmo hash e la modalità di spaziatura interna specificati e firma il valore hash risultante.

SignHash(Byte[], HashAlgorithmName, RSASignaturePadding)

Quando è sottoposto a override in una classe derivata, calcola la firma per il valore hash specificato usando il riempimento specificato.

SignHash(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcola la firma per il valore hash specificato usando il riempimento specificato.

SignHash(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding)

Firma l'hash con la chiave corrente, scrivendo la firma in un buffer fornito.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
ToXmlString(Boolean)

Crea e restituisce una stringa XML contenente la chiave dell'oggetto RSA corrente.

ToXmlString(Boolean)

Quando ne viene eseguito l'override in una classe derivata, crea e restituisce una rappresentazione di stringa XML dell'oggetto AsymmetricAlgorithm corrente; in caso contrario, genera NotImplementedException.

(Ereditato da AsymmetricAlgorithm)
TryDecrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

Prova a decrittografare i dati di input usando la modalità di riempimento specificata e scrivendo il risultato in un buffer specificato.

TryEncrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

Prova a crittografare i dati di input con una modalità di riempimento specificata in un buffer specificato.

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.

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Quando sottoposto a override in una classe derivata, tenta di esportare la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo in un buffer specificato, usando una password basata su byte.

(Ereditato da AsymmetricAlgorithm)
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.

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

Quando sottoposto a override in una classe derivata, tenta di esportare la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo in un buffer specificato, usando una password basata su caratteri.

(Ereditato da AsymmetricAlgorithm)
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.

TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Quando sottoposto a override in una classe derivata, tenta di esportare la chiave corrente nel formato PKCS#8 PrivateKeyInfo in un buffer specificato.

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

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

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

Tenta di esportare la chiave corrente nel formato PKCS#1 RSAPrivateKey in un buffer specificato.

TryExportRSAPrivateKeyPem(Span<Char>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#1 CON codifica PEM in un buffer fornito.

TryExportRSAPublicKey(Span<Byte>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#1 RSAPublicKey in un buffer specificato.

TryExportRSAPublicKeyPem(Span<Char>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#1 CON codifica PEM in un buffer fornito.

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

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

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Quando sottoposto a override in una classe derivata, tenta di esportare la chiave corrente nel formato X.509 SubjectPublicKeyInfo in un buffer specificato.

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

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

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

Prova a calcolare l'hash dei dati specificati usando l'algoritmo specificato e scrivendo i risultati in un buffer specificato.

TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding, Int32)

Prova a eseguire l'hashing dei dati specificati con l'algoritmo specificato e di firmare l'hash con la chiave corrente, scrivendo la firma in un buffer specificato.

TrySignHash(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding, Int32)

Prova a firmare l'hash con la chiave corrente, scrivendo la firma in un buffer specificato.

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

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

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

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

VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

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

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

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

VerifyHash(Byte[], Byte[], HashAlgorithmName, RSASignaturePadding)

Verifica che una firma digitale sia valida determinando il valore hash nella firma tramite l'algoritmo hash e la spaziatura interna specificati e confrontandolo con il valore hash indicato.

VerifyHash(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Verifica che una firma digitale sia valida determinando il valore hash nella firma tramite l'algoritmo hash e la spaziatura interna specificati e confrontandolo con il valore hash indicato.

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