共用方式為


RijndaelManaged 類別

定義

警告

The Rijndael and RijndaelManaged types are obsolete. Use Aes instead.

存取 Rijndael 演算法的 Managed 版本。 此類別無法獲得繼承。

public ref class RijndaelManaged sealed : System::Security::Cryptography::Rijndael
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public sealed class RijndaelManaged : System.Security.Cryptography.Rijndael
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("The Rijndael and RijndaelManaged types are obsolete. Use Aes instead.", DiagnosticId="SYSLIB0022", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class RijndaelManaged : System.Security.Cryptography.Rijndael
public sealed class RijndaelManaged : System.Security.Cryptography.Rijndael
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class RijndaelManaged : System.Security.Cryptography.Rijndael
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type RijndaelManaged = class
    inherit Rijndael
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
[<System.Obsolete("The Rijndael and RijndaelManaged types are obsolete. Use Aes instead.", DiagnosticId="SYSLIB0022", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type RijndaelManaged = class
    inherit Rijndael
type RijndaelManaged = class
    inherit Rijndael
[<System.Runtime.InteropServices.ComVisible(true)>]
type RijndaelManaged = class
    inherit Rijndael
Public NotInheritable Class RijndaelManaged
Inherits Rijndael
繼承
屬性

範例

下列範例示範如何使用 類別來加密和解密範例數據 RijndaelManaged

#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Security::Cryptography;


class RijndaelMemoryExample
{
public:
    static array<Byte>^ encryptStringToBytes_AES(String^ plainText, array<Byte>^ Key, array<Byte>^ IV)
    {
        // Check arguments.
        if (!plainText || plainText->Length <= 0)
            throw gcnew ArgumentNullException("plainText");
        if (!Key || Key->Length <= 0)
            throw gcnew ArgumentNullException("Key");
        if (!IV  || IV->Length <= 0)
            throw gcnew ArgumentNullException("IV");

        // Declare the streams used
        // to encrypt to an in memory
        // array of bytes.
        MemoryStream^   msEncrypt;
        CryptoStream^   csEncrypt;
        StreamWriter^   swEncrypt;

        // Declare the RijndaelManaged object
        // used to encrypt the data.
        RijndaelManaged^ aesAlg;

        try
        {
            // Create a RijndaelManaged object
            // with the specified key and IV.
            aesAlg = gcnew RijndaelManaged();
            aesAlg->Padding = PaddingMode::PKCS7;
            aesAlg->Key = Key;
            aesAlg->IV = IV;

            // Create an encryptor to perform the stream transform.
            ICryptoTransform^ encryptor = aesAlg->CreateEncryptor(aesAlg->Key, aesAlg->IV);

            // Create the streams used for encryption.
            msEncrypt = gcnew MemoryStream();
            csEncrypt = gcnew CryptoStream(msEncrypt, encryptor, CryptoStreamMode::Write);
            swEncrypt = gcnew StreamWriter(csEncrypt);

            //Write all data to the stream.
            swEncrypt->Write(plainText);
            swEncrypt->Flush();
            csEncrypt->FlushFinalBlock();
            msEncrypt->Flush();
        }
        finally
        {
            // Clean things up.

            // Close the streams.
            if(swEncrypt)
                swEncrypt->Close();
            if (csEncrypt)
                csEncrypt->Close();


            // Clear the RijndaelManaged object.
            if (aesAlg)
                aesAlg->Clear();
        }

        // Return the encrypted bytes from the memory stream.
        return msEncrypt->ToArray();
    }

    static String^ decryptStringFromBytes_AES(array<Byte>^ cipherText, array<Byte>^ Key, array<Byte>^ IV)
    {
        // Check arguments.
        if (!cipherText || cipherText->Length <= 0)
            throw gcnew ArgumentNullException("cipherText");
        if (!Key || Key->Length <= 0)
            throw gcnew ArgumentNullException("Key");
        if (!IV || IV->Length <= 0)
            throw gcnew ArgumentNullException("IV");

        // TDeclare the streams used
        // to decrypt to an in memory
        // array of bytes.
        MemoryStream^ msDecrypt;
        CryptoStream^ csDecrypt;
        StreamReader^ srDecrypt;

        // Declare the RijndaelManaged object
        // used to decrypt the data.
        RijndaelManaged^ aesAlg;

        // Declare the string used to hold
        // the decrypted text.
        String^ plaintext;

        try
        {
            // Create a RijndaelManaged object
            // with the specified key and IV.
            aesAlg = gcnew RijndaelManaged();
            aesAlg->Padding = PaddingMode::PKCS7;
            aesAlg->Key = Key;
            aesAlg->IV = IV;

            // Create a decryptor to perform the stream transform.
            ICryptoTransform^ decryptor = aesAlg->CreateDecryptor(aesAlg->Key, aesAlg->IV);

            // Create the streams used for decryption.
            msDecrypt = gcnew MemoryStream(cipherText);
            csDecrypt = gcnew CryptoStream(msDecrypt, decryptor, CryptoStreamMode::Read);
            srDecrypt = gcnew StreamReader(csDecrypt);

            // Read the decrypted bytes from the decrypting stream
            // and place them in a string.
            plaintext = srDecrypt->ReadToEnd();
        }
        finally
        {
            // Clean things up.

            // Close the streams.
            if (srDecrypt)
                srDecrypt->Close();
            if (csDecrypt)
                csDecrypt->Close();
            if (msDecrypt)
                msDecrypt->Close();

            // Clear the RijndaelManaged object.
            if (aesAlg)
                aesAlg->Clear();
        }

        return plaintext;
    }
};

int main()
{
    try
    {
        String^ original = "Here is some data to encrypt!";

        // Create a new instance of the RijndaelManaged
        // class.  This generates a new key and initialization
        // vector (IV).
        RijndaelManaged^ myRijndael = gcnew RijndaelManaged();

        // Encrypt the string to an array of bytes.
        array<Byte>^ encrypted = RijndaelMemoryExample::encryptStringToBytes_AES(original, myRijndael->Key, myRijndael->IV);

        // Decrypt the bytes to a string.
        String^ roundtrip = RijndaelMemoryExample::decryptStringFromBytes_AES(encrypted, myRijndael->Key, myRijndael->IV);

        //Display the original data and the decrypted data.
        Console::WriteLine("Original:   {0}", original);
        Console::WriteLine("Round Trip: {0}", roundtrip);
    }
    catch (Exception^ e)
    {
        Console::WriteLine("Error: {0}", e->Message);
    }

    return 0;
}
using System;
using System.IO;
using System.Security.Cryptography;

namespace RijndaelManaged_Example
{
    class RijndaelExample
    {
        public static void Main()
        {
            try
            {

                string original = "Here is some data to encrypt!";

                // Create a new instance of the RijndaelManaged
                // class.  This generates a new key and initialization
                // vector (IV).
                using (RijndaelManaged myRijndael = new RijndaelManaged())
                {

                    myRijndael.GenerateKey();
                    myRijndael.GenerateIV();
                    // Encrypt the string to an array of bytes.
                    byte[] encrypted = EncryptStringToBytes(original, myRijndael.Key, myRijndael.IV);

                    // Decrypt the bytes to a string.
                    string roundtrip = DecryptStringFromBytes(encrypted, myRijndael.Key, myRijndael.IV);

                    //Display the original data and the decrypted data.
                    Console.WriteLine("Original:   {0}", original);
                    Console.WriteLine("Round Trip: {0}", roundtrip);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("Error: {0}", e.Message);
            }
        }
        static byte[] EncryptStringToBytes(string plainText, byte[] Key, byte[] IV)
        {
            // Check arguments.
            if (plainText == null || plainText.Length <= 0)
                throw new ArgumentNullException("plainText");
            if (Key == null || Key.Length <= 0)
                throw new ArgumentNullException("Key");
            if (IV == null || IV.Length <= 0)
                throw new ArgumentNullException("IV");
            byte[] encrypted;
            // Create an RijndaelManaged object
            // with the specified key and IV.
            using (RijndaelManaged rijAlg = new RijndaelManaged())
            {
                rijAlg.Key = Key;
                rijAlg.IV = IV;

                // Create an encryptor to perform the stream transform.
                ICryptoTransform encryptor = rijAlg.CreateEncryptor(rijAlg.Key, rijAlg.IV);

                // Create the streams used for encryption.
                using (MemoryStream msEncrypt = new MemoryStream())
                {
                    using (CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write))
                    {
                        using (StreamWriter swEncrypt = new StreamWriter(csEncrypt))
                        {

                            //Write all data to the stream.
                            swEncrypt.Write(plainText);
                        }
                    }

                    encrypted = msEncrypt.ToArray();
                }
            }

            // Return the encrypted bytes from the memory stream.
            return encrypted;
        }

        static string DecryptStringFromBytes(byte[] cipherText, byte[] Key, byte[] IV)
        {
            // Check arguments.
            if (cipherText == null || cipherText.Length <= 0)
                throw new ArgumentNullException("cipherText");
            if (Key == null || Key.Length <= 0)
                throw new ArgumentNullException("Key");
            if (IV == null || IV.Length <= 0)
                throw new ArgumentNullException("IV");

            // Declare the string used to hold
            // the decrypted text.
            string plaintext = null;

            // Create an RijndaelManaged object
            // with the specified key and IV.
            using (RijndaelManaged rijAlg = new RijndaelManaged())
            {
                rijAlg.Key = Key;
                rijAlg.IV = IV;

                // Create a decryptor to perform the stream transform.
                ICryptoTransform decryptor = rijAlg.CreateDecryptor(rijAlg.Key, rijAlg.IV);

                // Create the streams used for decryption.
                using (MemoryStream msDecrypt = new MemoryStream(cipherText))
                {
                    using (CryptoStream csDecrypt = new CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read))
                    {
                        using (StreamReader srDecrypt = new StreamReader(csDecrypt))
                        {
                            // Read the decrypted bytes from the decrypting stream
                            // and place them in a string.
                            plaintext = srDecrypt.ReadToEnd();
                        }
                    }
                }
            }

            return plaintext;
        }
    }
}
Imports System.IO
Imports System.Security.Cryptography



Class RijndaelExample

    Public Shared Sub Main()
        Try

            Dim original As String = "Here is some data to encrypt!"

            ' Create a new instance of the RijndaelManaged
            ' class.  This generates a new key and initialization 
            ' vector (IV).
            Using myRijndael As New RijndaelManaged()
            
                myRijndael.GenerateKey()
                myRijndael.GenerateIV()

                ' Encrypt the string to an array of bytes.
                Dim encrypted As Byte() = EncryptStringToBytes(original, myRijndael.Key, myRijndael.IV)

                ' Decrypt the bytes to a string.
                Dim roundtrip As String = DecryptStringFromBytes(encrypted, myRijndael.Key, myRijndael.IV)

                'Display the original data and the decrypted data.
                Console.WriteLine("Original:   {0}", original)
                Console.WriteLine("Round Trip: {0}", roundtrip)
            End Using
        Catch e As Exception
            Console.WriteLine("Error: {0}", e.Message)
        End Try

    End Sub

    Shared Function EncryptStringToBytes(ByVal plainText As String, ByVal Key() As Byte, ByVal IV() As Byte) As Byte()
        ' Check arguments.
        If plainText Is Nothing OrElse plainText.Length <= 0 Then
            Throw New ArgumentNullException("plainText")
        End If
        If Key Is Nothing OrElse Key.Length <= 0 Then
            Throw New ArgumentNullException("Key")
        End If
        If IV Is Nothing OrElse IV.Length <= 0 Then
            Throw New ArgumentNullException("IV")
        End If
        Dim encrypted() As Byte
        
        ' Create an RijndaelManaged object
        ' with the specified key and IV.
        Using rijAlg As New RijndaelManaged()

            rijAlg.Key = Key
            rijAlg.IV = IV

            ' Create an encryptor to perform the stream transform.
            Dim encryptor As ICryptoTransform = rijAlg.CreateEncryptor(rijAlg.Key, rijAlg.IV)
            ' Create the streams used for encryption.
            Using msEncrypt As New MemoryStream()
                Using csEncrypt As New CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write)
                    Using swEncrypt As New StreamWriter(csEncrypt)
                        'Write all data to the stream.
                        swEncrypt.Write(plainText)
                    End Using
                    encrypted = msEncrypt.ToArray()
                End Using
            End Using
        End Using

        ' Return the encrypted bytes from the memory stream.
        Return encrypted

    End Function 'EncryptStringToBytes

    Shared Function DecryptStringFromBytes(ByVal cipherText() As Byte, ByVal Key() As Byte, ByVal IV() As Byte) As String
        ' Check arguments.
        If cipherText Is Nothing OrElse cipherText.Length <= 0 Then
            Throw New ArgumentNullException("cipherText")
        End If
        If Key Is Nothing OrElse Key.Length <= 0 Then
            Throw New ArgumentNullException("Key")
        End If
        If IV Is Nothing OrElse IV.Length <= 0 Then
            Throw New ArgumentNullException("IV")
        End If
        ' Declare the string used to hold
        ' the decrypted text.
        Dim plaintext As String = Nothing

        ' Create an RijndaelManaged object
        ' with the specified key and IV.
        Using rijAlg As New RijndaelManaged
            rijAlg.Key = Key
            rijAlg.IV = IV

            ' Create a decryptor to perform the stream transform.
            Dim decryptor As ICryptoTransform = rijAlg.CreateDecryptor(rijAlg.Key, rijAlg.IV)

            ' Create the streams used for decryption.
            Using msDecrypt As New MemoryStream(cipherText)

                Using csDecrypt As New CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read)

                    Using srDecrypt As New StreamReader(csDecrypt)


                        ' Read the decrypted bytes from the decrypting stream
                        ' and place them in a string.
                        plaintext = srDecrypt.ReadToEnd()
                    End Using
                End Using
            End Using
        End Using

        Return plaintext

    End Function 'DecryptStringFromBytes 
