- •1 Группа 3
- •2 Группа 16
- •3 Группа 23
- •1 Группа
- •1. Алгебраические структуры. Свойства алгебраических структур. Группы, подгруппы. Теория.
- •Практика.
- •2. Циклические группы. Теория.
- •Практика.
- •3. Кольца. Кольца классов вычетов. Теория.
- •Практика.
- •6. Простейшие шифры: простой замены, перестановочный, аффинный.
- •7. Шифры гаммирования. Шифр Виженера/Вернама (одноразовый блокнот).
- •9. Электронная подпись.
- •2 Группа
- •1. Шифр Хилла.
- •2. Генерация простых чисел.
- •3. Генерация псевдослучайных последовательностей и их тесты.
- •4. Криптография с открытым ключом.
- •5. Ранцевая криптосистема.
- •6. Криптосистема rsa. Теория.
- •Практика.
- •7. Криптосистема Эль-Гамаля. Теория.
- •Практика.
- •8. Протокол Диффи-Хеллмана. Модификация эллиптическими кривыми.
- •9. Алгоритмы работы с большими числами.
- •3 Группа
- •1. Стандарт шифрования des.
- •2. Стандарт шифрования aes.
- •3. Гост р 34.12-2015. Шифр «Магма».
- •4. Гост р 34.12-2015. Шифр «Кузнечик».
- •5. Гост р 34.10-2012.
Оглавление
1 Группа 3
1. Алгебраические структуры. Свойства алгебраических структур. Группы, подгруппы. 3
Теория. 3
Практика. 3
2. Циклические группы. 5
Теория. 5
Практика. 6
3. Кольца. Кольца классов вычетов. 7
Теория. 7
Практика. 8
4. Поля. Поля Галуа. 9
Теория. 9
Практика. 9
5. Цели и задачи криптографии. Основные понятия. 10
6. Простейшие шифры: простой замены, перестановочный, аффинный. 11
7. Шифры гаммирования. Шифр Виженера/Вернама (одноразовый блокнот). 13
8. Хеш-функции. Свойства хеш-функций. 13
9. Электронная подпись. 15
2 Группа 16
1. Шифр Хилла. 16
2. Генерация простых чисел. 16
3. Генерация псевдослучайных последовательностей и их тесты. 17
4. Криптография с открытым ключом. 17
5. Ранцевая криптосистема. 18
6. Криптосистема RSA. 19
Теория. 19
Практика. 19
7. Криптосистема Эль-Гамаля. 20
Теория. 20
Практика. 20
8. Протокол Диффи-Хеллмана. Модификация эллиптическими кривыми. 21
9. Алгоритмы работы с большими числами. 21
3 Группа 23
1. Стандарт шифрования DES. 23
2. Стандарт шифрования AES. 24
3. ГОСТ Р 34.12-2015. Шифр «Магма». 25
4. ГОСТ Р 34.12-2015. Шифр «Кузнечик». 27
5. ГОСТ Р 34.10-2012. 28
1 Группа
1. Алгебраические структуры. Свойства алгебраических структур. Группы, подгруппы. Теория.
Основные определения, что такое нейтральное число, отличие групп/подгрупп/полугрупп/моноидов/циклические группы, прикладное применение
Алгебраическая структура – множество, над которым задано некоторое множество алгебраических операций.
Группа – моноид, у которого все элементы обратимы по алгебраической операции.
Полугруппа – множество с одной заданной алгебраической операцией.
Моноид – полугруппа с единичным элементом.
Единичный элемент (нейтральное число) – элемент, который при выполнении операции с ним не влияет на второе число, по сложению это 0, по умножению это 1.
Группы используются в Эль-Гамале, Диффи-Хеллмане, ГОСТе 34.10-94 (старый хэш на Магме).
Практика.
Поиск обратного по модулю числа (таблица и уравнение)
Поиск обратного числа через уравнение:
Для
нахождения обратного числа должно
выполняться условие:
,
где
– число, к которому мы ищем обратное,
– модуль.
Поиск обратного числа через таблицу:
Для нахождения обратного числа используется расширенный алгоритм Евклида, например:
-
i
q
r
a-1
n
a
y2
y1
0
–
–
–
33
31
0
1
1
1
2
-1
31
2
1
-1
2
15
1
16
2
1
-1
16
3
2
0
16
–
–
–
16
во время итераций
– порядковый номер итерации,
– целая часть от деления
на
,
– остаток от деления
на
,
– обратное число,
– значение модуля,
– число, для которого мы ищем обратное,
и
– константы. Условие остановки –
остаток от деления равен нулю.
Эллиптические кривые
Построить группу точек эллиптической кривой E−5,3(F13). Мощность вводить с учетом точки P0=0
Числа -5 и 3 используются для записи уравнения эллиптической кривой, т.е. y2 = x3 – 5x + 3
Число 13 – значение модуля.
Подстановка элементов поля в уравнение:
x |
-6 |
-5 |
-4 |
-3 |
-2 |
-1 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
y2 |
12 |
7 |
11 |
4 |
5 |
7 |
3 |
12 |
1 |
2 |
8 |
12 |
7 |
Убираем те координаты, в которых не извлекается целочисленный корень из y:
x |
±6 |
±5 |
±4 |
±3 |
±2 |
±1 |
0 |
y2 |
36 = 10 |
25 = 12 |
16 = 3 |
9 |
4 |
1 |
0 |
x |
-6 |
-5 |
-4 |
-3 |
-2 |
-1 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
y2 |
12 |
7 |
11 |
4 |
5 |
7 |
3 |
12 |
1 |
2 |
8 |
12 |
7 |
Точки эллиптической кривой:
P0 |
P1 |
P2 |
P3 |
P4 |
P5 |
P6 |
P7 |
P8 |
P9 |
P10 |
P11 |
P12 |
0 |
(-6; -5) |
(-6; 5) |
(-3; -2) |
(-3; 2) |
(0; -4) |
(0; 4) |
(1; -5) |
(1; 5) |
(2; -1) |
(2; 1) |
(5; -5) |
(5; 5) |
Количество точек эллиптической кривой = мощность группы.
Дана точка P = (1,−5) из группы точек эллиптической кривой E−5,3(F13). Найти точку 3P.
Находим 2P (R = L):
2P = (–3; –2)
Находим 3Р (R ≠ L):
3P = (5; –5)
При R+L = 0 лямбды нет.
* Условие гладкости:
(в примере
)
(дискриминант уравнения кривой не равен
нулю)
