Алгоритмы SAFER SK-64, SAFER SK-128 и SAFER SK-40

Усиление процедуры расширения ключа алгоритма SAFER К-64 против изобретенной им же атаки предложил в [213] JIapc Кнудсен. В сообщении на конференции sci.crypt в 1995 г. [250] Мэсси предложил два усовершенствованных варианта алгоритма SAFER: SAFER SK-64 и SAFER SK-128.

По сравнению с алгоритмом SAFER К-64 в них изменилась только процедура расширения ключа, которая была усилена именно в соответствии с предложениями Ларса Кнудсена.

Процедура расширения ключа алгоритма SAFER SK-64 приведена на рис. 3.167. Ее отличия от исходной состоят в следующем:

?      исходный 64-битный ключ шифрования разбивается на 8 байтов, к которым добавляется еще один, полученный в результате применения побитовой операции XOR к соответствующим битам 8 байтов ключа;

?      в каждом раунде процедуры расширения ключа выполняется сдвиг этих 9 байтов на 1 байт влево;

?      в результате в формировании фрагментов расширенного ключа в каждом раунде процедуры участвуют различные байты-ключа (включая дополнительный 9-й байт): Кх формируется полностью аналогично алгоритму SAFER К-64 из байтов исходного ключа, К2 — из байтов со 2-го по 9-й, К3 — из байтов с 3-го по 9-й и 1-го и т. д.

В свою очередь, процедура расширения ключа алгоритма SAFER SK-128 является некоторой комбинацией процедур расширения ключа алгоритмов SAFER К-128 и SAFER SK-64, а именно:

?      исходный 128-битный ключ шифрования разбивается на 2 64-битных фрагмента Ка и Кь\


Рис. 3.167. Процедура расширения ключа алгоритма SAFER SK-64

Рис. 3.168. Процедура расширения ключа алгоритма SAFER SK-128 (нечетные фрагменты)


Рис. 3.169. Процедура расширения ключа алгоритма SAFER SK-128 (четные фрагменты)

?      правая половина ключа (Кь) дополняется 9-м байтом (аналогично процедуре SAFER SK-64) и участвует в формировании фрагментов расширенного ключа с нечетными индексами (рис. 3.168);

?      левая половина ключа (Ка) также дополняется 9-м байтом и участвует в формировании фрагментов с четными индексами (рис. 3.169).

У алгоритмов SAFER SK-64 и SAFER SK-128 сохраняется то свойство, что при Ка = Кь алгоритм SAFER SK-128 является полностью совместимым (при одинаковом количестве раундов R) с алгоритмом SAFER SK-64, в котором используется ключ К = Ка = Кь. Минимальное и рекомендованное количество раундов алгоритма SAFER SK-64 увеличено по сравнению с SAFER К-64 и составляет 8 вместо 6. У алгоритма SAFER SK-128 количество раундов осталось прежним (как у SAFER К-128). .

«SK» в названии алгоритма обозначает Strengthened Key Schedule, т. е. «усиленное расширение ключа». Однако известна шутка [395], что SK так же хорошо может обозначать и «Stop Knudsen», поскольку новая процедура расширения ключа делает атаку Кнудсена невозможной.

В ряде источников, например, [253] и [339], упоминается алгоритм SAFER SK-40, использующий 40-битный ключ шифрования. Такой короткий ключ шифрования позволял алгоритму SAFER SK-40 обойти существовавшие на тот момент в США экспортные ограничения. Алгоритм (включая процедуру расширения ключа) мало чем отличался от SAFER SK-64. Как было сказано выше, в процедуре расширения ключа алгоритма SAFER SK-64 к 8 байтам исходного ключа определенным образом добавляется 9-й байт (см. рис. 3.167). У SAFER SK-40 эти 9 байтов (обозначим их KI^.^KI^) формируются иначе (рис. 3.170) [339]:

?      байты с 1-го по 5-й формируются непосредственно из 40-битного ключа;

?      остальные байты (с 6-го по 9-й) формируются, соответственно, так:

Криптоанализ алгоритмов SAFER SK-64 и SAFER SK-128

Какие-либо работы, вскрывающие полнораундовые версии алгоритмов SAFER SK-64 и SAFER SK-128, не получили широкой известности. Было предложено несколько атак на версии алгоритмов с уменьшенным количеством раундов, среди которых можно отметить следующие:

?      в работе [281] описана атака на 3,75-раундовый SAFER SK-64 (по мнению ее авторов, «0,75 раунда» — это раунд алгоритма без преобразований РНТ) методом невозможных дифференциалов, для которой требуется 232 выбранных открытых текстов и 212 тестовых операций шифрования;

?      там же описана Square-атака на 3,25-раундовые SAFER SK-64 и SAFER SK-128 (0,25 раунда включает в себя только первое наложение ключа), исполь-

1 Г) О

зующая 2 ‘ выбранных открытых текстов и 2 тестовых операций;

?      в [279] описана атака методом линейного криптоанализа на 4,75-раундовый SAFER SK-128, для которой требуется 2 4 известных открытых текстов (т. е. все возможные открытые тексты и соответствующие им шифртек- сты) и 290 операций шифрования.

Как видно, даже атаки на усеченные версии данных алгоритмов не являются достаточно практичными.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100