Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

747331

.rtf
Скачиваний:
30
Добавлен:
18.03.2015
Размер:
6.77 Mб
Скачать

Размещено на 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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]