Министерство образования и науки Луганской народной республики
ГОУ ВПО «Луганский государственный университет имени Владимира Даля»
Стахановский инженерно-педагогический институт
Кафедра информационных систем
Лабораторная работа № 7
по дисциплине «МСЗКИ»
Луганск, Стаханов 2021
Лабораторная работа № 7
Тема: Алгоритмы асимметричного шифрования. Алгоритм шифрования Эль Гамаль
Цель: изучение алгоритма и методики практической реализации
алгоритма Эль Гамаль
Задания для выполнения
1) Ознакомиться с разделами методических указаний к данной лабораторной работы.
2) С помощью алгоритма Эль Гамаль зашифровать и дешифровать число, равное сегодняшней дате (число), составленной с номером варианта (например, сегодня 12 апреля, а Ваш вариант – 3, тогда искомое число – 12+3=15). Значение и g =7 (для четных вариантов), p= 11 и g = 2 (для нечетных вариантов).
3) С помощью алгоритма Эль Гамаль зашифровать и расшифровать свое имя. Параметры и g такие же, как и во втором задании.
Генерация ключей:
P=11
G=2
X=8(закрытый ключ)
Вычисляем Y по формуле (Y=gxmod p)
Y=3
Открытый ключ:Y=3; P=11; G=2
Шифруем сообщение М
М=5
Выбираем k(1<k<p-1) взаимно простое с p-1
k=9
Вычисляем А А=gkmod p
A=6
Вычисляем B B=YkM mod p
B=9
Расшифровываем
Получаем сообщение A=6; B=9; Y=3; P=11; G=2
X=8 и закрытый ключ
Вычисляем M по формуле M= B*A(p-1-x)mod p
M=5
С помощью алгоритма Эль Гамаль зашифровать и расшифровать свое имя
M= Настя
Произведем генерацию ключей:
P=11
g=2
Секретный ключ X=7 — случайное целое число такое, что 1<X<P
Вычисляем открытый ключ y: y=gxmod P =57 mod23 = 17 .
Открытым ключом является: P=11; g=2;y=17 .
Теперь вычисляем хэш-функцию: h(M)= h(Настя)=m=3 .
Выберем случайное число такое, что выполняется условие 1 < k < p − 1. Пусть k=5
Вычисляем r=gk modp = 55 mod23 = 20 .
С помощью расширенного алгоритма Евклида находим число s из уравнения3= (7*20+5*s) mod22. Такое s существует, так как НОД(k,p-1)=1. Получим что s=21.
Сообщение: (Настя 20,21).
Проверка полученного сообщения.
Вычисляем хэш-функцию: h(M)= h(Настя)=m=3 .
Проверяем сравнение yr*rs=gm mod p .
Вычислим левую часть по модулю 23: 1720*2021mod23=16*15mod23=10.
Вычислим правую часть по модулю 23:53 mod23=10 .
Выводы
Вывод: в лабораторной работе мы ознакомились с алгоритмом асимметричного шифрования и так же алгоритмом шифрования Эль Гамаля.
© ООО «Знанио»
С вами с 2009 года.