RSA.TryDecrypt Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mencoba mendekripsi data input menggunakan mode padding yang ditentukan, menulis hasilnya ke dalam buffer yang disediakan.
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
Parameter
- data
- ReadOnlySpan<Byte>
Data yang akan didekripsi.
- padding
- RSAEncryptionPadding
Mode padding.
- bytesWritten
- Int32
Ketika metode ini kembali, jumlah total byte yang ditulis ke dalam destination
. Parameter ini diperlakukan sebagai tidak diinisialisasi.
Mengembalikan
true
jika destination
cukup lama untuk menerima data yang didekripsi; jika tidak, false
.
Pengecualian
padding
adalah null
.
padding
tidak diketahui, atau tidak didukung oleh implementasi ini.
-atau-
Panjang data
tidak sama dengan jumlah byte untuk KeySize.
-atau-
Instans ini hanya mewakili kunci umum.
-atau-
Operasi dekripsi gagal.
Keterangan
Implementasi default dari metode ini memanggil Decrypt(Byte[], RSAEncryptionPadding) dan menyalin hasilnya ke destination
.
Jenis turunan harus mengambil alih metode ini untuk menghindari pembuatan array perantara.
Algoritma dekripsi RSA akan selalu menghasilkan output yang lebih kecil dari input, oleh karena itu metode ini tidak akan pernah kembali false
ketika destination.Length >= data.Length
.