Криптоанализ блочных шифров

Содержание

Слайд 2

Эпиграф

Существует только один путь стать хорошим разработчиком криптографических алгоритмов --- быть хорошим криптоаналитиком

Эпиграф Существует только один путь стать хорошим разработчиком криптографических алгоритмов --- быть
и взламывать алгоритмы. Множество. Снова и снова. Только после того, как обучающийся продемонстрирует способности к криптоанализу чужих алгоритмов, он сможет серьезно браться за разработку собственных алгоритмов. Брюс Шнайер (Bruce Schneier)

Слайд 3

План

Часть 1: Блочные шифры
Часть 2: Криптоанализ
Часть 3: Различные атаки

Выводы
Источники дополнительных

План Часть 1: Блочные шифры Часть 2: Криптоанализ Часть 3: Различные атаки Выводы Источники дополнительных сведений
сведений

Слайд 4

Часть 1: Блочные шифры
Симметричная криптосистема
Блочные криптосистемы разбивают текст сообщения на отдельные блоки

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

Слайд 5

Параметры блочного шифра

Числовые параметры алгоритма: - размер шифруемого блока данных - размер ключа -

Параметры блочного шифра Числовые параметры алгоритма: - размер шифруемого блока данных -
размер “шагового” ключа - число раундов шифрования
Функция шифрования
Набор функций для выработки шаговых ключей
Фиксированные перестановки

Слайд 6

Алгоритм DES Data Encryption Standard

Американский
стандарт шифрования
на протяжении

Алгоритм DES Data Encryption Standard Американский стандарт шифрования на протяжении 1974-2000 г.г.
1974-2000 г.г.
Длина блока 64 бит Длина ключа 56 бит Размер ключегого элемента 48 бит
Число раундов 16

Сеть Файстеля

Слайд 7

Алгоритм DES: более подробно

Алгоритм DES: более подробно

Слайд 8

Блоки подстановки (S-boxes)

S-boxes созданы для того, чтобы запутать зависимость между текстом и

Блоки подстановки (S-boxes) S-boxes созданы для того, чтобы запутать зависимость между текстом
шифротекстом
В DES S-boxes c помощью фиксированных таблиц преобразуют 6-битовый вход в 4-битовый выход, соответственно 48 бит преобразуются в 32
В ГОСТ используются переменные S-boxes

DES S-boxes

Слайд 9

Криптоанализ – это отрасль знаний, целью которой является поиск и исследование методов

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

Вопрос: Что же такое криптоанализ?

Часть 2: Криптоанализ

Слайд 10

Часть 2: Криптоанализ Различные типы

Ciphertext Only – анализ на основе только шифротекста
Known Plaintext

Часть 2: Криптоанализ Различные типы Ciphertext Only – анализ на основе только
– анализ на основе невыбранного открытого текста
Chosen Plaintext – анализ на основе выбранного открытого текста
Chosen Ciphertext – анализ на основе выбранного шифротекста

Слайд 11

Часть 2: Криптоанализ На практике

Реальный криптоанализ основан на трех вещах:
Изучение системы шифрования

Часть 2: Криптоанализ На практике Реальный криптоанализ основан на трех вещах: Изучение
в целом
Изучение особенностей исходного текста
Изучение особенностей ключевой системы

Слайд 12

Свойство дополнительности (Complementation property)

Взаимосвязь между парами текст-шифротекст при обращении текста и ключа
Например, в

Свойство дополнительности (Complementation property) Взаимосвязь между парами текст-шифротекст при обращении текста и
DES:
Если то

Слайд 13

Часть 2: Криптоанализ Восстановление ключа

Brutal-Force Attack – атака методом “грубой силы”, т.е. полным

Часть 2: Криптоанализ Восстановление ключа Brutal-Force Attack – атака методом “грубой силы”,
перебором ключей
Основная цель любого метода криптоанализа – улучшить время Brutal-Force Attack, или улучшить имеющееся соотношение время/память
Key-recovery – метод нахождения наиболее вероятного раундового ключа, с помощью перебора различных исходных текстов. Используется в большинстве методов криптоанализа

Слайд 14

Часть 3: Различные атаки

Дифференциальный криптоанализ
Линейный криптоанализ
Модификации дифференциального и линейного анализов
Интерполяционный криптоанализ
Методы, основанные

Часть 3: Различные атаки Дифференциальный криптоанализ Линейный криптоанализ Модификации дифференциального и линейного
на слабости ключевых разверток

Слайд 15

Дифференциальный анализ: История

Разработан в 1990 году израильскими криптографами Эли Бихамом (Eli Biham)

