C# 获取错误:“引用;指定的块大小对此算法无效;初始化加密提供程序时

C# 获取错误:“引用;指定的块大小对此算法无效;初始化加密提供程序时,c#,.net,encryption,aes,C#,.net,Encryption,Aes,我尝试使用较大的块大小进行AES加密: private static void EncryptFile(string inFile, RSACryptoServiceProvider rsaPublicKey) { using (AesCryptoServiceProvider aes = new AesCryptoServiceProvider()) { // Create instance of AesManaged for // symetr

我尝试使用较大的块大小进行AES加密:

private static void EncryptFile(string inFile, RSACryptoServiceProvider rsaPublicKey)
{
    using (AesCryptoServiceProvider aes = new AesCryptoServiceProvider())
    {
        // Create instance of AesManaged for
        // symetric encryption of the data.
        aes.KeySize = 256;

        // Allocating 64K
        aes.BlockSize = 8 * 1024 * 64; 
    }
}
并点击以下异常:

System.Security.Cryptography.Cryptography异常未处理
消息=指定的块大小对此算法无效。
Source=mscorlib StackTrace: at System.Security.Cryptography.Symmetrialgorithm.set_BlockSize(Int32 价值) 在ConsoleApplication4.Program.EncryptFile(字符串填充,RSACryptServiceProvider RSAPPublicKey)中 C:\Projects\ConsoleApplication4\Program.cs:第117行


我肯定遗漏了一些线索,有什么线索吗?

每个算法只支持特定的块大小


请参阅。

AES似乎只支持等于128的块大小。似乎可以通过将数据处理为多个块来解决这个问题


你查过了吗?谢谢!我自己或者.NET——我们中的任何一个都是哑巴。如果BlockSize是固定的(看起来是固定的),那么为什么它是一个可变属性呢?它是基类的属性,非常通用。有些算法支持多种块大小。