End Class

備註

此演演算法支援 128、192 或 256 位的密鑰長度;預設為256位。 在 .NET Framework 中,此演算法支援 128、192 或 256 位的區塊大小;默認為128位, (Aes相容) 。 在 .NET Core 中,它與 AES 相同,且僅支援 128 位區塊大小。

重要

類別 Rijndael 是演算法的 Aes 前置任務。 您應該使用 Aes 演算法, Rijndael而不是 。 如需詳細資訊,請參閱 .NET Security 部落格中的 Rijndael 與 AES 之間的差異 專案。

建構函式

RijndaelManaged()
已淘汰.

初始化 RijndaelManaged 類別的新執行個體。

欄位

BlockSizeValue
已淘汰.

表示密碼編譯作業的區塊大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
FeedbackSizeValue
已淘汰.

表示密碼編譯作業的回饋大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
IVValue
已淘汰.

表示對稱演算法的初始化向量 (IV)。

(繼承來源 SymmetricAlgorithm)
KeySizeValue
已淘汰.

表示對稱演算法使用之祕密金鑰的大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
KeyValue
已淘汰.

表示對稱演算法的祕密金鑰。

(繼承來源 SymmetricAlgorithm)
LegalBlockSizesValue
已淘汰.

指定對稱演算法所支援的區塊大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
LegalKeySizesValue
已淘汰.

指定對稱演算法所支援的金鑰大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
ModeValue
已淘汰.

表示對稱演算法中使用的密碼模式。

(繼承來源 SymmetricAlgorithm)
PaddingValue
已淘汰.

表示對稱演算法中使用的填補模式。

(繼承來源 SymmetricAlgorithm)

屬性

BlockSize
已淘汰.

取得或設定密碼編譯作業的區塊大小,以位元為單位。

BlockSize
已淘汰.

取得或設定密碼編譯作業的區塊大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
FeedbackSize
已淘汰.

取得或設定加密回饋 (CFB) 和輸出回饋 (OFB) 加密模式之密碼編譯作業的回饋大小 (以位元為單位)。

FeedbackSize
已淘汰.

取得或設定加密回饋 (CFB) 和輸出回饋 (OFB) 加密模式之密碼編譯作業的回饋大小 (以位元為單位)。

(繼承來源 SymmetricAlgorithm)
IV
已淘汰.

取得或設定對稱演算法的初始化向量 (IV)。

IV
已淘汰.

取得或設定對稱演算法的初始化向量 (IV)。

(繼承來源 SymmetricAlgorithm)
Key
已淘汰.

取得或設定用於對稱演算法的秘密金鑰。

Key
已淘汰.

取得或設定對稱演算法的秘密金鑰。

