Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шемякин лекции 2023 / Л5. Теория построения совершенно и вычислительно стойких КС. Ред.1.ppt
Скачиваний:
15
Добавлен:
30.05.2023
Размер:
1.13 Mб
Скачать

Проблема разрешима, если может быть написан алгоритм для решения этой проблемы

Алгоритмы

Простые

Сложные

 

 

 

Р-проблема

 

 

?

 

 

Экспоненциально

NP-

NPС-

сложные

проблема

проблема

21

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

Их также называют задачами полиномиальной сложности

N = polynom (n), -N = k nd + k nd-1 + k nd-2 …. + n

Сложныеопер задачи это задачи1 2 экспоненциальной1 сложности

.

Nопер = akn , a, k > 0

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

NPC (coNP). Задачи, относящиеся к этому классу таковы, что если будет решена одна задача из класса, то и другие задачи класса могут быть решен в

полиномиальное время.

22

Пример сравнения сложности решения полиномиальной и экспоненциальной задач

 

 

7

 

 

 

 

 

71 10

 

 

 

 

 

10

 

 

 

 

 

 

 

y1(n)

 

6

 

 

 

 

 

5 10

 

 

 

 

y1(n) 2n

y2(n)

 

 

 

 

 

 

 

 

 

 

 

 

 

y2(n) n4 n3 n

2

 

0

10

20

30

40

 

 

 

 

 

 

 

1

 

n

 

40

23

 

 

 

 

 

 

 

Количественная оценка сложности вычислений

Сложность побитовой операции это число f (nb )

элементарных операций, которые должен выполнить

компьютер, чтобы получить результат при входе длины nb бит.

Элементарная обработка бита – это время, которое требуется компьютеру, чтобы сложить, вычесть, умножить или делить два единственных бита или сдвинуть единственный бит.

Примеры:

Сложность побитовой операции сложения – f (nb ) nb Сложность побитовой операции умножения - f (nb ) nb2 Сложность операции быстрого возведения в степень f (nb ) nb3

24

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

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

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

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

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

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

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

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

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

Быстродействие вычислительных устройств 1010- 1012 операций/с Быстродействие ЭВМ увеличивается в 4 раза каждые 3 года

25

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

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

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

N 256

Оценка времени тотального перебора ключей

Симметричные шифры: длина ключа N = 64-256 бит

При N = 256 бит Sk= 2256 = 1.18*1077 Время полного перебора Тп= Sk/V,

Если V = 109 ключей в секунду, то Тп = 1068 сек = 3.3*1060 лет! (в году 3.1536*107 секунд).

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

27

Подстановочно-перестановочные шифры (ППШ)

1. Подстановки

Это нелинейные преобразования блоков в блоки такой же длины. Нелинейные преобразования подстановок часто задаются таблицей

Пример. Блок длины n = 3, что соответствует отображению

x1 x2 x3 y1 y2 y3

28

2. Перестановки

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

Перестановка элементов блока

3. Сложение блока с подключем

Ei 1 Ei Ki

29

Учебный ППШ

30