Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК_Киоки.doc
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
2.08 Mб
Скачать

4.2.Сеть фейстеля. Функция f

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

Сеть Фейстеля лишена этого недостатка, так как в ней одна электронная схема используется и для шифрования и для расшифрования.

Сеть Фейстеля представляет собой общую схему построения n-битового блочного шифра на основе произвольной функции F с размеростью входа n/2. Старшие n/2 разрядов L1 поступают на первый вход сети Фейстеля, оставшиеся n/2 разрядов R1 поступают на второй вход сети. Сеть Фейстеля симметрична.

Идея сети Фейстеля состоит в том, что она задает одну и тут же функцию шифрования F как в процедуре зашифрования, так и в процедуре расшифрования (одна электронная схема или алгоритм используется как для шифрования и для расшифрования).

Во первых, это позволяет выбрать преобразование F, обладающее высокой криптостойкостью. Во вторых, в качестве функции F может быть использовано необратимое преобразование (сложность вычисления или отсутствие обратной функции F-1), и при этом вся цепочка раундов сети Фейстеля будет восстановима.

Последнее достигается благодаря тому, что в функции F(Li,Ki) (шифрование, рис.3) или F(Ri-1,Ki) (расшифрование, рис.4) также используется обратимая функция сложения по модулю 2 (операция XOR) с значением текущего раундового ключа Ki.

Благодаря этому при расшифровании исходный код может быть восстановлен при обратной последовательности выполнения раундов и обратной последовательности применения тех же ключей что и при зашифровании (рис.4 ).

При расшифровании на i –том раунде (рис.4) вначале по ключу Ki восстанавливсется значение F(Ri,Ki-1) (обратимость операции сложения по модулю 2 в функции F). Затем восстанавливается значение Ri (обратимость операции сложения по модулю 2 в сети Фейстеля).

На каждом раунде i преобразованию F подвергаются n/2 разрядов кода с текущиим раундовым ключом Ki. Результат преобразования на этом же раунде складываются по модулю 2 (операция XOR) с остальными (не преобразуемыми на этом такте) n/2 разрядами кода. Тем самым достигается перемешивание внутри блока.

Для обратимости сети Фейстеля не имеет значения является ли число раундов четным или нечетным числом.

Более подробно функция F(Ri,Ki-1) алгоритма DES будет рассмотрена ниже.

Рис.4.2 Зашифрование на i-м раунде

Раунды нумеруются в порядке убывания..

Рис.4.3 Расшифрование на i-м раунде

Раунды нумеруются в порядке возрастания..

Основной задачей в сети Фейстеля является выбор раундовой функции F, обладающей высокими лавинными свойствами (влияние одного входного бита на многие выходные биты) и обеспечивающей стойкость к известным криптоатакам.

4.3 Сети фейстеля с 4-мя ветвями

Для повышения стойкости к криптоатакам и упрощения аппаратной и программной реализации алгоритма на основе сети Фейстеля применяют модификацию сети Фейстеля для числа ветвей более 2. Это в первую очередь связано с тем, что при больших размерах кодируемых блоков (128 и более бит) становится неудобно работать с математическими функциями по модулю 64 и выше. Как известно, основные единицы информации, обрабатываемые процессорами на сегодняшний день – это байт и машинное слово 32 бита. Поэтому в блочных криптоалгоритмах часто используют сеть Фейстеля с 4-мя ветвями. Самый простой принцип ее модификации изображен на рисунке Рис. 4.4. Для более быстрого перемешивания информации между ветвями (а это основная проблема сети Фейстеля с большим количеством ветвей) применяются две модифицированные схемы, называемые "type-2" и "type-3". Они изображены на рисунках а,б,в.

Рис 4.4. Сеть фейстеля с 4-мя ветвями.

Криптостойкость блочного шифра, использующего сеть Фейстеля, определяется на 95% функцией F и правилом вычисления ключей K1, K2,..., KR. Эти функции и являются объектом все новых и новых исследований специалистов в области криптографии.