- •Лекция
- •Дифференциальный криптоанализ (ДК), предложенный в 1991 г.
- •Дифференциальный криптоанализ (ДК) основан на гипотезе о
- •Примеры пар разностей для S-блока
- •Распределение значений выходных разностей для S-блока и
- •ВЛИЯНИЕ РАУНДОВЫХ КЛЮЧЕЙ НА ВЫХОДНЫЕ РАЗНОСТИ
- •Расчет разностных характеристик для полного шифра.Будем
- •Для всех остальных блоков входные разности будут нулевыми, что на
- •Далее используем ранее выбранную выходную пару для блока S2,3
- •Теперь можно провести криптоанализ полного шифра в целях
- •Принцип дифференциального КА
- •Подсчет количества совпадений линейной аппроксимации
- •Результаты эксперимента для 5000 пар сообщений/криптограмм и для
- •При помощи аналогичного алгоритма находится другая пара
- •Из (3.14) и (3.15) видно, что для разработки шифров, стойких к
- •Построение блоковых шифров, доказуемо стойких к линейному и дифференциальному криптоанализу
- •2. Булевы функции в криптографических преобразованиях
- •1.Область применения криптографических функций
- •1. Область применения криптографических функций
- •После окончания передачи зашифрованного файла сеанс связи должен завершаться.
- •Фильтрующий генератор гаммы
- •Комбинирующий генератор гаммы
- •2. Линейные и аффинные булевы функции
- •Класс линейных двоичных функций от n переменных L2(n)
- •Важнейшей характеристикой КФ является Хэммингово расстояние её строки истинности от всех линейных и
- •Значения линейных и аффинных функций в P2(2)
- •3. Геометрический смысл коэффициентов преобразования Уолша
- •3. Геометрический смысл коэффициентов преобразования Уолша
- •Он показывает значение расстояния Хемминга до максимально возможного, равного в данном случае 2.
- •Из (3.31) видно, что если определяет некоторую ошибку в
- •Определение 3.1.10. Булева функция f x называется сбалансированной, если ее таблица истинности содержит
2. Булевы функции в криптографических преобразованиях
37
1.Область применения криптографических функций
2.Линейные и аффинные булевы функции
3.Геометрический смысл коэффициентов преобразования Уолша
38
1. Область применения криптографических функций
Исторически первыми КФ нашли применение в поточных шифраторах гаммирования.
Основное назначение:
Повышение линейной сложности итоговой шифрующей псевдослучайной последовательности.
Итоговая линейная сложность должна обеспечивать невозможность её определения на существующей вычислительной технике при проведении криптографического анализа перехвата.
В настоящее время правила пользования аппаратурой засекречивания требуют минимизации передачи незасекреченного траффика.
39
После окончания передачи зашифрованного файла сеанс связи должен завершаться.
Или следует передавать контрольные сообщения со случайным заполнением.
Для повышения линейной сложности используют несколько стандартных схем усложнения.
Две из ни представлены на слайдах.
40
Фильтрующий генератор гаммы
41
Комбинирующий генератор гаммы
42
x3 |
x2 |
x1 |
x0 |
|
|
|
|
Y=F(x0,x1,x2,x3)
y3 |
y2 |
y1 |
y0 |
|
|
|
|
Блок замены 4х4, блок подстановки, отображение
43
2. Линейные и аффинные булевы функции
Основные множества
Ω = {0, 1} или конечное поле GF(2) Z – множество целых чисел.
Булева функция f от n переменных – отображение из Ω n в Ω, f : Ω n Ω.
P2(n) – множество всех возможных булевых функций от n переменных. Аргумент x булевой функции f(x) является двоичным вектором длины n.
Вес вектора x, норма вектора x: || x ||, w(x), wt(x) - количество единичных координат у вектора x.
44
f (x) = x1x2 x1 представление полиномом Жегалкина
представление таблицей истинности
x2 |
x1 |
f (x) |
f = (0 1 0 0) – строка истинности |
|
|
|
|
функции f (x). В таблице |
|
0 |
0 |
0 |
||
истинности это столбец |
||||
0 |
значений. |
|
||
1 |
1 |
|
||
1 |
0 |
0 |
|
|
1 |
1 |
0 |
|
|
|
|
|
|
45
Класс линейных двоичных функций от n переменных L2(n)
• ha(x) = (a, x) = a1x1 a2x2 … anxn.
Класс аффинных функций A2(n)
• ga(x) = (a, x) 1 = a1x1 a2x2 … anxn. 1.
Векторы истинности линейных и аффинных функций обозначим ha и ga соответственно.
wt(ha) + wt(ga) = 2n для любого вектора параметров a.
46
Перечисление линейных функций при n = 2
№ линейной |
Вектор |
|
|
параметров |
|
||
функции, |
|
||
линейной |
Линейная функция |
||
десятичное |
|||
функции |
hi(x) = (ai, x) |
||
представление, |
|||
hi(x), |
|
||
i |
|
||
ai |
|
||
|
|
||
|
|
|
|
0 |
(0, 0) |
0 |
|
|
|
|
|
1 |
(0, 1) |
x2 |
|
2 |
(1, 0) |
x1 |
|
3 |
(1, 1) |
x1 x2 |
|
|
|
|
47