Partilhar via


RSA.TryEncrypt Método

Definição

Tenta criptografar os dados de entrada com um modo de preenchimento especificado em um buffer fornecido.

public:
 virtual bool TryEncrypt(ReadOnlySpan<System::Byte> data, Span<System::Byte> destination, System::Security::Cryptography::RSAEncryptionPadding ^ padding, [Runtime::InteropServices::Out] int % bytesWritten);
public virtual bool TryEncrypt (ReadOnlySpan<byte> data, Span<byte> destination, System.Security.Cryptography.RSAEncryptionPadding padding, out int bytesWritten);
abstract member TryEncrypt : ReadOnlySpan<byte> * Span<byte> * System.Security.Cryptography.RSAEncryptionPadding * int -> bool
override this.TryEncrypt : ReadOnlySpan<byte> * Span<byte> * System.Security.Cryptography.RSAEncryptionPadding * int -> bool
Public Overridable Function TryEncrypt (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 criptografados.

destination
Span<Byte>

O buffer que receberá os dados criptografados.

padding
RSAEncryptionPadding

O modo de preenchimento.

bytesWritten
Int32

Quando esse método é retornado, o número total de bytes gravados em destination. Esse parâmetro é tratado como não inicializado.

Retornos

true se destination for longo o suficiente para receber os dados criptografados; caso contrário, false.

Exceções

padding é null.

padding é desconhecido ou não há suporte para ele nesta implementação.

- ou -

O tamanho de data é muito longo para a combinação de KeySize e o preenchimento selecionado.

- ou -

Falha na operação de criptografia.

Comentários

A implementação padrão desse método chama Encrypt(Byte[], RSAEncryptionPadding) e copia o resultado para destination. Tipos derivados devem substituir esse método para evitar a criação de matriz intermediária.

O algoritmo de criptografia RSA sempre produzirá uma saída igual ao número de bytes necessários para KeySize bits.

Aplica-se a

Confira também