
Алгоритм RSA
.docx
Содержание
Введение 3
Основная часть 5
1История создания 5
2Описание алгоритма 5
2.1Создание ключей 6
2.2Шифрование и расшифрование 6
7
2.3Пример использования 7
Заключение 9
Список использованных источников 10
Введение
Криптография – специальная система изменения обычного письма, используемая с целью сделать текст понятным лишь для ограниченного числа лиц, знающих эту систему [1].
Криптография – наука о защите информации с использованием математических методов [2].
Современная криптография включает в себя:
-
симметричные криптосистемы;
-
асимметричные криптосистемы;
-
системы электронной цифровой подписи (ЭЦП);
-
хеш-функции;
-
управление ключами;
-
получение скрытой информации;
-
квантовая криптография.
Симметричное шифрование - симметричными называются алгоритмы, в которых для шифрования и дешифрования используется один и тот же (известный только отправителю и получателю) секретный ключ.
Распространенные алгоритмы симметричного шифрования:
-
AES (англ. Advanced Encryption Standard) - американский стандарт шифрования;
-
ГОСТ 28147-89 — отечественный стандарт шифрования данных;
-
DES (англ. Data Encryption Standard) - стандарт шифрования данных в США до AES;
-
3DES (Triple-DES, тройной DES);
-
IDEA (англ. International Data Encryption Algorithm);
-
SEED - корейский стандарт шифрования данных;
-
Camellia - сертифицированный для использовании в Японии шифр;
-
XTEA - наиболее простой в реализации алгоритм [3].
Асимметричные криптоалгоритмы призваны в первую очередь устранить основной недостаток симметричных криптосистем – сложность управления и распространения ключей.
Основой всех асимметричных криптоалгоритмов является большая вычислительная сложность восстановления открытого текста без знания закрытого ключа.
Примеры асимметричных криптоалгритмов:
-
Diffie-Hellmann;
-
RSA – Rivest, Shamir, Adelman – основан на сложности задачи разложения на множители больших чисел за короткое время;
-
El Hamal;
-
DSA – Digital Signature algorithm, стандарт США;
-
ГОСТ Р 34.10 – 94, 2001, стандарты РФ [4].
В данном реферате подробно рассмотрим ассиметричный криптоалгоритм шифрования – алгоритм RSA.
Основная часть
Алгоритм RSA (буквенная аббревиатура от фамилий Rivest, Shamir и Adleman) – криптографический алгоритм с открытым ключом, основывающийся на вычислительной сложности задачи факторизации больших целых чисел. Криптосистема RSA стала первой системой, пригодной и для шифрования, и для цифровой подписи.
-
История создания
Опубликованная в ноябре 1976 года статья Уитфилда Диффи и Мартина Хеллмана «Новые направления в криптографии» перевернула представление о криптографических системах, заложив основы криптографии с открытым ключом. Разработанный впоследствии алгоритм Диффи — Хеллмана позволял двум сторонам получить общий секретный ключ, используя незащищенный канал связи. Однако этот алгоритм не решал проблему аутентификации. Без дополнительных средств пользователи не могли быть уверены, с кем именно они сгенерировали общий секретный ключ.
Изучив эту статью, трое учёных Рональд Ривест (англ. Ronald Linn Rivest), Ади Шамир (англ. Adi Shamir) и Леонард Адлеман (англ. Leonard Adleman) из Массачусетского Технологического Института (MIT) приступили к поискам математической функции, которая бы позволяла реализовать сформулированную Уитфилдом Диффи и Мартином Хеллманом модель криптографической системы с открытым ключом. После работы над более чем 40 возможными вариантами, им удалось найти алгоритм, основанный на различии в том, насколько легко находить большие простые числа и насколько сложно раскладывать на множители произведение двух больших простых чисел, получивший впоследствии название RSA. Система была названа по первым буквам фамилий её создателей.
-
Описание алгоритма
Первым этапом любого асимметричного алгоритма является создание пары ключей – открытого и закрытого и распространение открытого ключа "по всему миру".
-
Создание ключей
Для алгоритма RSA этап создания ключей состоит из следующих операций:
-
Выбираются два очень больших простых числа
and
.
-
Вычисляется их произведение
, которое называется модулем.
-
Вычисляется значение функции Эйлера от числа
:
-
Выбирается произвольное число
(
), взаимно простое со значением функции
.
Число
называется открытой экспонентой
-
С помощью алгоритма Евклида вычисляется число
, которое удовлетворяет условию
-
Пара
публикуется в качестве открытого ключа RSA.
-
Пара
играет роль закрытого ключа RSA и держится в секрете.
-
Шифрование и расшифрование
Предположим, отправитель хочет послать
получателю сообщение
.
Сообщениями являются целые числа в
интервале от 0 до
,
т.е .
.
На рисунке 1 представлена схема алгоритма
RSA.
Рисунок 1 – Схема алгоритма RSA
Алгоритм Отправителя:
-
Взять открытый ключ
получателя
-
Взять открытый текст
-
Зашифровать сообщение с использованием открытого ключа получателя:
Алгоритм Получателя:
-
Принять зашифрованное сообщение
-
Взять свой закрытый ключ
-
Применить закрытый ключ для расшифрования сообщения:
Уравнения (1) и (2), на которых основана
схема RSA, определяют взаимно обратные
преобразования множества
[5].
-
Пример использования
В таблице 1 представлен пример использования алгоритма RSA. Отправитель отправил зашифрованное сообщение «111111» и получатель, используя свой закрытый ключ, расшифровал его.
Таблица 1 – Поэтапное выполнение алгоритма RSA
Этап |
Описание операции |
Результат операции |
Генерация ключей |
Выбрать два простых числа |
|
Вычислить модуль |
|
|
Вычислить функцию Эйлера |
|
|
Выбрать открытую экспоненту |
|
|
Вычислить секретную экспоненту |
|
|
Опубликовать ''открытый ключ'' |
|
|
Сохранить ''закрытый ключ'' |
|
|
Шифрование |
Выбрать текст для зашифровки |
|
Вычислить шифротекст |
|
|
Расшифрование |
Вычислить исходное сообщение |
|
Заключение
В данном реферате был подробно рассмотрен алгоритм ассиметричного шифрования RSA. Была описана история его создания, описаны алгоритмы создания ключей, шифрования и расшифровки. Также представлен пример практического использования алгоритма RSA.
Список использованных источников
-
Семенов Ю.А. Протоколы Internet // М.: Проспект, 2011. – 114 с.
-
Беляев А.В. Методы и средства защиты информации // ЧФ СПбГТУ, 2010. – 142с.
-
Венбо М. Современная криптография. Теория и практика // М.: Вильямс, 2005. — 768 с.
-
Шнайер Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты // М.: Триумф, 2002. — 816 с.
-
Алгоритм RSA // Интернет ресурс: http://ru.wikipedia.org/wiki/Rsa