Основное
внимание в работе сосредотачивается на S-блоках
уменьшенных моделей шифров, составивших решения, представленные на конкурс по выбору
нового стандарта блочного симметричного шифрования Украины, в числе которых
шифры КАЛИНА, ADE, МУХОМОР и ЛАБИРИНТ [22-25]. Нас, прежде всего, будет интересовать, как уже отмечалось,
возможность сохранения в уменьшенных моделях шифров соотношений криптографических
показателей характерных для больших шифров (учет при построении
S-блоков принципов заложенных в исходных алгоритмах).
Попутно мы будем интересоваться и показателями S-блоков
уже известных уменьшенных моделей шифров mini-AES и Baby-ADE.
S-блоки шифра mini-AES. Как уже отмечалось ранее в нашей работе [18], в шифре mini-AES в качестве подстановки используется первая строка первого S-блока DES - подстановки, сформированной с помощью тщательного отбора [26].
S-блоки шифра baby-Rijndael. В качестве основы построения S-блока шифра Rijndael (AES) его разработчики Даймен и Риджмен взяли отображение в конечном поле - конструкцию, предложенную К. Нюберг [27]. Оно обладает высокой нелинейностью, высоким порядком нелинейности, предельной устойчивостью к атакам дифференциального криптоанализа, эффективной конструкцией и хорошей определенностью (вычислимостью). Чтобы повысить дополнительно алгебраическую сложность преобразования, они скомпоновали эту функцию с другой простой функцией, в качестве которой была взята аффинная функция (снова предложение К. Нюберг [27]). В результате процедура подстановки (SubBytes) задается аффинным преобразованием вида
,
где – квадратная невырожденная матрица размером 8×8 с элементами из поля , a и b – 8-и битные векторы значений входа и выхода преобразования SubBytes соответственно (элементы соответствующих матриц-состояний), а – фиксированный 8-и битный вектор, являющийся заданным постоянным параметром этого преобразования (т.е. a, b, ).
В уменьшенной модели шифра baby-Rijndael [28], найденной в открытой печати, используется S-блок, построенный по представленным выше правилам, но вместо байтовых векторов рассматриваются полубайтовые векторы. Соответственно невырожденная матрица имеет размеры 4×4. Конструкция и параметры преобразования являются частным случаем построения S-блоков шифра baby-ADE при значении параметра = 1 (4-х битного вектора 0001), которые рассматриваются ниже.
S-блоки шифра baby-ADE. В отличие от AES, в шифре ADE используются изменяемые таблицы блоков замены, формируемые с помощью дополнительно введенного параметра Î, который определяется битами расширенного мастер-ключа (предложение по использованию для построения S-блока управляемой цикловыми ключами комбинации инверсного преобразования с линейным или аффинным также можно найти в работе К. Нюберг [27]). Мы повторили идею этого преобразования и в шифре Baby-ADE, только она отмасштабирована соответственно размеру 16-битного состояния [18].
В результате в качестве S-блока выступает изменяемая матрица подстановок, которая строится с помощью вычисления мультипликативно обратного элемента Î с последующим выполнением аффинного преобразования
.
Здесь уже и – четырехбитные векторы (полубайты матрицы состояний), – квадратная невырожденная матрица 4×4:
,
– 4-х битный вектор ():
.
Каждое значение выхода подстановки зависит как от входного состояния , так и от случайного вектора , который задается значением циклового ключа. В результате осуществляется криптографическое преобразование данных, при котором происходит динамическое изменение S блоков (блоков нелинейных замен), с сохранением показателей их нелинейности.
Так, например, при ® 0110 функция нелинейного преобразования задается следующей таблицей 1 (см. работу [18]).
Таблица 1. Таблица подстановок, реализующая S-блок Baby-ADE при
a |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
S(a) |
10 |
2 |
0 |
6 |
15 |
1 |
12 |
4 |
14 |
11 |
7 |
13 |
9 |
5 |
3 |
8 |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.