RSA.TryDecrypt Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Intenta descifrar los datos de entrada usando el modo de relleno especificado y 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.
- padding
- RSAEncryptionPadding
Modo de relleno.
- bytesWritten
- Int32
Cuando este método devuelve un valor, el número total de bytes escritos en destination
. Este parámetro se trata como sin inicializar.
Devoluciones
Es true
si destination
es lo suficientemente largo como para recibir los datos descifrados; de lo contrario, es false
.
Excepciones
padding
es null
.
padding
es un valor desconocido o no se admite para 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
Se ha producido un 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
.