RSS    

   Дипломная работа: Интегральная атака против блочного симметричного шифра Crypton

- DEAL может быть реализован на имеющемся аппаратном и программном обеспечение DES.

- нет очевидно слабых ключей и устранено свойство дополнительности.

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

Собственно результаты стойкости DEAL:

- Существуют эквивалентные ключи для DEAL-192 и DEAL-256.

Алгоритм нахождения требует около шести шифрований DES, чтобы найти набор из 256 эквивалентных ключей для DEAL-192, и восемь шифрований DES, чтобы найти 256 эквивалентных ключей для DEAL-256.

- Существуют эквивалентные ключи для DEAL-128 и алгоритм их нахождения, требующий около 264 вычислений для нахождения пары эквивалентных ключей.

- Атака математически-связанных ключей (related-key attack) на DEAL-192 и DEAL-256, требующая три блока открытого текста, под 233 ключами с точным соответствием, 3*245 байт памяти и около 2137 шифрований DEAL, чтобы найти последние два цикловых подключа для DEAL-192 и DEAL-256. (С большим количеством памяти это можно сделать быстрее).

- несколько возможных расширений этих атак. DEAL-192 может быть дешифрован до четырех циклов, а затем может быть применена атака Бихама (Biham's) на четырехцикловый цепной DES; DEAL-256 может быть дешифрован до шести циклов, а затем может быть применена атака на шестицикловый DEAL-192 подробнее эта операция описана [15].

Эти результаты интересны как для практики, так и для теории. Похоже, что DEAL будет иметь некоторое применение в будущем. DEAL кандидат на AES, но даже если он не станет финалистом, он почти наверняка будет использоваться. Как было указано на первой конференции по AES, широкое распространение "железа под DES" делает DEAL относительно легким для реализации во многих устройствах за очень низкую цену.

В реальном применении эквивалентные ключи DEAL имеют важное практическое следствие - они делают многие стандартные методы хэширования ненадежными.

Атака основанная на математически зависимых ключах вероятно менее применима, но все ещё может быть важна для некоторых приложений эти атаки "снимают" два последних цикла DEAL ценой примерно 2137 шифрований DEAL, используя 3*245 байт памяти и требует все те же три блока открытого текста, зашифрованного 233 зависимыми ключами. Возможны компромиссы времени-памяти.

В настоящее время, имея 3*269 байт памяти, атака будет занимать 2113 вычислительных ресурсов, восстанавливая два последних подключа. После, можно реализовать атака Бихама (Bi ham's) на четырехцикловый цепной DES, которая требует ещё 233 блока открытого текста, зашифрованного только одним ключом, и 288 времени. Таким образом, вся атака займет приблизительно 2113 вычислительной работы, 3*269 байт памяти, все те же три блока открытого текста, зашифрованного 233 зависимыми ключами, ещё 232 блока открытого текста, зашифрованного только одним ключом, которые должны быть выбраны ПОСЛЕ завершения первой атаки. По сравнению с лучшей из ранее известных атак, требующей 2119 вычислительной работы, 264 памяти и 270 выбранных открытых текстов.

На теоретическом уровне эти результаты показывают важный факт: Широко считается, что "назначение ключей" (key shedule), которое использует сильные элементы криптографии будет практически неуязвимо к криптографическому анализу. Это утверждение, к сожалению, не верно. В DEAL используется сильный шифр в очевидно-разумном направлении, чтобы обрабатывать ключ. Однако, использованный метод оставляет уязвимость шифра к анализу зависимого ключа, также оставляет возможность эквивалентных ключей.

1.3 Crypton как перспективный алгоритм

Шифр Crypton представлен южнокорейской компанией Future Systems, с конца 1980-х годов работающей на рынке сетевого обеспечения и защиты информации. Автор алгоритма Че Хун Лим [15],[16] признает, что конструкция его шифра во многом опирается на идеи шифра SQUARE бельгийских криптографов Дамена и Рэмена (также участвующих в конкурсе). Здесь нет традиционной для многих блочных шифров "структуры Фейстела", оперирующей в каждом цикле шифрования половиной блока данных (например, как в DES или CAST). Основу данного шифра составляет другая стандартная конструкция - так называемая SP-сеть, т.е. повторяющаяся цикловая функция из замен-перестановок, ориентированная на распараллеленную нелинейную обработку всего блока данных. Помимо высокой скорости, к преимуществам такой конструкции относят и то, что она облегчает исследование стойкости шифра к методам дифференциального и линейного криптоанализа, являющимся на сегодня основными инструментами вскрытия блочных шифров.

Шифр Crypton, как и Square, эффективно реализуется на разнообразных платформах, и признано, что в корейском алгоритме присутствуют талантливые конструктивные идеи.

1.3.1 Алгоритм CRYPTON

Описание алгоритма было взято из книги автора шифра CRYPTON Че Хун Лим [16] В CRYPTON, каждый блок данных 128 бит представлен в форме массива 4´4 байта. Циклическое преобразование в CRYPTON состоит из четырех шагов: byte-wise substitutions(байт замена), column-wise bit permutation(колончастый способ перестановки битов), column-to-row transposition (перенос столбцов), и key addition(добавление ключа). Процесс кодирования состоит из 4 раундов таких циклических преобразований. Процесс расшифровки может быть сделан идентичным процессу кодирования с различным ключевым списком. На рисунке 1.1 показана структура CRYPTON.


Рис.1.1 Структура CRYPTON.

Блочный шифр CRYPTON имеет следующие характеристики:

- 12-раундовый самозаменяемый шифр (с одинаковыми процессами для кодирования и расшифрования) с длиной блока 128 битов и длинной ключа до 256 битов.

- хорошая стойкость от существующих атак.

- эффективен и на программном и на аппаратном уровне: благодаря высокой степени паралельности и использованию очень простых логических операций ANDS/XORS, CRYPTON запускается очень быстро на большинстве платформ как в программном обеспечении так и в аппаратных средствах.

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


1.3.2 Основные преобразования блока

1.3.2.1 Байтовая подстановка g

CRYPTON использует нелинейную замену байта, используя четыре 8´8 S-блока, Si(0 ≤i ≤3). Эти S-блоки получены из одного 8´8 S-блока при возведении в степень S (то есть, S = S-1) и удовлетворяют обратные отношения S2=S0-1 и S3=S1-1. Возведенный в степень S-блок S был, сформирован для более эффективной логической реализации.

Преобразование  S-блока состоит из замен байт относительно массива 4´4 байт. Два различных преобразования используются альтернативно в последовательных раундах: в нечетных раундах и e в нечетных раундах. Это показано на рисунке 1.2. Заметим, что эти четыре S-блока устроены так, что следующее закрепляются на любом 4´4 байте масива A:

go  (ge (A)) = ge (go (A)) = A. (1.1)

Это свойство используется, чтобы получить идентичный процесс для кодирования и расшифровки.

A[0]

a03

a02

a01

a00

B[0]

S3(a03)

S2(a02)

S1(a01)

S0(a00)

A[1]

a13

a12

a11

a10

o

B[1]

S0(a13)

S3(a12)

S2(a11)

S1(a10)

A[2]

a23

a22

a21

a20

Þ B[2]

S1(a23)

S0(a22)

S3(a21)

S2(a20)

A[3]

a33

a32

a31

a30

B[3]

S2(a33)

S1(a32)

S0(a31)

S3(a30)

A[0]

a03

a02

a01

a00

B[0]

S1(a03)

S0(a02)

S3(a01)

S2(a00)

A[1]

a13

a12

a11

a10

e

B[1]

S2(a13)

S1(a12)

S0(a11)

S3(a10)

A[2]

a23

a22

a21

a20

Þ B[2]

S3(a23)

S2(a22)

S1(a21)

S0(a20)

A[3]

a33

a32

a31

a30

B[3]

S0(a33)

S3(a32)

S2(a31)

S1(a30)

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.