747331
.rtfРазмещено на http://www.allbest.ru/
МИНИСТЕРСТВО РОССИЙСКОЙ ФЕДЕРАЦИИ
ПО СВЯЗИ И ИНФОРМАТИЗАЦИИ
Московский технический университет связи и информатики
Курсовая работа
Реализация алгоритма криптозащиты Эль-Гамаля
Москва 2012
Оглавление
1. Об алгоритме Эль-Гамаля 3
Генерация ключей 3
Шифрование 4
Дешифрование 4
2. Реализация 5
Таблица необходимых функций: 5
Таблица массивов: 6
Список используемой литературы 14
1. Об алгоритме Эль-Гамаля
История
Схема была предложена Тахером Эль-Гамалем в 1984 году. Эль-Гамаль разработал один из вариантов алгоритма Диффи-Хеллмана. Он усовершенствовал систему Диффи-Хеллмана и получил два алгоритма, которые использовались для шифрования и для обеспечения аутентификации. В отличии от RSA алгоритм Эль-Гамаля не был запатентован и, поэтому, стал более дешевой альтернативой, так как не требовалась оплата взносов за лицензию. Считается, что алгоритм попадает под действие патента Диффи-Хеллмана.
Алгоритм
Алгоритм Эль-Гамаля– двухключевой алгоритм, предназначен как для шифрования/ дешифрования сообщений, так и для генерации электронной подписи. В основе секретности алгоритма лежит высокая сложность операций вычисления целочисленных логарифмов по сравнению с операцией возведения в степень в конечных полях.
При использовании алгоритма Эль-Гамаля для шифрования информации зашифрованное сообщение будет иметь вдвое больший размер по сравнению с исходным.
Генерация ключей
Для генерации пары ключей, - открытого и индивидуального, - необходимо выбрать большое простое число p и два произвольных числа g и d:
Далее следует вычислить:
Открытый ключ составляют числа Z, g, и p, причем g и p могут быть общими для группы пользователей.
Индивидуальным (закрытым) ключом является число d.
Шифрование
Для шифрования сообщения X выбирается произвольное число V, взаимно простое с (p-1), и вычисляется:
Y1 и Y2 составляют зашифрованное сообщение, его размер вдвое превышает размер шифруемого исходного сообщения X.
Дешифрование
Дешифрование производится в соответствии с выражением:
Поскольку:
т.е. восстановленное сообщение X’ адекватно исходному сообщению X.
2. Реализация
Реализуем алгоритм шифрования / дешифрования Эль-Гамаля средствами процессора ADSP-2181 в расширенных полях Галуа.
В качестве учебной модели будем работать с трех регистровыми числами.
Для этого возьмём примитивный полином
Выберем числа g, d и V:
Когда открытый и закрытый ключи известны можно приступать к непосредственному написанию программы на ассемблере процессора ADSP-2181.
Таблица необходимых функций:
Имя функции |
Описание |
umn_AxB |
подпрограмма умножения двух 64 разрядных чисел по модулю . Входные параметры: A[4](множитель 1), B[4](множитель 2). Выходные параметры: result_umn[4](результат подпрограммы). Портит содержание регистров:sr1,sr0, si, ay1, ay0, ar, ax1 |
nakopl_bank |
подпрограмма накопления банка степеней числа N до () степени. Входные параметры: N[4](число возводимое в степени). Выходные параметры: rezult_bank[260](банк). Портит содержание регистров:sr1, sr0, si, ay1, ay0, ar, ax1 |
vozvedenie_v_stepen |
подпрограмма возведения в степень. Входные данные: F[4](степень), N[4](число), FL[1](флаг перезаполнения банка). Выходные данные: rezult_vozvedenia[4]. Портит содержание регистров: sr1, sr0, si, ay1, ay0, ar, ax1 |
Таблица массивов:
Массив |
Обозначение начального адреса |
Размер буфера |
Описание |
rezult_bank |
I0 |
260 |
Банк степеней |
A |
I1 |
4 |
Множитель A, операции умножения |
result_umn |
I2 |
4 |
Результат умножения |
B |
I3 |
4 |
Множитель В, операции умножения |
N |
I4 |
4 |
Число возводимое в степень |
X |
I5 |
4 |
Входной блок информации |
rezult_vozvedenia |
I6 |
4 |
Результат возведения в степень |
F |
I5 |
4 |
Степень |
Z |
- |
4 |
Открытый ключ Z |
Y1 |
- |
4 |
Первая часть зашифрованного сообщения |
Y2 |
- |
4 |
Вторая часть зашифрованного сообщения |
P |
- |
4 |
Число P |
g |
- |
4 |
Число g |
d |
- |
4 |
Число d |
V |
- |
4 |
Число V |
tmp |
- |
1 |
Временная переменная |
Блок-схемы
криптозащита эль гамаля шифрование
Список используемой литературы
1.Шаврин С.С. Защита информации в многоканальных телекоммуникационных системах. часть 1.
2.Шаврин С.С. Защита информации в многоканальных телекоммуникационных системах. часть 2.
Размещено на Allbest.ru