Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шемякин лекции 2023 / Л7. Линейный криптоанализ.pptx
Скачиваний:
18
Добавлен:
30.05.2023
Размер:
1.27 Mб
Скачать

Лекция Линейный криптоанализ

1

Вычислительно стойкие системы шифрования

Определение. КС называется доказуемо стойкой относительно

определенного метода криптоанализа или решения математической задачи, если ее дешифрование данным методом требует необозримо большого времени или объема оборудования. (Такие КС, как будет показано далее, существуют.)

Основные подходы к криптоанализу:

1.Тотальный перебор ключей

2.Анализ статистических особенностей криптограмм

3.Линейный криптоанализ

4.Дифференциальный криптоанализ

5.Максимального правдоподобия;

6.На основе решения алгебраических (булевых) уравнений;

7.На основе внесения ошибок в процедуру дешифрования.5.

2

Основные типы криптографических атак:

1)только при известной криптограмме Е;

2)при известной криптограмме Е и соответствующей ей части сообщения M;

3)при специально выбранном сообщении M и соответствующей ему криптограмме E.

3

Полный перебор ключей

При данном методе криптоанализа криптоаналитик перебирает все допустимые ключи, пытаясь дешифровать криптограмму достаточно

большой длины,

n

равной или превосходящей расстояние

единственности npe, т. е. при условии, что n

 

npe

. Тогда первый ключ,

 

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

Длина ключа, гарантирующая вычислительную стойкость переборного

алгоритма

N 256

4

Правило остановки перебора

Подсчитать количество появлений заданного символа s в дешифрованной криптограмме ns.

Найти частоту появления символа s – Ps=ns/n, где n – общее кол-во символов.

Сравнить Ps с известной вероятностью символа в языке – P’s.

• Если где заданный порог, то совпадение со статистикой языка есть.

Провести аналогичную проверку на других символах. При совпадении статистики ключ найден.

5

Анализ статистических особенностей криптограмм

Статистика букв русского языка

пробел

О

Е,Ё

А

 

0.175

0.090

0.072

0.062

 

И

Т

Н

С

 

0.062

0.053

0.053

0.045

 

Р

В

Л

К

 

0.040

0.038

0.035

0.028

 

М

Д

П

У

 

0.026

0.025

0.023

0.021

 

Я

Ы

3

Ь,Ъ

 

0.018

0.016

0.016

0.014

 

Б

Г

Ч

Й

 

0.014

0.013

0.012

0.010

 

Х

Ж

Ю

Ш

 

0.009

0.007

0.006

0.006

 

Ц

Щ

Э

Ф

 

0.004

0.003

0.003

0.002

7

 

 

 

 

Понятие линейной и нелинейной функции

Определение. Функция y=f(x) называется линейной, если f(a)+f(b)=f(a+b),

иначе функция нелинейная. (то есть для л.ф. сумма значений функций равна значению функции от суммы аргументов)

Покажем, что функция суммирования по mod2 линейная.

Пусть f(x1,x2)=x1 x2, f(x’1,x’2)=x’1 x’2 f(x1 x’1,x2 x’2)= (x1 x’1) (x2 x’2)=f(x1,x2) f(x’1,x’2) Пусть f(x1,x2)=x1*x2

f(x1 x’1,x2 x’2)= (x1 x’1)*(x2 x’2) =x1*x2 x’1*x2 x1*x’2 x’1*x’2 ≠

x1*x’1 x2*x’2= f(x1,x2) f(x’1,x’2)

8

Линейный криптоанализ

Линейный криптоанализ

Линейный криптоанализ блокового шифра был предложен Мацуи в 1994 г. Основная идея его состоит в использовании (существующих для любых нелинейныхпреобразований) скрытых линейных уравнений, связывающих некоторые биты входа и выхода.

При выполнении данной атаки предполагается использовать много открытых текстов и соответствующих им криптограмм(т. е. это атака второго типа).

Общее уравнение линейных связей имеет вид

Xi

Xi

Xi

, Yj

Yj

Yj 0

,

(3.1)

1

2

n

t

2

l

 

 

где Xi i-й бит входа;Yj j-й бит выхода.

Такие уравнения будут существовать не всегда, а лишь для некоторой части входных сообщений. Поэтому мы можем говорить только о некоторой вероятности их выполнения. Для определения номеров i1, ..., in ; j1, ..., jl

влинейном уравнении (3.1) необходимо выбрать такие их них, которые обеспечивают наибольшую вероятность выполнения (3.1) по всем возможным входам.

9

Учебный ППШ

10

Из схемы видно, что такой шифр имеет четыре итерации, причем каждая из них включает в себя:

сложение по модулю 2 с раундовым ключом,

нелинейное преобразование, выполняемое в четырех S- блоках, (подстановка)

перестановка символов, определяемую направлениями линий.

(в последнем раунде перестановка не используется, но используется

5-й раундовый ключ).

Длина блока учебного ППШ равна 16 бит, а общее число бит раундовых ключей – 80.

11