Bagikan melalui


AsymmetricKeyExchangeDeformatter.DecryptKeyExchange(Byte[]) Metode

Definisi

Saat ditimpa di kelas turunan, ekstrak informasi rahasia dari data pertukaran kunci terenkripsi.

public:
 abstract cli::array <System::Byte> ^ DecryptKeyExchange(cli::array <System::Byte> ^ rgb);
public abstract byte[] DecryptKeyExchange (byte[] rgb);
abstract member DecryptKeyExchange : byte[] -> byte[]
Public MustOverride Function DecryptKeyExchange (rgb As Byte()) As Byte()

Parameter

rgb
Byte[]

Data pertukaran kunci tempat informasi rahasia disembunyikan.

Mengembalikan

Byte[]

Informasi rahasia yang berasal dari data pertukaran kunci.

Contoh

Contoh kode berikut menunjukkan cara mengambil alih DecryptKeyExchange metode untuk membuat pertukaran kunci terenkripsi untuk data input yang ditentukan. Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk AsymmetricKeyExchangeDeformatter kelas .

// Create the encrypted key exchange data from the specified input
// data. This method uses the RSA class only. To
// support additional providers or provide custom decryption logic,
// add logic to this member.
public override byte[] DecryptKeyExchange(byte[] rgbData)
{
    byte[] decryptedBytes = null;

    if (_rsaKey != null)
    {
        if (_rsaKey is RSA rsa)
        {
            decryptedBytes = rsa.Decrypt(rgbData, RSAEncryptionPadding.OaepSHA1);
        }
        // Add custom decryption logic here.
    }
    else
    {
        throw new CryptographicUnexpectedOperationException(
            "Cryptography_MissingKey");
    }

    return decryptedBytes;
}
' Create the encrypted key exchange data from the specified input
' data. This method uses the RSA class only. To
' support additional providers or provide custom decryption logic,
' add logic to this member.
Public Overrides Function DecryptKeyExchange(
    ByVal rgbData() As Byte) As Byte()

    Dim decryptedBytes() As Byte

    If (Not rsaKey Is Nothing) Then
        If (TypeOf (rsaKey) Is RSA) Then
            Dim rsa As RSA
            rsa = CType(rsaKey, RSA)

            decryptedBytes = rsa.Decrypt(rgbData, RSAEncryptionPadding.OaepSHA1)
        End If

        ' Add custom decryption logic here.

    Else
        Throw New CryptographicUnexpectedOperationException(
            "Cryptography_MissingKey")
    End If

    Return decryptedBytes
End Function

Keterangan

Anda harus menentukan kunci sebelum memanggil implementasi metode ini.

Berlaku untuk

Lihat juga