- •Криптографическая защита информации
- •Оглавление
- •Раздел 1. Общие подходы к криптографической защите информации
- •Тема 1. Теоретические основы криптографии
- •1.1. Криптография
- •1.2. Управление секретными ключами
- •1.3. Инфраструктура открытых ключей.
- •1.4. Формальные модели шифров
- •1.5. Модели открытых текстов
- •Тема 2. Простейшие и исторические шифры и их анализ
- •Тема 3. Математические основы криптографии
- •3.1. Элементы алгебры и теории чисел
- •3.1.1. Модулярная арифметика. Основные определения.
- •3.1.2. Алгоритм Евклида нахождения наибольшего общего делителя
- •3.1.3. Взаимно простые числа
- •3.1.4. Наименьшее общее кратное
- •3.1.5. Простые числа
- •3.1.6. Сравнения
- •3.1.7. Классы вычетов
- •3.1.8. Функция Эйлера
- •3.1.9. Сравнения первой степени
- •3.1.10. Система сравнений первой степени
- •3.1.11. Первообразные корни
- •3.1.12. Индексы по модулям рk и 2рk
- •3.1.13. Символ Лежандра
- •3.1.14. Квадратичный закон взаимности
- •3.1.15. Символ Якоби
- •3.1.16. Цепные дроби
- •3.1.17. Подходящие дроби
- •3.1.18. Подходящие дроби в качестве наилучших приближений
- •3.2. Группы
- •3.2.1. Понятие группы
- •3.2.2. Подгруппы групп
- •3.2.3. Циклические группы
- •3.2.4. Гомоморфизмы групп
- •3.2.5. Группы подстановок
- •3.2.6. Действие группы на множестве
- •3.3. Кольца и поля
- •3.3.1. Определения
- •3.3.2. Подкольца
- •3.3.3. Гомоморфизмы колец
- •3.3.4. Евклидовы кольца
- •3.3.5. Простые и максимальные идеалы
- •3.3.6. Конечные расширения полей
- •3.3.7. Поле разложения
- •3.3.8. Конечные поля
- •3.3.9. Порядки неприводимых многочленов
- •3.3.10. Линейные рекуррентные последовательности
- •3.3.11. Последовательности максимального периода
- •3.3.12. Задания
- •Тема 4. Классификация шифров
- •4.1. Классификация шифров по типу преобразования
- •4.2. Классификация шифров замены
- •4.3 Шифры перестановки
- •4.3.1. Маршрутные перестановки
- •4.3.2. Элементы криптоанализа шифров перестановки
- •4.4. Шифры замены
- •4.4.1. Поточные шифры простой замены
- •4.4.2. Криптоанализ поточного шифра простой замены
- •4.4.3. Блочные шифры простой замены
- •4.4.4. Многоалфавитные шифры замены
- •4.4.5. Дисковые многоалфавитные шифры замены
- •4.5. Шифры гаммирования
- •4.5.1. Табличное гаммирование
- •4.5.2. О возможности восстановления вероятностей знаков гаммы
- •4.5.3. Восстановление текстов, зашифрованных неравновероятной гаммой
- •5.5.4. Повторное использование гаммы
- •4.5.5. Криптоанализ шифра Виженера
- •Тема 5. Поточные шифры
- •5.1. Принципы построения поточных шифрсистем
- •Примеры поточных шифрсистем
- •5.3. Линейные регистры сдвига
- •5.4. Алгоритм Берлекемпа-Месси
- •5.5. Усложнение линейных рекуррентных последовательностей
- •5.6. Методы анализа поточных шифров
- •6. Блочные шифры
- •6.1. Принципы построения блочных шифров
- •6.2. Примеры блочных шифров
- •6.3. Режимы использования блочных шифров
- •6.4. Комбинирование алгоритмов блочного шифрования
- •6.5. Методы анализа алгоритмов блочного шифрования
- •6.6. Рекомендации по использованию алгоритмов блочного шифрования
- •7. Криптографические хэш-функции
- •7.1. Функции хэширования и целостность данных
- •7.2. Ключевые функции хэширования
- •7.3. Бесключевые функции хэширования
- •7.4. Целостность данных и аутентификация сообщений
- •7.5. Возможные атаки на функции хэширования
- •Тема 8. Криптосистемы с открытым ключом
- •8.1. Шифрсистема rsa
- •8.2. Шифрсистема Эль-Гамаля
- •8.3. Шифрсистема Мак-Элиса
- •8.4. Шифрсистемы на основе "проблемы рюкзака"
3.1.14. Квадратичный закон взаимности
Гаусс доказал следующую лемму, упрощающую вычисление символа Лежандра.
Лемма 1. где
Теорема 1 (квадратичный закон взаимности). Для любых нечетных простых р, q выполнено равенство
3.1.15. Символ Якоби
Символ Якоби является обобщением символа Лежандра и служит для упрощения вычисления последнего. Пусть Р – нечетное натуральное число, Р=р1р2рs – его разложение на простые множители. Для всякого целого а, (a,Р)=1, символ Якоби определяется по формуле
Отметим следующие свойства.
Свойство 1.
Свойство 2.
Свойство 3.
Свойство 4.
Заметим, что из равенства нe следует, что а является квадратичным
вычетом по модулю Р. В действительности, а является квадратичным вычетом по модулю Р тогда и только тогда, когда а — квадратичный вычет по модулю
каждого простого рi, i= 1, 2, ..., s. В то же время из равенства следует, что a – квадратичный невычет по mod P.
Теорема 1. Пусть Р и Q – положительные взаимно простые нечетные модули. Тогда
3.1.16. Цепные дроби
Пусть – положительное вещественное число. Положим q1 =[]. Тогда, если нецелое, то
где 2 >1. Продолжая этот процесс, получаем
Следовательно
Представление в указанном виде называется разложением в цепную (непрерывную) дробь. При иррациональном цепная дробь, очевидно, оказывается бесконечной. При рациональном дробь будет конечной. Покажем это.
Пусть =a/b . Применим алгоритм Евклида:
Следовательно,
Теорема 1. Всякое иррациональное разлагается в бесконечную цепную дробь. Всякое рациональное разлагается в конечную цепную дробь.
3.1.17. Подходящие дроби
Далее будем использовать запись
=[ q1, q2,…, qs, s+1].
Числа q1, q2,…, qs называются неполными частными, а рациональное число s= [q1, q2,…, qs] – s-й подходящей дробью числа . Через Рs обозначается числитель, а через Qs – знаменатель подходящей дроби s.
Например, P1 =q1, Q1 =1. Удобно считать, что Р0 =1, Q0 =0. Имеет место следующий закон образования подходящих дробей.
Теорема 1. Рs =qsPs-1 +Ps-2 , Qs =qsQs-1 +Qs-2
Теорема 2. s –s-1 =(–1)s/(QsQs-1). РsQs-1 – QsPs-1 =(–1)s
Следствие 1. Все подходящие дроби несократимы.
Теорема 3. При s подходящие дроби 1,2,..., s, с четными номерами являются последовательными приближениями , с одной стороны, а с нечетными номерами – с другой, т.е.
1 < 3< ...< < ...< 4 <2.
3.1.18. Подходящие дроби в качестве наилучших приближений
Несократимую дробь a/b(b > 0) назовем наилучшим приближением первого рода числа R, если
В случае, когда выполняется условие
говорят о наилучшем приближении второго рода, которое является и наилучшим приближением первого рода. Обратное утверждение неверно. Легко проверить, что 1/3 является наилучшим приближением лишь первого рода числа 1/5.
Теорема 1. Всякая подходящая дробь s, s>1 есть наилучшее приближение второго рода.
Теорема 2. |Qs-1– Ps-1| > |Qs – Ps |, а значит, | – Ps-1/Qs-1| > | – Ps/Qs|.
Теорема 3. Если P/Q – несократимая дробь, Q > 0, такая, что
то P/Q – подходящая дробь числа .
В заключение отметим факт, который потребуется в дальнейшем:
При разложении рационального числа P/Q в цепную дробь длина последней ограничена сверху величиной 2log2Q +1.
Задания
1. Показать, что 30 | т5 – т, 6|т(т2 + 5), 42 | т7 – т, 30 | тп(т4 – n4) при любых натуральных т, п.
2. Показать, что при натуральном т произведение (т + 1)(m + 2) ••• (т + т) делится на 2m.
3. Будут ли целыми числа
4. Пусть (а, b) = 1. Показать, что (a + b, а – b) 2.
5. Вычислить НОДы: (549, 387), (589, 343), (12606, 6494), (6188, 4709) и найти их линейные разложения.
6. Доказать, что НОД можно определить как такой общий делитель, который делится на любой другой общий делитель.
7. Пусть (а,b) = 1, ab = с2 . Показать, что числа а и b будут квадратами.
8. Показать, что р2 – q2 кратно 24, где р, q – простые числа, большие 3.
9. Доказать бесконечность множества простых чисел вида 4т + 3.
10. Доказать бесконечность множества простых чисел вида 6m+ 5.
11. Пусть k – натуральное. Доказать, что в натуральном ряду имеется бесконечно много отрезков т, т + 1,..., т + k, не содержащих простых чисел.
12. Найти канонические разложения чисел 82798848, 81057226635.
13. Разложить на простые множители числа 10!, 15!, 20!, 30!.
14. Сколькими нулями оканчиваются числа 50!, 100!?
15. Найти функцию Эйлера для чисел 375, 720, 957, 988, 1200, 4320.
16. Сколько чисел в интервале от 1 до 120 не взаимно простых с 30?
17. Дано (а) =120, а = рq, где р, q – простые. Найти a, если р – q =2.
18. Доказать, что уравнение 15х2 – 7у2 = 9 не имеет решений в целых числах.
19. Решить в целых числах уравнение х2 + у2 = z2.
20. Доказать, что сумма квадратов пяти последовательных целых чисел не может быть точным квадратом.
21. Решить в целых числах уравнения 53х + 47у =1, 22х + 32у =18.
22. Путем перебора решить сравнения:
1) 5х2 – 15х +220(mod 3), 4) 7x 31(mod 6),
2) х3 – 12 0(mod 5), 5) 12x 1(mod 7),
3) 3х 1(mod 5), 6) 6x + 5 6(mod 7).
23. Способом Эйлера решить сравнения:
1) 5х 0(mod 7), 3) 5x 7(mod 7),
2) 25х 15(mod 7), 4) 5x 26(mod 12).
24. Решить системы сравнений:
x 3(mod 8), x 2(mod l7),
х 11(mod 20), 5x 3(mod 9),
x l(mod l5), 8x 4(mod l4).
25. Решить системы сравнений китайским способом:
x 2(mod 7), x 3(mod 8),
x 9(mod 11), x 2(mod 9),
x 3(mod 13), x 5(mod 7).
26. Составить таблицы индексов:
-
по mod 29 с основанием 2,
-
по mod 23 с основанием 5.
Путем индексирования решить сравнения:
1) 2х (mod 67), 5) 37х16 62(mod 73),
2) 52х 38(mod 29), 6) 2x3 17(mod 41),
3) 13х (mod 47), 7) 5x4 3(mod 11).
4) 12х 17(mod 31), 8) 27x5 2(mod 31).
27. Пусть а принадлежит показателю , b – показателю , (,)=1. Показать, что ab принадлежит показателю .
28. Пусть а принадлежит показателю , b – показателю . Как построить элемент, принадлежащий показателю [,]?
29. Пусть а принадлежит показателю . Какому показателю принадлежит a?
30. Пусть g – первообразный корень по модулю т. Сколько всего первообразных корней по этому модулю?
31. Вычислить символы Лежандра и Якоби:
32. Найти все квадратичные вычеты по модулю числа р:
р=11, p=13, р=17.
33. Доказать, что при р = 4k + 1 числа а и р-а — одновременно квадратичные вычеты или невычеты, а при р= 4k + 3 — наоборот.
34. Решить сравнения: х2 19 (mod 31), х2 15 (mod 53), x2 11 (mod 59).
35. Решить сравнения: х2 + 8х – 20 0(mod 45), 5x2 + х + 4 0(mod 10).
36. Пользуясь леммой Гаусса и представлением
доказать, что
37. Показать, что для любого целого d и любого нечетного простого р количество решений сравнения х2 d (mod p) равно
38. Найти способ решения сравнений вида х2 4(mod m).
39. Доказать, что количество решений уравнения х2 + у2 = р, (х,у)=1, х >0, у>0 равно количеству решений сравнения z2 + 1 0(mod p).
40. Разложить в цепные дроби числи 170/109, 99/170, 125/92, .