Программная реализация асимметричных криптографических алгоритмов: Шифрование и расшифрование по алгоритму RSA
ВВЕДЕНИЕ
В современном мире, где информация является ценным ресурсом, обеспечение ее конфиденциальности и целостности приобретает первостепенное значение. Криптография, как наука о методах защиты информации, предлагает широкий спектр инструментов для решения этих задач.
Одним из важных направлений криптографии является шифрование с открытым ключом, или асимметричное шифрование, которое подразумевает использование двух ключей: открытого, доступного для всех, и закрытого, известного только владельцу. Этот подход, в отличие от симметричного шифрования, где используется один и тот же ключ, позволяет решить проблему безопасного обмена ключами
СОДЕРЖАНИЕ
ВВЕДЕНИЕ 4
1 Обзор литературы 6
1.1 Математические основы алгоритма RSA 6
1.1.1 Простые числа 7
1.1.2 Функция Эйлера (φ(n)) 8
1.1.3 Модульная арифметика 9
1.1.4 Наибольший общий делитель (НОД) 10
1.2 Алгоритм RSA: Принципы работы 11
1.2.1 Генерация ключей 11
1.2.2 Процесс шифрования и дешифрования 12
1.2.3 Математическое обоснование алгоритма RSA 13
1.3 Безопасность и ограничения алгоритма RSA 14
1.3.1 Основы безопасности RSA 14
1.3.2 Уязвимости и атаки на RSA 14
1.3.3 Влияние длины ключа, ограничение алгоритма и защита от атак 15
1.4 Области применения алгоритма RSA 15
2 Практическая часть 17
2.1 Реализация алгоритма RSA 17
2.1.1 Генерация ключей 17
2.1.2 Функции шифрования и расшифрования 19
2.2 Поддержка обработки ошибок 20
ЗАКЛЮЧЕНИЕ 21
ПРИЛОЖЕНИЕ А 23
ПРИЛОЖЕНИЕ Б 26
ПРИЛОЖЕНИЕ В 28
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Коваленко Е. А., Клочко О. С. Алгоритм шифрования данных RSA //Электронный журнал: наука, техника и образование. – 2016. – №. 3. – С. 24-34
2. Дмитриев А. П., Рагило П. Ю., Вайтюль И. В. О распределении простых чисел //ТЕЗИСЫ ДОКЛАДОВ 51-й МЕЖДУНАРОДНОЙ НАУЧНО-ТЕХНИЧЕСКОЙ КОНФЕРЕНЦИИ ПРЕПОДАВАТЕЛЕЙ И СТУДЕНТОВ. – 2018. – С. 124-124
3. Лихарева Ю. А., Сергеев А. Э., Сергеев Э. А. О функции Эйлера //Политематический сетевой электронный научный журнал Кубанского государственного аграрного университета. – 2017. – №. 127. – С. 113-125
4. Инютин С. А. Вычислительные задачи большой алгоритмической сложности и модулярная арифметика //Вестник Тюменского государственного университета.—2002.—№ 3. – 2002
5. Верещагина Л. С., Саутиева З. А. А., Шумакова О. А. АЛГОРИТМ ЕВКЛИДА //Научные исследования: проблемы и перспективы. – 2019. – С. 29-32
6. В.Ф. Шаньгин Защита информации в компьютерных системах и сетях. Москва, 2012
7. Коренева А. М., Саварин И. Сравнительный обзор безопасности популярных корпоративных мессенджеров //Инженерный вестник Дона. – 2024. – №. 8 (116). – С. 3
8. Сергеев А. С. О возможнос
Конгруэнтность чисел по модулю означает, что разность между этими числами делится на модуль без остатка, то есть a ≡ b (mod n), если (a-b) делится на n. Это отношение является отношением эквивалентности, удовлетворяющим рефлексивности, симметричности и транзитивности.
В алгоритме RSA модульная арифметика играет ключевую роль. Она используется во всех вычислениях, включая шифрование, дешифрование и генерацию ключей. Шифрование сообщения m происходит путем вычисления me mod n, а расшифрование зашифрованного сообщения c путем вычисления cd mod n, где n является

