RSA.TryDecrypt Metodo

Definizione

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

public:
 virtual bool TryDecrypt(ReadOnlySpan<System::Byte> data, Span<System::Byte> destination, System::Security::Cryptography::RSAEncryptionPadding ^ padding, [Runtime::InteropServices::Out] int % bytesWritten);
public virtual bool TryDecrypt(ReadOnlySpan<byte> data, Span<byte> destination, System.Security.Cryptography.RSAEncryptionPadding padding, out int bytesWritten);
abstract member TryDecrypt : ReadOnlySpan<byte> * Span<byte> * System.Security.Cryptography.RSAEncryptionPadding * int -> bool
override this.TryDecrypt : ReadOnlySpan<byte> * Span<byte> * System.Security.Cryptography.RSAEncryptionPadding * int -> bool
Public Overridable Function TryDecrypt (data As ReadOnlySpan(Of Byte), destination As Span(Of Byte), padding As RSAEncryptionPadding, ByRef bytesWritten As Integer) As Boolean

Parametri

data
ReadOnlySpan<Byte>

Dati da decrittografare.

destination
Span<Byte>

Buffer per ricevere i dati decrittografati.

padding
RSAEncryptionPadding

Modalità di riempimento.

bytesWritten
Int32

Quando termina, questo metodo contiene il numero totale di byte scritti in destination. Questo parametro viene considerato non inizializzato.

Valori restituiti

true se destination è abbastanza lungo per ricevere i dati decrittografati; in caso contrario, false.

Eccezioni

padding è null.

padding è sconosciuto o non supportato da questa implementazione.

oppure

La lunghezza di data non è uguale al numero di byte per KeySize.

oppure

Questa istanza rappresenta solo una chiave pubblica.

oppure

Operazione di decrittografia non riuscita.

Commenti

L'implementazione predefinita di questo metodo chiama Decrypt(Byte[], RSAEncryptionPadding) e copia il risultato in destination. I tipi derivati devono eseguire l'override di questo metodo per evitare la creazione della matrice intermedia.

L'algoritmo di decrittografia RSA produrrà sempre un output inferiore all'input, pertanto questo metodo non restituirà false mai quando destination.Length >= data.Length.

Si applica a

Vedi anche