Вход на сайт Навигация по сайту Любить и уважать Бонус-счастливчики
|
Содержимое файла "L3.doc" (без форматирования) Мініcтерство освіти та науки України ОДЕСЬКИЙ НАЦІОНАЛЬНИЙ ПОЛІТЕХНІЧНИЙ УНІВЕРСИТЕТ Інститут радіоелектроніки та телекомунікацій Кафедра ІБ Протокол до лабораторної роботи №3 “ЦИФРОВИЙ ПІДПИС RSA” Виконав студент групи РТ-061 ______________ (підпис) ____________________2010 р. Перевірив ств. каф. РТС ______________ Яковенко О.О. (підпис) ____________________2010 р. Одеса 2010 Цель работы: Овладеть принципами генерирования и проверки цифровой подписи RSA. Получить представление о асимметричном шифровании RSA. Понять принцип работы алгоритма RSA, и убедиться в его работоспособности на примере. Работа в лаборатории Цифровая подпись RSA 1. Генерирование ключей 1.1 Выбрем два простых числа p и q. Все простые числа в этом диапазоне приведены ниже: 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997 Тогда выберем p=503, q=709. 1.2 Рассчитаем их произведение: 1.3 Рассчитаем функцию Эйлера от их произведения: 1.4 Выберем секретный ключ е. Он должен лежать в пределах и быть взаимно-простым с . Выбирем ключ е=997 и проверим является ли выбранный ключ е взаимно простым с можно, используя программу Обратный элемент. Результат работы программы приведён на рисунке 3.1. Рис. 3.1 –Проверка правильности выбора секретного ключа е 1.5 Так как вычисление обратного элемента прошло успешно, то его результат d=159349 является открытым ключем. 2. Подписывание сообщения 2.1 Подготовим сообщение, состоящее из текстовой строки. Ее лучше всего набрать в блокноте (рис. 3.2). Длина строки должна быть не меньше пяти букв. Рис. 3.2 – Сообщение в виде текстовой строки 2.2 Найдем хэш подготовленной строки Н. Для этого используем программу Эмуляции хэш-функции (рис. 3.3). Рис. 3.3 – Вычисление хеш значения строки 2.3 Рассчитаем значение цифровой подписи: . Для расчета используем программу Возведение в степень по модулю (рис.3.4). Рис. 3.4 – Расчет значения цифровой подписи 2.4 Допишем в блокноте с новой строки два числа – и (рис. 3.5). Эти два числа и являются цифровой подписью. Они передаются вместе с сообщением. Также для проверки цифровой подписи необходимо знать открытый ключ отправителя . В реальных протоколах такой ключ хранится на специальных серверах аутентификации и выдается абонентам по требованию. В лабораторной работе эта схема упрощена, и открытый ключ можно записать вместе с цифровой подписью (например, третьей строкой в текстовом файле). Рис. 3.5 – Цифровая подпись 3. Проверка цифровой подписи 3.1 Получим текстовый файл с сообщением от другой бригады (рис. 3.6). Рис. 3.6 – Текстовый файл с сообщением от другой бригады 3.2 . Скопируем первую строку в программу Эмуляция хэш-функции и найдем ее хэш (рис. 3.7). Полученное значение запишем как . Рис. 3.7 – Нахождение хэш значения Н1 для полученного сообщения 3.3 Расшифруем цифровую подпись при помощи открытого ключа отправителя сообщения (который находится в третей строчке текстового документа) по формуле: . Для расчета используется программа Возведение в степень по модулю (рис 3.8) Рис. 3.8 – Расшифровка цифровой подписи 3.4 Так как полученный хэш равен расшифрованному хэшу , то цифровая подпись верна, и это свидетельствует о том, что: А) Текст не подвергался изменению (иначе изменился бы его хэш); Б) Хэш был зашифрован владельцем секретного ключа е, и никем другим. Выводы: в ходе данной лабораторной работы я овладел принципами генерирования и проверки цифровой подписи RSA. Получил представление о асимметричном шифровании RSA. Понял принцип работы алгоритма RSA, и убедился в его работоспособности на примере. |
Посетителей: 0, из них зарегестрированных: 0, гостей: 0 Зарегистрированные пользователи: Подробно | Страница сгенерирована за 0.0605 сек. |