АЛГОРИТМ RSA Шифрование с открытым ключом
Содержание Симметричный шифр Ассиметричный шифр Виды ассиметричных шифров Алгоритм RSA Алгоритм RSA Теоретические основы алгоритма Практическая реализация и пример Заключение Список литературы
Симметричный шифр Симметричный шифр – метод передачи шифрованной информации, в котором зашифровывающий и расшифровывающий ключи совпадают. Стороны, обменивающиеся зашифрованными данными, должны знать общий секретный ключ.
Симметричный шифр
Достоинства: Всего один зашифровывающий / расшифровывающий ключ Недостатки: Процесс обмена информацией о секретном ключе представляет собой брешь в безопасности. Для передачи секретного ключа необходим закрытый канал связи.
Ассиметричный шифр Ассимметричный шифр – метод передачи шифрованной информации, в котором зашифровывающий и расшифровывающий ключи не совпадают. Ассиметричное шифрование является односторонним процессом. Данные шифруются только открытым ключом Расшифровываются только секретным Открытый и секретный ключ связаны между собой.
Ассиметричный шифр
Достоинства: Для передачи ключа не нужен закрытый канал связи. Открытый ключ может быть свободно распространен, это позволяет принимать данные от всех пользователей. Недостатки: Ресурсоемкий алгоритм шифрования / дешифрирования
Виды ассиметричных шифров RSA Rivest-Shamir-Adleman (Ривест-Шамир-Адлеман) DSA Digital Signature Algorithm (Алгоритм цифровой подписи) EGSA El-Gamal Signature Algorithm (Алгоритм ЭЦП Эль-Гамаля) ECC Elliptic Curve Cryptography (Криптография эллиптической кривой) ГОСТ Р Российский стандарт схожий с DSA ГОСТ Р Российский стандарт схожий с ECC
Алгоритм RSA RSA (1977 г.) – криптографическая система открытого ключа. Обеспечивает такие механизмы защиты как шифрование и цифровая подпись. Цифровая подпись (ЭЦП) – механизм аутентификации, позволяющий проверить принадлежность подписи электронного документа его владельцу. Алгоритм RSA используется в Internet, к примеру в: S/MIME IPSEC (Internet Protocol Security) TLS (которым предполагается заменить SSL) WAP WTLS.
Алгоритм RSA: Теория В основу асимметричных криптосистем кладётся одна из сложных математических проблем, которая позволяет строить односторонние функции и функции- лазейки. В основе алгоритма RSA лежит вычислительная проблема разложения больших чисел на простые множители.
Алгоритм RSA: Теория Односторонняя функция – функция, которая вычисляется только прямо, т.е. не обращается. Возможно найти f(x), зная x, но невозможно обратное. Односторонней функцией в RSA служит функция для шифрования. Лазейка – некий секрет, зная который можно обратить одностороннюю функцию. Лазейкой в RSA является секретный ключ.
Алгоритм RSA: Реализация 1. Выбираются два случайных простых числа p и q заданного размера o 2. Вычисляется модуль, n o 3. Вычисляется значение функции Эйлера o
Алгоритм RSA: Реализация 4. Выбирается целое число взаимно простое со значением функции o o е – открытая экспонента 5. Вычисляется число d, мультипликативной обратное к числу e, т.е. o o d – секретная экспонента 6. Открытый ключ 7. Секретный ключ
Алгоритм RSA: Реализация Шифрование Формула для шифрования Возьмем к примеру сообщение Запишем его кодом в соответствии с алфавитом Результат: Пример:
Алгоритм RSA: Реализация Дешифрирование Формула для дешифрирования Шифрованное сообщение Результат: В соответствии с алфавитом: Пример:
Заключение Алгоритмы ассиметричного шифрования используют как вспомогательный инструмент для передачи небольших объемов информации, к примеру секретных ключей симметричного шифра. Такие гибридные системы получили широкое распространение и классический алгоритм RSA сейчас является частью множества других безопасных протоколов передачи данных.
Список литературы Венбо Мао Современная криптография. Теория и практика. М.: Вильямс, с. Коутинхо С. Введение в теорию чисел. Алгоритм RSA. М.: Постмаркет, стр. Фергюсон Н., Шнайер Б. Практическая криптография М.: «Диалектика», с. Википедия [Электронный ресурс] – Режим доступа: