RSA Classe

Definizione

Rappresenta la classe di base da cui ereditano tutte le implementazioni dell'algoritmo RSA .

public ref class RSA abstract : System::Security::Cryptography::AsymmetricAlgorithm
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
type RSA = class
    inherit AsymmetricAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
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 in base alla RSA classe base anziché a una classe derivata specifica. Le classi derivate sono destinate all'interoperabilità con le librerie di crittografia di sistema sottostanti.

Costruttori

Nome Descrizione
RSA()

Inizializza una nuova istanza della classe RSA.

Campi

Nome Descrizione
KeySizeValue

Rappresenta le dimensioni, in bit, del modulo di chiave utilizzato dall'algoritmo asimmetrico.

(Ereditato da AsymmetricAlgorithm)
LegalKeySizesValue

Specifica le dimensioni delle chiavi supportate dall'algoritmo asimmetrico.

(Ereditato da AsymmetricAlgorithm)

Proprietà

Nome Descrizione
KeyExchangeAlgorithm

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

KeyExchangeAlgorithm

In caso di override in una classe derivata, ottiene il nome dell'algoritmo di scambio di chiavi. In caso contrario, genera un'eccezione NotImplementedException.

(Ereditato da AsymmetricAlgorithm)
KeySize

Ottiene o imposta le dimensioni, in bit, del modulo di chiave utilizzato 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 questa implementazione di RSA.

SignatureAlgorithm

Se implementato in una classe derivata, ottiene il nome dell'algoritmo di firma. In caso contrario, genera sempre un'eccezione NotImplementedException.

(Ereditato da AsymmetricAlgorithm)

Metodi

Nome Descrizione
Clear()

Rilascia tutte le risorse usate dalla AsymmetricAlgorithm classe .

(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 AsymmetricAlgorithm classe .

(Ereditato da AsymmetricAlgorithm)
Dispose(Boolean)

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

(Ereditato da AsymmetricAlgorithm)
Encrypt(Byte[], RSAEncryptionPadding)

In caso di 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, crittografa 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 PrivateKeyInfo PKCS#8.

(Ereditato da AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

Esporta la chiave corrente nel formato PrivateKeyInfo PKCS#8, 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 chiave pubblica della chiave corrente nel formato RSAPublicKey PKCS#1.

ExportRSAPublicKeyPem()

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

ExportSubjectPublicKeyInfo()

Esporta la parte 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)
FromXmlString(String)

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

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetMaxOutputSize()

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

GetType()

Ottiene il 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)

In caso di 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)

In caso di 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 char, sostituendo le chiavi per questo oggetto.

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

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

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

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

ImportFromPem(ReadOnlySpan<Char>)

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

ImportParameters(RSAParameters)

In caso di override in una classe derivata, importa l'oggetto specificato RSAParameters.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

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

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Quando ne viene eseguito l'override in una classe derivata, importa la coppia di chiavi pubblica/privata da una struttura PrivateKeyInfo PKCS#8 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 RSAPrivateKey PKCS#1 dopo la decrittografia, sostituendo le chiavi per questo oggetto.

ImportRSAPublicKey(ReadOnlySpan<Byte>, Int32)

Importa la chiave pubblica da una struttura RSAPublicKey PKCS#1 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 ne viene eseguito l'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 del Objectcorrente.

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

Calcola il valore hash della matrice di byte specificata usando l'algoritmo hash e la modalità di riempimento 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 riempimento 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 la spaziatura interna specificata.

SignHash(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

Calcola la firma per il valore hash specificato usando la spaziatura interna specificata.

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 corrente RSA .

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

Tenta di decrittografare i dati di input usando la modalità di riempimento specificata, scrivendo il risultato in un buffer fornito.

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

Tenta di crittografare i dati di input con una modalità di riempimento specificata in un buffer fornito.

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

Tenta di esportare la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo in un buffer fornito, 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 fornito, 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 fornito, usando una password basata su caratteri.

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

Quando ne viene eseguito l'override in una classe derivata, tenta di esportare la chiave corrente nel formato PKCS#8 EncryptedPrivateKeyInfo in un buffer fornito, 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 PrivateKeyInfo PKCS#8 in un buffer fornito.

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

(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 fornito.

TryExportRSAPrivateKeyPem(Span<Char>, Int32)

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

TryExportRSAPublicKey(Span<Byte>, Int32)

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

TryExportRSAPublicKeyPem(Span<Char>, Int32)

Tenta di esportare la chiave corrente nel formato PKCS#1 RSAPublicKey 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 fornito.

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

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

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

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

Tenta di calcolare l'hash dei dati forniti usando l'algoritmo specificato, scrivendo i risultati in un buffer fornito.

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

Tenta di eseguire l'hashing dei dati forniti con l'algoritmo specificato e firmare l'hash con la chiave corrente, scrivendo la firma in un buffer fornito.

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

Tenta di firmare l'hash con la chiave corrente, scrivendo la firma in un buffer fornito.

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

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

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

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

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

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

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

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

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

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

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

Implementazioni dell'interfaccia esplicita

Nome Descrizione
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