- •Лекция Линейный криптоанализ
- •Вычислительно стойкие системы шифрования
- •Основные типы криптографических атак:
- •Полный перебор ключей
- •Правило остановки перебора
- •Анализ статистических особенностей криптограмм
- •Понятие линейной и нелинейной функции
- •Линейный криптоанализ
- •Учебный ППШ
- •Из схемы видно, что такой шифр имеет четыре итерации, причем каждая из них
- •2. Перестановки
- •Подстановка. Это нелинейные преобразования блоков в блоки такой же длины. Нелинейные преобразования подстановок
- •Для решения этой задачи для полного шифра будет использован
- •Примеры расчета линейных аппроксимаций S-BOX-а
- •Из табл. 3.3 видим, что в 12случаях из 16 равенство выполняется.
- •Таблица перекосов
- •Анализ линейной аппроксимации для полного шифра
- •Пример 3.1.2. Выберем следующую аппроксимацию дляS-блоков: S12 : X1 X3 X 4 Y2
- •Для 2-го раунда получаем
- •Для расчета вероятности выполнения равенства (3.5) используем
- •Используя эту лемму, получаем вероятность выполнения равенства (3.5):
- •Подставим в (3.10) V 2,6 V 2,8 из(3.5):
- •Из равенства (3.13) видно, что оно принимает значения 0 или 1, в
- •Принцип линейного КА
- •Подсчет количества совпадений линейной аппроксимации
- •1) в качестве истинного ключа выбирается тот ключ, который дает
- •В теории линейного криптоанализа доказывается [5], что если – это
1) в качестве истинного ключа выбирается тот ключ, который дает
наибольшее отклонение количества выполнений равенства (3.13), – отT / 2 . Если ключ в п.5 определен верно, то аналогичным образом определяется набор оставшихся ключей k5,1 k5,4 ;k5,9 ,k5,12 ;
2) определив с большой вероятностью все ключи 5-го раунда, мы сможем рассчитать в точности вход 4-го раунда по известной криптограмме. Далее повторяя алгоритм, описанный в пп. 1–5, где вместо криптограмм Ei используются входы 4-го раунда U4 , вычисляются ключи
4-го раунда и так далее – вплоть до нахождения ключей 1-го раунда. Важно отметить, что в данном случае сложность криптоанализа
оценивают прежде всего числом T необходимых для его выполнения пар – открытых текстов (P) и криптограмм (E).
33
Пример.Для T = 10000 в табл. 3.5 приведены результаты
криптоанализа по описанному алгоритму для истинного ключа (2,4) и других ключей, представленных в 16-ричной системе. Видно, что для данного эксперимента наиболее вероятный ключ действительно соответствует тому, который реально использовался.
Экспериментальные результаты линейного криптоанализа для ППШ
Извлекаемый подключ |
|Перекос | |
Извлекаемый подключ |
| Перекос | |
|
[K5,5,…, K5,8; K5,13,…, K5,16] |
[K5,5,…, K5,8;K5,13,…, K5,16] |
|||
|
|
|||
1,С |
0,0031 |
2,А |
0,0044 |
|
2,D |
0,0078 |
2,В |
0,0186 |
|
1,E |
0,0071 |
2,С |
0,0094 |
|
1,F |
0,0170 |
2,D |
0,0053 |
|
2,0 |
0,0025 |
2,Е |
0,0062 |
|
2,1 |
0,0220 |
2,F |
0,0133 |
|
2,2 |
0,0211 |
3,0 |
0,0027 |
|
2,3 |
0,0064 |
3,1 |
0,0050 |
|
2,4 |
0,0336 |
3,2 |
0,0075 |
|
2,5 |
0,0106 |
3,3 |
0,0162 |
|
2,6 |
0,0096 |
3,4 |
0,0218 |
|
2,7 |
0,0074 |
3,5 |
0,0052 |
|
2,8 |
0,0224 |
3,6 |
0,0056 |
|
2,9 |
0,0054 |
3,7 |
0,0048 |
34
В теории линейного криптоанализа доказывается [5], что если – это
перекос выполнения линейного равенства для всего шифра, типа (3.13), то необходимое число известных пар (сообщение, криптограмма) будет
примерноT 12 .
Для того чтобы противостоять атаке линейного криптоанализа, необходимо S-блоки строить с высокой степенью нелинейности, когда вероятности их аппроксимаций линейными равенствами минимальны, а также задать такую структуру блокового шифра, которая приводила бы к максимальному числу активныхS-блоков на каждом из раундов.
Пути решения этих задач рассматриваются в разд. 3.1.10, посвященном разработке стойких блоковых шифров.
35