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

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