RSA.TryDecrypt Método

Definición

Intenta descifrar los datos de entrada mediante el modo de relleno especificado, escribiendo el resultado en un búfer proporcionado.

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

Parámetros

data
ReadOnlySpan<Byte>

Datos que se van a descifrar.

destination
Span<Byte>

Búfer para recibir los datos descifrados.

padding
RSAEncryptionPadding

Modo de relleno.

bytesWritten
Int32

Cuando este método devuelve , contiene el número total de bytes escritos en destination. Este parámetro se trata como sin inicializar.

Devoluciones

true es si destination es lo suficientemente largo como para recibir los datos descifrados; de lo contrario, falsees .

Excepciones

padding es null.

padding es desconocido o no es compatible con esta implementación.

O bien

La longitud de data no es igual al número de bytes de KeySize.

O bien

Esta instancia representa solo una clave pública.

O bien

Error en la operación de descifrado.

Comentarios

La implementación predeterminada de este método llama Decrypt(Byte[], RSAEncryptionPadding) a y copia el resultado en destination. Los tipos derivados deben invalidar este método para evitar la creación de la matriz intermedia.

El algoritmo de descifrado RSA siempre generará una salida menor que la entrada, por lo que este método nunca devolverá false cuando destination.Length >= data.Length.

Se aplica a

Consulte también