Алгоритм DFC

(Decorrelated Fast Cipher, быстрый шифр без взаимосвязей) разработан в 1998 г. специально для участия в конкурсе AES несколькими французскими специалистами под руководством известного криптолога Сержа Воденэ [162]. Алгоритм создан благодаря сотрудничеству двух организаций: телекоммуникационного гиганта France Telecom и высшего учебного заведения Ecole Normale Superieure (ENS).

Основные характеристики и структура алгоритма

Согласно требованиям конкурса AES, алгоритм шифрует данные блоками по 128 битов. При этом алгоритм DFC использует ключи не только трех фиксированных размеров, предусмотренных конкурсом (128, 192 и 256 битов), но и переменного размера от 0 до 256 битов.

Как видно, результирующая последовательность (обозначаемая как РК) имеет размер 256 битов.

2.     Вычисляются следующие 64-битные промежуточные величины:  где РК( — фрагмент последовательности РК:

Кроме того, для / = 2,3,4 вычисляются следующие величины:  где КА( и KBt — следующие 64-битные константы:

3.    Конкатенацией определенных величин из вычисленных на предыдущем шаге получаются два временных ключа:

4.     Вычисляются 128-битные ключи раундов:

•                  Kt = Enc4(Ki_l,Kt{) — для нечетных значений /;

•                  Kt = Enc4(Ki_l,Kt2) — для четных значений /, где:

•                  Enc4(p,q) — функция, выполняющая 4-раундовое шифрование описанным выше алгоритмом блока данных р на ключе q (здесь в качестве ключей раундов поочередно используются 128-битные фрагменты временных ключей, вычисленных на предыдущем шаге);

•                в качестве блока К0 берется 128 нулевых битов.

Достоинства и недостатки алгоритма

Как и еще один участник конкурса AES — алгоритм шифрования НРС (см. разд. 3.23), алгоритм DFC оптимизирован под 64-битные платформы (за которыми уже ближайшее будущее — по мнению авторов алгоритма [47]), поэтому основным достоинством алгоритма является высокая скорость шифрования на 64-битных платформах. Кроме того, алгоритм DFC может быть использован и «на другом конце» ряда возможных платформ — в смарт- картах с минимальными ресурсами, поскольку требует менее ста байтов one- ративной памяти (в том числе благодаря возможности генерации ключей раундов «на лету», т. е. по мере необходимости) и менее 2 Кбайт энергонезависимой памяти [306]. Однако DFC не вышел во второй раунд конкурса, поскольку недостатки оказались более существенными.

?      Низкая скорость шифрования на всех платформах, кроме 64-битных [284].

?      Сами разработчики алгоритма обнаружили класс слабых ключей шифрования, при расширении которых формируются ключи раундов с нулевой я-половиной; вероятность попадания ключа в этот класс невелика и равна

2~192 . Также авторы алгоритма предположили наличие еще одного класса возможно слабых ключей [162].

?      Структура алгоритма базируется на ряде теоретических работ Сержа Во- денэ (например, [382]), в которых формируется математическая модель алгоритмов шифрования с доказуемой высокой криптостойкостью против линейного и дифференциального криптоанализа. Однако соавторы более успешных алгоритмов, представленных на конкурс (вышедшего во второй раунд конкурса алгоритма Serpent и победителя конкурса— алгоритма Rijndael), Ларе Кнудсен и Винсент Риджмен в своей совместной работе, посвященной алгоритму DFC [221], доказали, что теория, лежащая в основе данного алгоритма, не гарантирует безопасности против дифференциального криптоанализа. Они же привели пример атаки, вскрывающей

70

6-раундовую версию алгоритма DFC при наличии 2 пар выбранных открытых текстов и соответствующих им шифртекстов путем выполнения

1 лд

порядка 2 вычислений описанной выше функции раунда. Данная атака вряд ли осуществима на практике; кроме того, атаке подвержена «усеченная» версия алгоритма; однако наличие этой атаки говорит о потенциальной слабости алгоритма DFC.

Впоследствии история алгоритма DFC продолжилась. Во-первых, известный криптолог Дон Копперсмит (Don Coppersmith) обнаружил еще один класс слабых ключей шифрования, приводящих к тому, что результат шифрования любого блока эквивалентен исходному, т. е. незашифрованному блоку; такой результат возникал в случае, если значение ключа второго раунда алгоритма оказывалось нулевым (что происходит с вероятностью 2"1 8) [46]. Кроме того, была обнаружена еще одна слабость в процедуре расширения ключа, правда, не приводящая к такому плачевному результату, как предыдущая. Поэтому авторы алгоритма предложили новую версию алгоритма (DFCv2) с незначительными изменениями в процедуре расширения ключа, устраняющими все описанные здесь проблемы с ключами. Кроме того, была предложена новая реализация алгоритма, еще быстрее работающая на 64-битных платформах [46, 167]. На результаты конкурса AES это уже не повлияло.

Вы можете следить за любыми ответами на эту запись через 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