- •Лекция 1 Математический базис КП
- •Изучено в прошлом семестре (асимметричные криптосистемы)
- •Планируется изучить в этом семестре
- •Литература по курсу
- •Дополнительная
- •• 1. Математический базис криптопротоколов
- •1. Малая теорема Ферма
- •Функция Эйлера
- •Теорема Эйлера (обобщение теоремы Ферма)
- •2. Решение системы линейных уравнений на основе китайской теореме об остатках
- •Доказательство. Докажем однозначность решения по
- •Обозначим
- •Пример решения системы уравнений
- •3.Цепные дроби
- •Пример цепной дроби
- •Пример подходящих дробей
- •Вычисление цепной дроби
- •• Подходящие дроби можно представить рациональными
- •Применение цепных дробей
- •Применение цепных дробей (продолжение)
- •Квадратичные вычеты. Рассмотрим поле GF(p), где p – простое число, GF(p) состоит из
- •Квадратичные вычеты
- •Чтобы определить, является ли элемент a GF p квадратичным вычетом, используются символы Лежандра
- •Нахождение вычетов
- •5.1 Генерирование случайных простых чисел
- •Ответом на данный вопрос является следующая теорема. Теорема [5]. Пусть П(n) – число
- •Из этой теоремы можно получить аппроксимацию доли нечетных l-разрядных простых чисел в виде
- •Важнейшие тесты по проверке простоты чисел
- •Если n простое, то оно всегда проходит тест (т. е. то, что оно
- •Тест Ферма
- •Тест Миллера–Рабина.
- •Тест проверка квадратным корнем
- •Примеры
- •Тест Миллера-Рабина - комбинация теста Ферма и квадратного корня
- •Идея алгоритма РМ
- •Итог
- •Доказывается [2, 3], что вероятность ошибки при использовании теста Миллера–Рабина аппроксимируется величиной 1/4t
- •Полиномиальный тест AKS
- •При непосредственной проверке этого равенства требуется вычислить значения всех (п —2) коэффициентов. Поэтому
- •5.2. Конструирование простых чисел
Лекция 1 Математический базис КП
1.Введение в учебную дисциплину Криптопротоколы 1 Теоремы Ферма и Эйлера.
2.Китайская теорема об остатках
3.Цепные дроби.
4.Квадратичнве вычеты
5.Генерирование простых чисел
Изучено в прошлом семестре (асимметричные криптосистемы)
•Модульная арифметика
•Алгоритм Евклида. Расширенный алгоритм Евклида (нахождение обратного элемента по модулю)
•Теоремы Эйлера и Ферма
•Методы быстрого возведения в степень
•Понятие односторонней функции
•Системы с открытыми ключами Эль-Гамаля, РША, Диффи-Хеллмана.
Планируется изучить в этом семестре
•Математический базис КП
•Анализ стойкости КС РША
•КС Рабина, Уильямса, Голдвассера-Микали
•Квантовый компьютер и КС устойчивые к атакам на основе квантового компьютера.
•Постквантовая криптография, КС Мас-Элис,и др.
•Гомоморфное шифрование, криптосистема Пэйе
•Криптопротоколы:
--скрытое вычисление точек интереса
--разделение секрета
--дистанционное электронное голосование
--доказательства с нулевым разглашением секрета
--поручительство
--распределения ключей
• Российская система дистанционного электронного голосования
Литература по курсу
1. В.И.Коржик, Яковлев В.А.
“Основы криптографии“, СПб, ИЦ Интермедиа. 2016. (в библиотеке)
2.В.И.Коржик, Просихин В.П., Яковлев В.А.
“Основы криптографии“, СПбГУТ- СПб, 2014. (в библиотеке, в том числе в электронном виде)
4
Дополнительная
2. Черемушкин А. В.
Криптографические протоколы. Основные свойства и уязвимости : учеб. пособие для студ. учреждений высш. проф. образования. — М.: Издательский центр «Академия», 2009. — 272 с
• 1. Математический базис криптопротоколов
1. Малая теорема Ферма |
a p 1 1mod p |
Если p – простое число и p не делит a, то |
Доказательство. Заметим, что 0, a, 2a, … , (p – 1)a различны по
i a j a mod p mod p. В противном случае, если предположить, что , при
, тоi (i –j j)a = 0mod p и поэтому p делит (i - j)a . Но поскольку p не делит a и i, j < p , то сделано неверное предположение, и тогда числа
0, a, 2a, … , (p – 1)a составляют всего лишь перестановку чисел
1, 2, … , p - 1. Следовательно, справедливо следующее равенство:
или Сокращая обе получаем : ap-1
a 2a p 1 a a p 1 p 1 !mod p
1 2 ( p 1) ( p 1)!mod p
a p 1 p 1 !mod p p 1 !mod p
стороны тождества на (p-1)!
-1 = 0 mod p .
Функция Эйлера
Определение 3. Пусть n – целое натуральное число, тогда |
|||||||||||||||||||||||||||||||||||||||||||||
функцией Эйлера |
|
|
n |
|
называется количество целых |
||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||||||||||
|
|
|
n # |
0 |
b |
n; gcd b, n |
1 |
|
|
|
и взаимно простых с n, |
||||||||||||||||||||||||||||||||||
неотрицательных чисел, меньших n |
|
||||||||||||||||||||||||||||||||||||||||||||
т. е.: |
|
#{X |
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
где |
|
|
означает количество элементов множества X. |
||||||||||||||||||||||||||||||||||||||||||
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ……….. |
|||||||||||||||||||||||||||||||||||||||||||||
|
p |
|
p |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
||||||
Свойства: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
(1) |
1 |
|
|
n |
|
|
|
|
|
|
m |
n |
|
|
|
m |
|
n |
|
|
p |
|
|
|
n |
|
|
|
|
|
|
|||||||||||||
|
( p |
n |
) p |
|
|
p |
n 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
n |
p |
1 |
|
|
|
||||||||||||||||
1. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
, если р –простое число. |
|
|
|
|
|
|
|
|
|
|
p |
|
|
|||||||||||||||||||||||||||||
2. |
|
|
|
, |
p |
|
2 p |
|
s |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
3. |
n p 1 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
sили |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
1 |
|
|
2 |
|
|
|
|
|
|
|
|
s |
|
|
|
|
|
1 |
1 |
|
|
2 1 |
|
|
|
|
s 1 |
|
|
|
|
|
|
|||||||||||
4. Функция Эйлера мультипликативна |
|
|
|
|
|
( p1 1) ( p2 1) ( ps 1) |
|||||||||||||||||||||||||||||||||||||||
( p1 |
p2 |
ps |
|
|
) |
p1 |
|
|
|
p2 |
|
|
|
|
ps |
|
|
|
|
||||||||||||||||||||||||||
|
Другая запись свойства 4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|||||
|
|
1 |
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
n p1 |
1 |
|
|
|
|
|
p2 |
|
|
|
|
...pr |
|
|
|
|
n 1 |
|
|
|
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
p1 |
|
|
|
|
|
|
p2 |
|
|
|
|
|
|
|
|
pr |
|
|
p |
|
n |
|
|
|
|
|
p |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||
Теорема Эйлера (обобщение теоремы Ферма)
Если gcd(a,m) = 1 , то a m 1mod, m где m – функция Эйлера [1].
Теорема Ферма – это частный случай теоремы Эйлера. Действительно, если m = p – простое число, то по теореме Эйлера p p 1, что и дает утверждение теоремы Ферма: ap-1 = 1 mod p.
Утверждение 1. (Полезное для ускорения вычисления
степени по модулю.) Если gcd(a, m) = 1, , то
a n' mod m [3].a n mod m
n' n mod m
n=pq, n p 1 q 1 p, q =?
Утверждение 2. (Полезное для анализа стойкости криптосистем с открытым
ключом.) Пусть |
n p q |
–p,простыеq |
числа. |
p q |
Тогда числа p |
, где |
|
||||
и q можно найти, если известно n и |
n p 1 q 1 |
||||
Доказательство. Будем рассматривать p, q как пару неизвестных целых чисел, для которых задано их произведение p q , знаяn произведение и функцию Эйлера от него , можно найти сумму этих чисел
где b – nнекоторое1 n целоеp q 1числоp 1. q 1 p q 2b
Два числа, сумма которых равна 2b , а произведение равно n, являются очевидно корнями уравнения (теорема Виета). Тогда корни квадратного уравнения и есть необходимыеx 2 2bx n 0числа p и q:
.
|
|
|
|
|
p b b2 n2 ; q b b2 |
n2 |
|||
Сложность решения этого уравнения – |
|
|||
O log 3 n
