RSA.TryDecrypt Metoda

Definice

Pokusí se dešifrovat vstupní data pomocí zadaného režimu odsazení a zapíše výsledek do zadané vyrovnávací paměti.

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

Parametry

data
ReadOnlySpan<Byte>

Data k dešifrování.

destination
Span<Byte>

Vyrovnávací paměť pro příjem dešifrovaných dat.

padding
RSAEncryptionPadding

Režim odsazení.

bytesWritten
Int32

Když tato metoda vrátí, celkový počet bajtů zapsaných do destination. Tento parametr se považuje za neinicializovaný.

Návraty

Boolean

true je-li destination dostatečně dlouhá k přijetí dešifrovaných dat; falsev opačném případě .

Výjimky

padding je null.

padding je neznámá nebo není podporována touto implementací.

-nebo-

Délka data není rovna počtu bajtů pro KeySize.

-nebo-

Tato instance představuje pouze veřejný klíč.

-nebo-

Operace dešifrování se nezdařila.

Poznámky

Výchozí implementace této metody volá Decrypt(Byte[], RSAEncryptionPadding) a zkopíruje výsledek do destination. Odvozené typy by měly tuto metodu přepsat, aby se zabránilo vytvoření zprostředkujícího pole.

Algoritmus dešifrování RSA vždy vytvoří výstup menší než vstup, proto se tato metoda nikdy nevrátí false , když destination.Length >= data.Length.

Platí pro

Viz také