(繼承來源 SymmetricAlgorithm)
KeySize
已淘汰.

取得或設定用於對稱演算法之秘密金鑰的大小,以位元為單位。

KeySize
已淘汰.

取得或設定對稱演算法使用之秘密金鑰的大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
LegalBlockSizes
已淘汰.

取得對稱演算法所支援的區塊大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
LegalKeySizes
已淘汰.

取得對稱演算法所支援的金鑰大小,以位元為單位。

LegalKeySizes
已淘汰.

取得對稱演算法所支援的金鑰大小,以位元為單位。

(繼承來源 SymmetricAlgorithm)
Mode
已淘汰.

取得或設定對稱演算法的作業模式。

Mode
已淘汰.

取得或設定對稱演算法的作業模式。

(繼承來源 SymmetricAlgorithm)
Padding
已淘汰.

取得或設定對稱演算法中使用的填補模式。

Padding
已淘汰.

取得或設定對稱演算法中使用的填補模式。

(繼承來源 SymmetricAlgorithm)

方法

Clear()
已淘汰.

釋放 SymmetricAlgorithm 類別所使用的所有資源。

(繼承來源 SymmetricAlgorithm)
CreateDecryptor()
已淘汰.

使用目前的 Key 屬性和初始化向量 (IV),建立對稱解密子物件。

