Криптография в примерах, Шифрование, Akelare

Пользователям

Вебмастерам

Безминималки

Автовыплота

Карта сайта

 

Главная страница

Меню :

Главная страница +

Криптография -

Rijndael

ГОСТ №28147-89

Akelare

Anubis

Mars

RC6

Blowfish

Skipjack

Square

Статьи +

Документальные фильмы +

Экстракт здоровья +

 

       Akelare.

      Akelarre разработан коллективом испанских криптографов. Алгоритм шифрует данные блоками по 128 бит, число раундов алгоритма R может изменяться, а ключ шифрования иметь любой размер, кратный 64 битам, хотя оптимальным считается 128-битный ключ.

      Структура алгоритма.

      Шифруемый 128-битный блок разбивается на четыре субблока A, Б, В и Г по 32 бита, над которыми и выполняются криптографические преобразования.

,

 

      Рис. 1. Структура алгоритма Akelarre.

 

      Алгоритм состоит:

      1. Начального преобразования;

Начальное преобразование представляет собой наложение фрагментов расширенного ключа K01…K04 на субблоки:
A = A + K01 mod 232,
Б = Б (+) K02,
В = В (+) K03,
Г = Г + K04 mod 232.

 

      2. R раундов;

В каждом раунде алгоритма r выполняются следующие преобразования:

      а) Субблоки A, Б, В, Г объединяются в 128-битный блок, над которым выполняется циклический сдвиг на переменное число бит, определяемое семью младшими битами фрагмента ключа раунда КР1.

      б) 128-битный блок снова разбивается на четыре фрагмента, после чего вычисляются следующие промежуточные величины:
W1 = A (+) C,
W2 = B (+) D.

      в) Значения W1 и W2, а также 12 фрагментов ключа раунда КР2КР13 подаются на вход AR-модуля (addition-rotation structure), выполняющего операции сложения и циклического сдвига на переменное число бит. AR-модуль будет подробно описан ниже.

      г) Выходные значения раунда формируются следующим образом:
A = A (+) W2',
Б = Б (+) W1',
В = В (+) W2',
Г = Г (+) W1',

где W1' и W2' - выходные значения AR-модуля.

 

      3. Финального преобразования.

Финальное преобразование состоит из циклического сдвига 128-битного блока влево на количество бит, определяемое значением семи младших бит фрагмента ключа KФ1, после чего выполняются следующие действия:
A' = A + KФ2 mod 232,
B' = B (+) KФ3,
C' = C (+) KФ4,
D' = D + KФ5 mod 232.

 

      AR-модуль.

      AR-модуль предполагает выполнение следующих операций (здесь они разобраны на примере W1, аналогичные операции выполняются над W2, см. упрощенную схему на рис. 2).

Рис. 2. AR-модуль.

 

Шаг 1) 31 старший бит W1 циклически сдвигается влево на величину, определяемую текущим значением 5 младших бит W2.
Шаг 2) Результат предыдущего шага складывается с фрагментом ключа раунда KР8: W1 = W1 + KР8 mod 232.
Шаг 3) 31 младший бит W1 циклически сдвигается влево аналогично шагу 1.
Шаг 4) W1 складывается с фрагментом ключа раунда KР9 аналогично шагу 2.
Шаг 5) 31 старший бит W1 циклически сдвигается влево аналогично шагу 1.
Шаг 6) W1 складывается с фрагментом ключа раунда KР10 аналогично шагу 2.
Шаг 7) Шаги 3-6 повторяются с использованием KР11 и KР12. Затем повторяются шаги 3-5 с использованием фрагмента ключа раунда KР13. Результат последнего повтора шага 5 становится выходным значением W1'.

Аналогичным образом обрабатывается W2, но с использованием фрагментов ключа раунда KР2…KР7 вместо KР8…KР13.

 

      Расширение ключа.

      Алгоритм может использовать ключ любого размера кратного 64 битам. Однако основной размер ключа - 128 бит, поэтому рассмотрим процедуру расширения именно такого ключа. Данная процедура выполняется следующим образом (рис. 3).

Рис. 3. Расширение ключа алгоритма Akelarre

 

Шаг 1. Ключ шифрования разбивается на восемь фрагментов по 16 бит Kл1…Kл8.
Шаг 2. Каждый 16-битный фрагмент возводится в квадрат с получением 32-битного значения, которое складывается с константами А0 и А1 следующим образом:
KВi = KВi2 + А1 mod 232,
KВi' = KВi2 + А0 mod 232,

Шаг 3. Восемь младших и восемь старших бит временных значений KВi и KВi' формируют фрагменты предварительного расширенного ключа KС1…KС8: KСi - результат конкатенации следующих величин:

  • 8 младших бит KВi',

  • 8 старших бит KВi',

  • 8 младших бит KВ(i mod 8)+1,

  • 8 старших бит KВ(i mod 8)+1.

Шаг 4. Средние 16 бит временных значений обрабатываются аналогично KЛ1…KЛ8 для получения новых значений фрагментов предварительного расширенного ключа (с незначительными отличиями - см. рис. 3).

Шаг 5. Ключи K01…K04, KР1…KР13 (для каждого раунда) и KФ1…KФ5 заполняются поочередно вычисляемыми фрагментами KС1…KС8.

      Процедура расширения ключа выглядит сложной. Однако по получаемым в результате криптоаналитических вычислений частям ключей раунда можно восстановить соответствующие им биты ключа шифрования; данное свойство эксплуатируется в атаках на алгоритм.

 

      Криптоанализ алгоритма


      Алгоритм Akelarre был представлен в 1996 г., а уже в следующем году Нильс Фергюсон (Niels Ferguson) и Брюс Шнайер (Bruce Schneier) описали атаку на него, позволяющую вскрыть алгоритм на основе не более ста выбранных открытых текстов и требующую выполнения 242 операций шифрования. Фергюсон и Шнайер сделали вывод о неприменимости алгоритма Akelarre (поскольку найденная ими атака вполне реальна) и предложили несколько путей усовершенствования алгоритма, в том числе полную переработку особенно слабой процедуры расширения ключа. Разработчики Akelarre создали новую версию в том же 1997 г., однако и она оказалась довольно слабой.
      Еще более серьезную атаку описали Ларс Кнудсен и Винсент Риджмен. Они нашли способ раскрытия ключа алгоритма с вероятностью около 70% на основе всего около 1000 блоков шифртекста при наличии некоторой информации о соответствующих им открытых текстах (например, достаточно знать, что это английский текст в ASCII-кодировке). Стоит сказать, что по сравнению с другими видами атак на алгоритмы шифрования атака на основе только шифртекста наиболее легко реализуема на практике, поскольку для получения нужной для атаки информации злоумышленнику достаточно простого прослушивания канала, по которому передается зашифрованная информация. Удивителен и тот факт, что обе атаки практически не зависят ни от числа раундов, ни от размера ключа алгоритма.

 

О Сущности, Разуме и многом другом... – сайт академика Николая Левашова. Этот сайт содержит Знания. Уникальные Знания, которые, до сих пор, не были доступны всем желающим. Это Знания о загадках Жизни, о строении Вселенной, о Сущности, Разуме и многом другом...    ->

 

Яндекс.Метрика