Вход на сайт Навигация по сайту Любить и уважать Бонус-счастливчики
|
Содержимое файла "L4.doc" (без форматирования) Мініcтерство освіти та науки України ОДЕСЬКИЙ НАЦІОНАЛЬНИЙ ПОЛІТЕХНІЧНИЙ УНІВЕРСИТЕТ Інститут радіоелектроніки та телекомунікацій Кафедра ІБ Протокол до лабораторної роботи №4 “АЛГОРИТМИ АСИМЕТРИЧНОГО ШИФРОВАННЯ ТА ЦИФРОВОГО ПІДПИСУ, ЯКІ ОСНОВАНІ НА ПРОБЛЕМІ ДИСКРЕТНОГО ЛОГАРИФМУ” Виконав студент групи РТ-061 ______________ (підпис) ___________________2010 р. Перевірив ств. каф. ІБ ______________ Яковенко О.О. (підпис) ___________________2010 р. Одеса 2010 Цель работы: Овладеть методом асимметричного шифрования Эльгамаля и принципами генерирования и проверки цифровой подписи DSA. Работа в лаборатории Часть первая: Метод асимметричного шифрования Эльгамаля 1. Генерирование ключей 1.1 Выбрем два простых числа q и g. Это числа: q=257, g=5 1.2 Выберем секретный ключ х в диапазоне{0,…,q – 1}. Тогда х=113. 1.3 Рассчитаем открытый ключ h по формуле с помощью программы Возведение в степень по модулю. Тогда получим HYPER14HYPER15 Таким образом открытым ключом являются три числа: h=217, q=257, g=5. 2. Зашифровка сообщения 2.1 Подготовим сообщение (слово из нескольких букв) и укажем его код с помощью программы Таблица символов ASCII (рис. 4.1). Рис. 4.1 – Подготовка и зашифровка сообщения 2.2 Узнаем открытый ключ того абонента, которому необходимо отправить сообщение. Пусть данный абонент имеет секретный случайный ключ из диапазона {0,…,q – 1} y=137 Имеем открытый ключ абонента котрому надо передать сообщение: h=217, q=257, g=5. 2.3 Рассчитаем число , тогда получим 2.4 Рассчитаем общий секрет s по формуле , тогда 2.5 Рассчитаем число , и получим ion.3 HYPER14HYPER15. . . 2.7 Число и последовательность чисел являются шифротекстом сообщения. Передадим эти числа владельцу закрытого ключа, для которого и производилась зашифровка. 3. Расшифровка сообщения 3.1 Получим зашифрованное сообщение: 3.2 Рассчитаем общий секрет s по формуле , тогда ation.3 HYPER14HYPER15. 3.3 Рассчитаем m по формуле: , где – обратный элемент для по модулю . Тогда при s-1=3, получим . . MBED Equation.3 HYPER14HYPER15. . Часть вторая: Цифровая подпись DSA 1. Подготовка ключей: первая фаза 1.1 Проведем выбор ключей, которые являются общими для всех пользователей системы цифровой подписи. 1.2 Выберем простое число q=1009. 1.3 Выберем простое число р, такое что р – 1 кратно q. Выберем . 1.4 Выбираем число g, чей мультипликативный порядок по модулю – это . Такое число можно найти по формуле: . В таком случае . 1.5 Параметры p, q и g являются открытыми, и могут быть открыто распространены между всеми пользователями системы. 2. Подготовка ключей: вторая фаза 2.1 Рассчитаем закрытые и открытые ключи для каждого пользователя. 2.2 Выбираем секретный ключ х=577, что отвечает диапазону . 2.3 Рассчитаем открытый ключ по формуле , тогда получим 3. Подписывание сообщения 3.1 Подготовим сообщение, состоящее из текстовой строки (рис. 4.2) Рис. 4.2 – Подготовленное сообщение 3.2 Найдем хэш подготовленной строки Н (рис. 4.3) Рис. 4.3 – Подсчет хэш-значения 3.3 Сгенерируем случайное для каждого подписываемого сообщения число =311 в диапазоне . 3.4 Рассчитаем r по формуле , тогда получим . 3.5 Рассчитаем число по формуле . При этом =146, тогда 3.6 Пара чисел r и s являются цифровой подписью сообщения, поэтому допишем их к передаваемому сообщению с новой строки (рис. 4.4). Рис. 4.4 – Цифровая подпись DSA 4. Проверка подписи 4.1 Получим файл с сообщением от другой бригады (рис. 4.5) и найдем значение хэш функции Н1 (рис. 4.6) Рис. 4.5 – Файл с сообщением от второй бригады Рис. 4.6 – Подсчет хэш-значения Н1 для полученного сообщения 4.2 Будем использовать полученные вместе со строчкой числа и , а также открытый ключ , чтобы проверить подлинность подписи. 4.3 Рассчитаем w по формуле , тогда получим 4.4 Рассчитаем u1 по формуле , тогда получим 4.5 Рассчитаем u2 по формуле , тогда получим 4.6 Рассчитаем v по формуле , тогда получим Так как v=r, то значит, что цифровая подпись верна и это свидетельствует о том, что: А) Текст не подвергался изменению (иначе изменился бы его хэш); Б) Хэш был зашифрован владельцем секретного ключа у, и никем другим. Выводы: в ходе данной лабораторной работы я овладел принципами генерирования и проверки цифровой подписи DSA. Также овладел и понял метод асимметричного шифрования Эльгамаля. |
Посетителей: 0, из них зарегестрированных: 0, гостей: 0 Зарегистрированные пользователи: Подробно | Страница сгенерирована за 0.0631 сек. |