Ответ 1
AES основан на Rijndael, но с размером блока, ограниченным 128 бит. Rijndael поддерживает более широкий диапазон размеров блоков, и многие криптографические библиотеки предоставляют отдельную реализацию Rijndael для дополнения AES.
Размеры блока 128, 160, 192, 224 и 256 бит поддерживаются алгоритмом Rijndael, но только стандарт 128-битного блока указан в стандарте AES. [Wikipedia]
Вы связаны с классом RijndaelManaged
. Эквивалентным классом для AES является AesManaged
.
Относительно разницы между классами: AesManaged
просто использует RijndaelManaged
с размером блока, равным 128. AesManaged
и RijndaelManaged
не соответствуют FIPS и при использовании генерируют исключение, если флаг групповой политики FIPS установлен. В .NET Framework 4.6.2 (август 2016 г.) добавлен класс AesCng, реализация CNG версия алгоритма AES.
IV - это фрагмент случайных данных, равный по длине размеру блока, который требуется для определенных симметричных режимов работы ( например, CBC-режим). Обычно IV объединяется (XOR-ed) с первым блоком открытого текста или первым блоком зашифрованного текста. Идея состоит в том, чтобы гарантировать, что шифрование одного и того же сообщения дважды одним и тем же ключом не приведет к тому же выводу.