Дифференциальный анализ: История Разработан в 1990 году израильскими криптографами Эли Бихамом (Eli
и Али Шамиром (Ali Shamir)

Эли Бихам

Али Шамир

Слайд 16

Дифференциальный анализ: Основные идеи

Chosen-plaintext метод
Выбираем пары входных текстов с фиксированной разностью, смотрим,

Дифференциальный анализ: Основные идеи Chosen-plaintext метод Выбираем пары входных текстов с фиксированной
как отличаются шифры от них ΔX = X1⊕X2 ΔY = Y1⊕Y2
Анализируя много таких пар, находим наиболее вероятный ключ

Слайд 17

Дифференциальный анализ: Более подробно

Пусть в алгоритме есть S-box c n-битовым входом и

Дифференциальный анализ: Более подробно Пусть в алгоритме есть S-box c n-битовым входом
m-битовым выходом
Дифференциал – это пара: разность входных данных и разность выходных данных нашего преобразования
Если Q - это количество различных пар входов, дающих этот дифференциал, то p=Q/2n – вероятность этого дифференциала
Дифференциальная характеристика – это последовательность разностей после каждого раунда
Построив дифференциальную характеристику на раундах с 1го по предпоследний, проводим Key-recovery атаку на последнем раунде.
Для взлома DES необходимо 247 выбираемых нами входных текстов
Защита – минимизировать максимальные вероятности p, максимизировать количество S-boxes в каждой дифференциальной характеристике

Слайд 18

Линейный анализ: История

Разработан Митцуру Матцуи (Mitsuru Matsui) в 1992 г.

Митцуру Матцуи

Линейный анализ: История Разработан Митцуру Матцуи (Mitsuru Matsui) в 1992 г. Митцуру Матцуи

Слайд 19

Линейный анализ: Основные идеи

Known plaintext attack
Ищем линейную зависимость между исходным текстом, шифротекстом и

Линейный анализ: Основные идеи Known plaintext attack Ищем линейную зависимость между исходным
ключом
Затем проделываем key-recovery

Слайд 20

Линейный анализ: Более подробно

Анализируем нелинейные компоненты шифра, находим вероятности линейных зависимостей между входными и

Линейный анализ: Более подробно Анализируем нелинейные компоненты шифра, находим вероятности линейных зависимостей
выходными битами
Комбинируем полученные зависимости так, чтобы остались только биты исходного текста, шифротекста и ключа
Вероятность нахождения такой комбинации = (Piling-Up Lemma)
Key-recovery на DES проходит при использовании 243 известных исходных текстов
Защита – минимизировать вероятностные смещения (bias), максимизировать число S-boxes, или иных нелинейных элементов

Слайд 21

Развитие методов дифференциального и линейного анализа

Дифференциально-линейный криптоанализ - chosen plaintext - использует результаты линейного

Развитие методов дифференциального и линейного анализа Дифференциально-линейный криптоанализ - chosen plaintext -
анализа для нахождения дифференциальной характеристики - 10 бит ключа 8-раундового DES вскрываются с помощью всего 512 входных текстов - защита – быстрое перемешивание (на первых 2-3 раундах)
Усеченные (truncated) дифференциалы - следим лишь за частью битов
Дифференциалы высших порядков - обобщение понятия дифференциальной характеристики - например, против f(x)=(x+k)^2 mod p - защита – много раундов, функции более высоких порядков
Невозможные дифф-лы (Miss-in-the-middle attack) - ищем дифференциалы, которые заведомо не встретятся, получаем целые классы неподходящих ключей
Метод бумеранга - ищем 2 дифф.характеристики с хорошими вероятностями, покрывающие весь шифр (необходима атака типа chosen-ciphertext)

Слайд 22

Интерполяционная атака

Авторы – Т.Джекобсен и Л.Кнудсен, 1997 год
Known-text attack
Предполагаем, что раундовая функция

Интерполяционная атака Авторы – Т.Джекобсен и Л.Кнудсен, 1997 год Known-text attack Предполагаем,
– многочлен. Тогда весь шифр может быть записан как многочлен, коэфф-ты зависят от ключа.
Интерполируем этот многочлен по достаточно большому количеству исходных текстов

Слайд 23

Методы, основанные на слабости ключевых разверток

Метод согласования (Meet-in-the-middle) - биты ключа, используемые на

Методы, основанные на слабости ключевых разверток Метод согласования (Meet-in-the-middle) - биты ключа,
1м и последнем раундах не пересекаются)
Слабые (weak) и полу-слабые (semi-weak) ключи - ключи, для которых результат шифрования сообщения совпадает с результатом расшифрования - таких ключей немного, их просто нужно избегать
Метод связанных ключей - Chosen-plaintext attack - у нас есть возможность шифровать несколькими ключами, связанными между собой

Слайд 24

Будущее криптоанализа

Алгоритм AES (Rijndael) – современный американский стандарт шифрования
Он фактически защищен от

Будущее криптоанализа Алгоритм AES (Rijndael) – современный американский стандарт шифрования Он фактически
всех представленных выше атак
Однако, и на него уже делаются попытки атак, использующие сложные алгебраические теории: Square-saturation-integral-multiset attacks
Например Square attack, созданный против алгоритма Square – атакует . Chosen plaintext attack, основанный на хорошем выборе множества исходных текстов - основной используемый объект - мультимножество - особенность: информация получается лишь при рассмотрении всего множества исходных текстов

Vincent Rijmen

J. Daemen

Имя файла: Криптоанализ-блочных-шифров.pptx
Количество просмотров: 232
Количество скачиваний: 2