CreateDecryptor()
已淘汰.

使用目前的 Key 屬性和初始化向量 (IV),建立對稱解密子物件。

(繼承來源 SymmetricAlgorithm)
CreateDecryptor(Byte[], Byte[])
已淘汰.

使用指定的 Rijndael 和初始化向量 (Key),建立對稱 IV 解密子物件。

CreateEncryptor()
已淘汰.

使用目前的 Key 屬性和初始化向量 (IV),建立對稱加密子物件。

CreateEncryptor()
已淘汰.

使用目前的 Key 屬性和初始化向量 (IV),建立對稱加密子物件。

(繼承來源 SymmetricAlgorithm)
CreateEncryptor(Byte[], Byte[])
已淘汰.

使用指定的 Rijndael 和初始化向量 (Key),建立對稱 IV 加密子物件。

DecryptCbc(Byte[], Byte[], PaddingMode)
已淘汰.

使用 CBC 模式與指定的填補模式解密數據。

(繼承來源 SymmetricAlgorithm)
DecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode)
已淘汰.

使用 CBC 模式與指定的填補模式解密數據。

(繼承來源 SymmetricAlgorithm)
DecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)
已淘汰.

使用 CBC 模式搭配指定的填補模式,將數據解密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
DecryptCfb(Byte[], Byte[], PaddingMode, Int32)
已淘汰.

使用 CFB 模式與指定的填補模式和意見反應大小來解密數據。

(繼承來源 SymmetricAlgorithm)
DecryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode, Int32)
已淘汰.

使用 CFB 模式與指定的填補模式和意見反應大小來解密數據。

(繼承來源 SymmetricAlgorithm)
DecryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)
已淘汰.

使用 CFB 模式搭配指定的填補模式和意見反應大小,將數據解密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
DecryptEcb(Byte[], PaddingMode)
已淘汰.

使用 ECB 模式與指定的填補模式解密數據。

(繼承來源 SymmetricAlgorithm)
DecryptEcb(ReadOnlySpan<Byte>, PaddingMode)
已淘汰.

使用 ECB 模式與指定的填補模式解密數據。

(繼承來源 SymmetricAlgorithm)
DecryptEcb(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)
已淘汰.

使用 ECB 模式搭配指定的填補模式,將數據解密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
Dispose()
已淘汰.

釋放 SymmetricAlgorithm 類別目前的執行個體所使用的全部資源。

(繼承來源 SymmetricAlgorithm)
Dispose(Boolean)
已淘汰.

釋放 SymmetricAlgorithm 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。

(繼承來源 SymmetricAlgorithm)
EncryptCbc(Byte[], Byte[], PaddingMode)
已淘汰.

使用 CBC 模式與指定的填補模式來加密數據。

(繼承來源 SymmetricAlgorithm)
EncryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode)
已淘汰.

使用 CBC 模式與指定的填補模式來加密數據。

(繼承來源 SymmetricAlgorithm)
EncryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)
已淘汰.

使用 CBC 模式搭配指定的填補模式,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
EncryptCfb(Byte[], Byte[], PaddingMode, Int32)
已淘汰.

使用 CFB 模式與指定的填補模式和意見反應大小來加密數據。

(繼承來源 SymmetricAlgorithm)
EncryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, PaddingMode, Int32)
已淘汰.

