RSA.TryDecrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32) Método

Definição

Tenta descriptografar os dados de entrada usando o modo de preenchimento especificado, gravando o resultado em um buffer fornecido.Attempts to decrypt the input data using the specified padding mode, writing the result into a provided buffer.

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>

Os dados a serem descriptografados.The data to decrypt.

destination
Span<Byte>

O buffer que receberá os dados descriptografados.The buffer to receive the decrypted data.

padding
RSAEncryptionPadding

O modo de preenchimento.The padding mode.

bytesWritten
Int32

Quando esse método é retornado, o número total de bytes gravados em destination.When this method returns, the total number of bytes written into destination. Esse parâmetro é tratado como não inicializado.This parameter is treated as uninitialized.

Retornos

Boolean

true se destination for longo o suficiente para receber os dados descriptografados; caso contrário, false.true if destination is long enough to receive the decrypted data; otherwise, false.

Exceções

padding é null.padding is null.

padding é desconhecido ou não há suporte para ele nesta implementação.padding is unknown, or not supported by this implementation.

- ou --or-

O tamanho de data não é igual ao número de bytes de KeySize.The length of data is not equal to the number of bytes for KeySize.

- ou --or-

Essa instância representa apenas uma chave pública.This instance represents only a public key.

- ou --or-

Falha na operação de descriptografia.The decryption operation failed.

Comentários

A implementação padrão desse método chama Decrypt(Byte[], RSAEncryptionPadding) e copia o resultado para destination .The default implementation of this method calls Decrypt(Byte[], RSAEncryptionPadding) and copies the result to destination. Tipos derivados devem substituir esse método para evitar a criação de matriz intermediária.Derived types should override this method to avoid the intermediate array creation.

O algoritmo de descriptografia RSA sempre produzirá uma saída menor do que a entrada, portanto, esse método nunca retornará false quando destination.Length >= data.Length .The RSA decryption algorithm will always produce an output smaller than the input, therefore this method will never return false when destination.Length >= data.Length.

Aplica-se a

Confira também