Rijndael(AES)

Rijndael представляет собой итеративный блочный шифр, имеющий переменную длину блоков и различные длины ключей. Длина ключа и длина блока могут быть независимо друг от друга.


Параметры
pазмер блока, бит 128, 192, 256(1)
pазмер ключа, бит 128, 192, 256
число раундов 10, 12, 14(2)
pазмер ключевого элемента, бит 128, 192, 256 (равен размеру блока)
число ключевых элементов 11, 13, 15 (на 1 больше числа раундов)



Особености
Так как алгоритм может быть сформулирован в терминах всего лишь двух операций, - побитового суммирования по модулю 2 и индексированного извлечения из памяти, выполняемых над байтами, - он может быть эффективно реализован на любых компьютерных платформах от младших микроконтроллеров до суперпроцессоров. В силу тех же причин, а также потому что архитектура алгоритма допускает высокую степень параллелизма, он может быть также очень эффективно реализован в аппаратуре. В конечном итоге именно приведенные выше факторы вкупе с высокой стойкостью алгоритма предопределили его победу в конкурсе на место нового стандарта.
Прямое и обратное преобразования в шифре имеют одинаковую алгоритмическую структуру и различаются константами сдвига, ключевыми элементами, узлами замен и константами умножения. При аппаратной реализации они могут быть совмещены на 60%, при программной оптимальное быстродействие может быть достигнуто лишь при полностью раздельных реализациях обеих функций.
В качестве стандарта принят вариант шифра только с размером блока 128 бит.
Число раундов шифрования определяется в зависимости от размера блока и ключа по следующей таблице:

Иными словами, из двух размеров выбирается максимальный, и если он равен 128 бит, то используется 10 раундов, если 192 бита, то 12, и если 256 - то 14 раундов шифрования.

Обновлено: 11.03.2015