double arrow

Победитель AES – шифр Rijndael

Данный алгоритм разработан двумя специалистами по криптографии из Бельгии. Он является нетрадиционным блочным шифром, поскольку не использует сеть Фейштеля для криптопреобразований. Алгоритм представляет каждый блок кодируемых данных в виде двумерного массива байт размером 4х4, 4х6 или 4х8 в зависимости от установленной длины блока. Далее на соответствующих этапах преобразования производятся либо над независимыми столбцами, либо над независимыми строками, либо вообще над отдельными байтами в таблице.

Все преобразования в шифре имеют строгое математическое обоснование. Сама структура и последовательность операций позволяют выполнять данный алгоритм эффективно как на 8-битных так и на 32-битных процессорах. В структуре алгоритма заложена возможность параллельного исполнения некоторых операций, что на многопроцессорных рабочих станциях может еще поднять скорость шифрования в 4 раза.

Алгоритм состоит из некоторого количества раундов (от 10 до 14 – это зависит от размера блока и длины ключа), в которых последовательно выполняются следующие операции:

  • ByteSub – табличная подстановка 8х8 бит (рис.1),


Рис.1.

  • ShiftRow – сдвиг строк в двумерном массиве на различные смещения (рис.2),


Рис.2.

  • MixColumn – математическое преобразование, перемешивающее данные внутри столбца (рис.3),


Рис.3.

  • AddRoundKey – добавление материала ключа операцией XOR (рис.4).


Рис.4.

В последнем раунде операция перемешивания столбцов отсутствует, что делает всю последовательность операций симметричной.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: