Установка 128bit-ключ для AES - C#
Формулировка задачи:
При попытке установить AES ключ более 32 bit, появляется ошибка. :-\
Этот код УЖЕ выдаёт ошибку, но ведь в AES ключ должен быть 128/256/512, а не 16/32...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
using System.IO;
namespace Test
{
class Program
{
static void Main(string[] args)
{
AesCryptoServiceProvider aes = new AesCryptoServiceProvider();
byte[] key = ASCIIEncoding.ASCII.GetBytes("1234567812345678123456781234567812345678123456781234567812345678");
aes.Key = key;
}
}
}Решение задачи: «Установка 128bit-ключ для AES»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Security.Cryptography;
namespace ConsoleApplication7 {
class Program {
static void Main(string[] args) {
byte[] bytes = ASCIIEncoding.ASCII.GetBytes("1234567812345678123456781234567812345678123456781234567812345678");
byte[] key = Enumerable.Range(0, 16).Select(b => (byte)b).ToArray();
Aes aes = Aes.Create();
aes.Key = key;
foreach (var keySize in aes.LegalKeySizes) {
Console.WriteLine("Min: {0}, Max: {1}", keySize.MinSize, keySize.MaxSize);
}
Console.ReadLine();
}
}
}