使用 CFB 模式與指定的填補模式和意見反應大小來加密數據。

(繼承來源 SymmetricAlgorithm)
EncryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)
已淘汰.

使用 CFB 模式搭配指定的填補模式和意見反應大小,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
EncryptEcb(Byte[], PaddingMode)
已淘汰.

使用 ECB 模式與指定的填補模式來加密數據。

(繼承來源 SymmetricAlgorithm)
EncryptEcb(ReadOnlySpan<Byte>, PaddingMode)
已淘汰.

使用 ECB 模式與指定的填補模式來加密數據。

(繼承來源 SymmetricAlgorithm)
EncryptEcb(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode)
已淘汰.

使用 ECB 模式搭配指定的填補模式,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
Equals(Object)
已淘汰.

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GenerateIV()
已淘汰.

產生要使用於該演算法的隨機初始化向量 (IV)。

GenerateKey()
已淘汰.

產生要使用於該演算法的隨機 Key

GetCiphertextLengthCbc(Int32, PaddingMode)
已淘汰.

取得具有指定填補模式和 CBC 模式中純文字長度的加密文字長度。

(繼承來源 SymmetricAlgorithm)
GetCiphertextLengthCfb(Int32, PaddingMode, Int32)
已淘汰.

取得具有指定填補模式和 CFB 模式中純文字長度的加密文字長度。

(繼承來源 SymmetricAlgorithm)
GetCiphertextLengthEcb(Int32, PaddingMode)
已淘汰.

取得具有指定填補模式和 ECB 模式中純文字長度的加密文字長度。

(繼承來源 SymmetricAlgorithm)
GetHashCode()
已淘汰.

做為預設雜湊函式。

(繼承來源 Object)
GetType()
已淘汰.

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()
已淘汰.

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()
已淘汰.

傳回代表目前物件的字串。

(繼承來源 Object)
TryDecryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32, PaddingMode)
已淘汰.

嘗試使用 CBC 模式搭配指定的填補模式,將數據解密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryDecryptCbcCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)
已淘汰.

在衍生類別中覆寫時,嘗試使用 CBC 模式搭配指定的填補模式,將數據解密到指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryDecryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32, PaddingMode, Int32)
已淘汰.

嘗試使用 CFB 模式搭配指定的填補模式和意見反應大小,將數據解密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryDecryptCfbCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32, Int32)
已淘汰.

在衍生類別中覆寫時,嘗試使用 CFB 模式搭配指定的填補模式和意見反應大小,將數據解密到指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryDecryptEcb(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)
已淘汰.

嘗試使用 ECB 模式搭配指定的填補模式,將數據解密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryDecryptEcbCore(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)
已淘汰.

在衍生類別中覆寫時,嘗試使用 ECB 模式搭配指定的填補模式,將數據解密到指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryEncryptCbc(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32, PaddingMode)
已淘汰.

嘗試使用 CBC 模式搭配指定的填補模式,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryEncryptCbcCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)
已淘汰.

在衍生類別中覆寫時,嘗試使用 CBC 模式搭配指定的填補模式,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryEncryptCfb(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32, PaddingMode, Int32)
已淘汰.

嘗試使用 CFB 模式搭配指定的填補模式和意見反應大小,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryEncryptCfbCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32, Int32)
已淘汰.

在衍生類別中覆寫時,嘗試使用 CFB 模式搭配指定的填補模式和意見反應大小,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryEncryptEcb(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)
已淘汰.

嘗試使用 ECB 模式搭配指定的填補模式,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
TryEncryptEcbCore(ReadOnlySpan<Byte>, Span<Byte>, PaddingMode, Int32)
已淘汰.

在衍生類別中覆寫時,嘗試使用 ECB 模式搭配指定的填補模式,將數據加密至指定的緩衝區。

(繼承來源 SymmetricAlgorithm)
ValidKeySize(Int32)
已淘汰.

判斷指定的金鑰大小對目前的演算法是否有效。

(繼承來源 SymmetricAlgorithm)

明確介面實作

IDisposable.Dispose()

此 API 支援此產品基礎結構,但無法直接用於程式碼之中。

已淘汰.

釋放 SymmetricAlgorithm 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。

(繼承來源 SymmetricAlgorithm)

適用於

另請參閱