МІНІСТЕРСТВО РОСІЙСЬКОЇ ФЕДЕРАЦІЇ
ПО ЗВ'ЯЗКУ ТА ІНФОРМАТИЗАЦІЇ
Московський технічний університет зв'язку та інформатики
Курсова робота
Реалізація алгоритму криптозахисту Ель-Гамаля
Москва 2012
Зміст
1. Про алгоритм Ель-Гамаля
. Реалізація
Список використаної літератури
1. Про алгоритм Ель-Гамаля
Історія
Схема була запропонована Тахера Ель-Гамалем в 1984 році. Ель-Гамаль розробив один з варіантів алгоритму Діффі-Хеллмана. Він удосконалив систему Діффі-Хеллмана і отримав два алгоритми, які використовувалися для шифрування і для забезпечення аутентифікації. У відмінності від RSA алгоритм Ель-Гамаля ні запатентований і, тому, став більш дешевою альтернативою, оскільки не була потрібна оплата внесків за ліцензію. Вважається, що алгоритм потрапляє під дію патенту Діффі-Хеллмана. p align="justify"> Алгоритм
Алгоритм Ель-Гамаля-двохключового алгоритм, призначений як для шифрування/дешифрування повідомлень, так і для генерації електронного підпису. В основі секретності алгоритму лежить висока складність операцій обчислення цілочисельних логарифмів в порівнянні з операцією зведення в ступінь в кінцевих полях. p align="justify"> При використанні алгоритму Ель-Гамаля для шифрування інформації зашифроване повідомлення буде мати вдвічі більший розмір порівняно з вихідним.
Генерація ключів
Для генерації пари ключів, - відкритого і індивідуального, - необхідно вибрати велике просте число p і два довільних числа g і d:
В В
Далі слід обчислити:
В
Відкритий ключ складають числа Z, g, і p, причому g і p можуть бути спільними для групи користувачів.
Індивідуальним (закритим) ключем є число d.
Шифрування
Для шифрування повідомлення X вибирається довільне число V, взаємно просте з (p-1), і обчислюється:
В В
Y1 і Y2 складають зашифроване повідомлення, його розмір удвічі перевищує розмір шіфруемого вихідного повідомлення X.
Дешифрування
Дешифрування проводиться відповідно з виразом:
В
Оскільки:
В В В
тобто відновлене повідомлення X адекватно вихідного повідомлення X.
2. Реалізація
Реалізуємо алгоритм шифрування/дешифрування Ель-Гамаля засобами процесора ADSP-2181 у розширених полях Галуа.