Алгоритм Е2
Алгоритм Е2 был разработан в 1998 г. группой ученых из японской корпорации NTT (Nippon Telegraph and Telephone Corporation) с участием специалистов Национального университета г. Иокогама.
Структура алгоритма
Разработчики алгоритма Е2 придали ему традиционную схему, присущую многим алгоритмам симметричного шифрования конца XX века — на основе сети Фейстеля.
Перед выполнением описанных выше операций над субблоками выполняется начальное преобразование данных (IT, Initial Transformation), а перед завершением работы алгоритма выполняется заключительное преобразование (FT, Final Transformation). В этом алгоритм Е2 также схож с многими другими.
Как видно, основная нагрузка по шифрованию данных лежит на функции F, обрабатывающей содержимое субблока N2. В качестве параметра данная функция берет также значение Кг — это ключ раунда, т. е. 128-битный фрагмент ключа шифрования после его обработки функцией расширения ключа, с которым смешивается шифруемая информация в конкретном раунде г. Помимо ключей раундов, функция расширения ключа (выполняющая начальное преобразование ключа шифрования перед его использованием) дает еще 4 128-битных фрагмента ключа, два из которых (А13 и К14) используются в операции IT, а остальные два (К15 и К1в ) — в FT.
Для ускорения вычислений может быть использована таблица замен с предварительно рассчитанными выходными значениями для каждого из 256 значений, что, однако, повышает требования к энергонезависимой памяти ввиду необходимости хранения таблицы.
Таблица заменяет значение 0 на значение 225, 1 — на 66, 2 — на 62 и т. д.
Операция Р обеспечивает рассеивание данных путем сложения значений пх по модулю 2 по определенным правилам.
Каждая строка таблицы определяет зависимость соответствующего выходного значения, которое формируется путем сложения по модулю 2 всех значений, пересечение с которыми отмечено в таблице знаком «+».
По материалам книги Сергея Панасенко «Алгоритмы шифрования»
Алгоритмы шифрования