- Атака на блочный шифр
-
Атака на блочный шифр — попытка взлома (дешифрования) данных, зашифрованных блочным шифром. К блочным шифрам применимы все основные типы атак, однако существуют некоторые, специфичные лишь для блочных шифров, атаки.
Содержание
Типы атак
Общие
- Атака с использованием только шифрованного текста (ciphertext-only attack) – пользователи A и B зашифровывают свои данные, а криптоаналитик пытается расшифровать сообщение только при наличии шифрованного текста.
- Атака с известным открытым текстом (known plaintext attack) – известны и открытый и шифрованный текст. Цель атаки - найти ключ.
- Атака с избранным открытым текстом (chosen plaintext attack) – криптоаналитик может самостоятельно подбирать открытый текст. Имеется возможность отсылать любое количество простых текстов и получать в ответ соответствующие шифрованные тексты. Существуют автономная (offline) и оперативная (online) виды атак. В первом случае выбор открытых текстов подготавливается заранее, до получения шифрованных текстов. Во втором случае каждый последующий открытый текст выбирается исходя из уже полученных шифрованных текстов.
- Атака с избранным шифрованным текстом (chosen ciphertext attack) – у криптоаналитика есть возможность подбирать как открытый, так и шифрованный текст. Для каждого подобранного открытого текста криптоаналитик получает шифрованный текст, для каждого подобранного шифрованного текста – соответствующий открытый текст.
- Атаки, в основе которых лежит парадокс задачи о днях рождения (birthday attack) – атаки, получившие свое название в честь парадокса задачи о днях рождения. Суть парадокса в следующем: если в комнате находятся 23 человека, то вероятность того, что два из них родились в один и тот же день, превышает 50%. Этот тип атак основан на том, что одинаковые значения появляются быстрее, чем можно было ожидать.
- Двусторонняя атака или атака “встреча на середине” (meet-in-the-middle attack) – криптоаналитик строит таблицу ключей, которые выбрал самостоятельно. Различие между атакой, в основе которой лежит парадокс о днях рождениях, и двусторонней атакой в том, что в первом случае криптоаналитик ждет, когда одно и то же значение появится дважды во множестве элементов, в двусторонней атаке он ждет, когда два множества пересекутся.
Специфичные
- Атака со связанным ключом (related key attack) – впервые её представил Эль Бихем в 1903 году. Данная атака предполагает, что криптоаналитик имеет доступ к нескольким функциям шифрования. Все функции работают с неизвестными ключами, однако ключи связаны определенным отношением, которое известно криптоаналитику. Множество реальных систем используют разные ключи, связанные известным соотношением. Например, для каждого нового сообщения предыдущее значение ключа увеличивается на единицу.
- Атака с избранным ключом (chosen key attack) – криптоаналитик задает часть ключа, а на оставшуюся часть ключа выполняет атаку со связанным ключом.
- Усеченный дифференциальный криптоанализ (truncated differential attack)– атака на блочные шифры, обобщение дифференциального криптоанализа. Ларс Кнудсен разработал эту атаку в 1994 году[1]. В то время как обычный дифференциальный анализ использует разность между двумя полными текстами, в усеченном криптоанализе рассматривается разность между частями текста. Поэтому с помощью этой атаки можно предсказать значения лишь некоторых бит, а не целого блока.
Некоторые алгоритмы атак
Полный перебор
Полный перебор (или метод «грубой силы», англ. brute force attack) – атака основана на простом понятии: у Оскара, атакующего, есть подслушанный шифрованный текст и у него оказалась небольшая часть открытого текста, например, заголовок файла, который он расшифровывает. Оскар вначале просто расшифровывает небольшую часть шифрованного текста всеми возможными ключами. Ключ для этого шифра - это таблица замещений. Если получившийся текст соответствует небольшой части открытого текста – правильный ключ найден.
Пусть
означают пару открытого и зашифрованного текста, и пусть
множество всех возможных ключей
. Атака на основе полного перебора проверяет для каждого
выполнение:
. Если равенство выполняется, правильный ключ найден, если не выполняется проверяется следующий ключ. На практике метод грубой силы может быть сложнее, так как неправильные ключи могут дать неверные положительные результаты.XSL
XSL-атака (eXtended Sparse Linearization) – метод, основанный на алгебраических свойствах шифра, предполагает решение особой системы уравнений. Впервые был опубликована в 2002 году[2].
Результат работы S-блоков системы с многораундовым шифрованием записываются в виде уравнения:

Где
и
– соответственно биты на входе и выходе S-блоков i-го раунда шифрования.Далее для различных значений входных текстов и соответствующих им шифртекстов составляются таблицы истинности, на основе которых определяется значение ключа системы.
Сдвиговая атака;
Рис.1 Сдвиговая атака Сдвиговая атака (slide attak) – была предложена в 1999 г. Алексом Бирюковым и Дэвидом Вагнером[3]: . В данной атаке количество раундов шифрования не имеет значения. В отличие от отыскания каких-либо аспектов случайных данных блочного шифра, сдвиговая атака анализирует таблицу ключей, находя её слабости, чтобы взломать шифр. Самая распространенная таблица ключей – циклическое повторение ключей. Сдвиговая атака тесно связана с атакой со связанным ключом. Необходимым требованием для сдвиговой атаки является идентичность раундов у алгоритмов, к которым она применяется возможность разбиения зашифрованного текста на несколько раундов из одинаковых
функций.Алгоритм атаки:
- Выбирается блок текста длиной
бит и последовательность ключей:
любых длин. - Процесс шифрования разбивается на одинаковые функции
, которые могут состоять из более одного раунда шифрования, это определяется из последовательности ключей. Например, если при шифровании используются чередующиеся ключи для каждого раунда
и
, то
функция будет состоять из двух раундов. Каждый из ключей
появится, по крайней мере, один раз в
. - Следующий шаг, получить
пар: открытый текст – зашифрованный текст. В зависимости от характеристик зашифрованного текста меньшее количество пар будет достаточно, но из парадокса день рождений потребуется не меньше чем
пар. Данные пары
используются в дальнейшем, чтобы найти slide пару
. Свойство пары:
Как только найдена пара, шифр взломан из-за уязвимости к атаке с известным открытым текстом.
Невозможные дифференциалы;
Невозможные дифференциалы (impossible differentials) – принципиально новый вариант дифференциального криптоанализа, предложенный Эли Бихамом, Эди Шамиром и Алексом Бирюковым в 1998 году[3]. Данный метод использует дифференциалы с нулевой вероятностью, в отличие от дифференциального криптоанализа. Процесс взлома:
- Выбираются пары открытых текстов с некоторой разностью; получаются соответствующие им шифртексты.
- Выполняется анализ полученных данных, все варианты ключа шифрования, приводящие к невозможным дифференциалам, отбрасываются.
- Результаты приводят к невозможным дифференциалам - или единственный возможный вариант ключа, или подмножество ключевого множества. Для нахождения верного ключа из подмножества, например, производится полный перебор.
Метод Бумеранга.
Метод бумеранга(boomerang attack) предложен в 1999 году Дэвидом Вагнером[3]. Данный метод практически является улучшением дифференциального криптоанализа, в нём используется квартет(четыре текста вместо двух) открытых текстов и соответствующих им шифртекстов. Алгоритм:
- Разделим
-раундовый алгоритм на две части по
раундов.
- процедура зашифровывания первой части алгоритма. Для квартета выберем два открытых текста
и
, разность между ними составляет некоторую величину
. Воздействуя на тексты функцией
, получаем разность
(считая, что разность определяется XOR):
.- Теперь зашифруем тексты
и
, применяя к ним процедуру зашифровывания второй части
. Получаем шифртексты
и
:
;
. - Криптоаналитика не интересует разность между
и
. С помощью них получаем два других шифртекста
и
, связанных с ними разностью
:
. - Теперь формирование квартета происходит в обратную сторону: к
и
применяются
, причем
:
.
и
расшифровывают шифртексты
и
:
;
;
-
- Причем
.
- Причем
Примечания.
- ↑ Ковтун В.Ю. "Введение в криптоанализ. Криптоанализ симметричных криптосистем: блочные шифры"
- ↑ N. Courtois, J. Pieprzyk "Cryptology ePrint Archive: Report 2002/044"
- ↑ 1 2 3 Сергей Панасенко Алгоритмы шифрования.
Литература.
- Нильс Фергюсон, Брюс Шнайер Практическая криптография.
- Christof Paar, Jan Pelzl, Bart Preneel Understanding Cryptography.
- Chalermpong Worawannotai, Isabelle Stanton A Tutorial on Slide Attacks.
- Сергей Панасенко Алгоритмы шифрования.
- Isabelle Stanton. "slideattacks"..
Категории:- Криптография
- Криптографические атаки
Wikimedia Foundation. 2010.

