|
Симметричные криптосистемы. Алгоритм IDEA.Алгоритм IDEA (International Data Encryption Algorithm) относится к классу симметричных шифраторов. Данный алгоритм был разработан в 1990 г. в качестве альтернативы алгоритму DES (Data Encryption Standard). В основе алгоритма лежит идея смешанного преобразования, которое случайным образом равномерно распределяет исходный текст по всему пространству шифротекста. Смешанные преобразования реализуются при помощи перемежающихся последовательностей замен и простых операций перестановок. Преобразование данных производится по блокам, размер которых равен 64 битам. Длина ключа в алгоритме IDEA составляет 128 бит. Каждый 64-битный блок рассматривается как четыре 16-битных подблока, которые преобразуются с использованием следующих целочисленных операций: - Побитное сложение по модулю 2 (XOR) двух 16-битных операндов, которое будем обозначать как . - Сложение двух целых 16-битных операндов по модулю 216, обозначенное как . - Умножение двух чисел без знака по модулю . Результат операции умножения усекается до длины в 16 бит. При вычислении данной операции существует исключение для кода со всеми нулями, который при умножении рассматривается как число . Данную операцию будем обозначать как . Процедура шифрования состоит из 8-ми одинаковых раундов и дополнительного 9-го выходного раунда (рисунок 9.10, а). На выходе 9-го раунда формируется содержимое четырёх 16-битных подблоков, образующих блок шифротекста. Основной частью каждого раунда является мультипликативно-аддитивная структура (рисунок 9.10, б). Здесь F1 и F2 – 16-битные значения, полученные из открытого текста, Z5 и Z6 – 16-битные подключи. Рисунок 9.10 - Алгоритм IDEA: а) схема процедуры шифрования; б) мультипликативно-аддитивная структура
Все операнды, участвующие в выполнении процедуры шифрования, имеют размерность 16 бит. На рисунке 9.11 приведена схема выполнения первого раунда алгоритма IDEA.
Рисунок 9.11 – первый раунд шифрования алгоритма IDEA
Данные, получаемые на выходе i-го раунда шифрования, подаются на вход (i+1)-го раунда. Входными данными 1-го раунда являются четыре 16-битных подблока 64-битного блока исходного текста. Схема выполнения 9-го раунда шифрования приведена на рисунке 9.12.
Рисунок 9.12 – Девятый раунд шифрования алгоритма IDEA
Следует обратить внимание на то, что 2-й и 3-й подблоки промежуточного значения меняются местами после выполнения всех раундов кроме восьмого. На каждом из девяти раундов используются значения 16-битных итерационных ключей , которые получаются путём преобразования исходного 128-битного ключа K. Первые 8 итерационных ключей берутся как восемь последовательных частей 128-битного ключа. Для получения следующих 8-ми итерационных ключей 128-битное значение ключа циклически сдвигается на 25 бит влево и ключи вновь берутся как его 8 последовательных частей. Данный процесс повторяется до тех пор, пока не будут получены все 52 итерационных ключа. Процедура расшифрования состоит из тех же девяти раундов, но только выполняемых с использованием иных значений итерационных ключей. Итерационные ключи расшифрования получают из итерационных ключей шифрования на основе таблицы соответствия (таблица 9.20).
Таблица 9.20 – Значения ключей, используемых в алгоритме IDEA для дешифрования При этом выполняются следующие соотношения:
Таким образом, для ключа значение, обозначаемое как , является аддитивным инверсным по модулю , а значение, обозначаемое как – мультипликативным инверсным по модулю . Порядок использования итерационных ключей при шифровании показан на рисунке 9.13. При выполнении расшифрования раунды алгоритма выполняются в таком же порядке. На вход первого раунда подаётся четыре 16-битных подблока 64-битного блока шифротекста. Значения, полученные после выполнения выходного раунда, являются подблоками 64-битного блока исходного текста. Отличие от процедуры шифрования заключается в том, что вместо ключей используются ключи .
Рисунок 9.13 - Порядок использования итерационных ключей алгоритма IDEA
Что делать, если нет взаимности? А теперь спустимся с небес на землю. Приземлились? Продолжаем разговор... Живите по правилу: МАЛО ЛИ ЧТО НА СВЕТЕ СУЩЕСТВУЕТ? Я неслучайно подчеркиваю, что место в голове ограничено, а информации вокруг много, и что ваше право... Что делает отдел по эксплуатации и сопровождению ИС? Отвечает за сохранность данных (расписания копирования, копирование и пр.)... Система охраняемых территорий в США Изучение особо охраняемых природных территорий(ООПТ) США представляет особый интерес по многим причинам... Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:
|