Реализация шифрования дешифрования методом Эль-Гаммеля
Содержание
1.Текст задания, с указанием номера студента в журнале и соответствующих вариантов задания.
2.Краткое описание алгоритма шифра Эль-Гамаля.
3.Реализация шифрования/дешифрования методом Эль-Гамаля.
3.1.Описание основных функций и переменных.
3.2.Результаты выполнения программы.
4. Краткое описание алгоритма электронной подписи Диффи-Хеллмана.
5. Реализация алгоритма подписи сообщения c помощью системы Диффи-Хеллмана.
5.1. Описание основных функций и переменных.
5.2. Результаты выполнения программы.
6. Краткое описание алгоритма RC4.
7. Реализация алгоритма RC4.
7.1. Описание основных функций и переменных.
7.2. Результаты выполнения программы.
1.Текст задания, с указанием номера студента в журнале и соответствующих вариантов задания
. Программно реализовать на языке C++ алгоритм шифрования и дешифрования сообщения c помощью метода в соответствии с вариантом. Номер варианта k определяется по формуле: k=N mod 4, где N=11 – номер студента в журнале.
K=5 mod 4=1;
K=1
Метод шифрования «Шифр Эль-Гамаля»Программно реализовать на языке C++ алгоритм электронной подписи сообщения и проверки его подлинности c помощью метода в соответствии с вариантом. Номер варианта k определяется по формуле: k=N mod 3, где N – номер студента в журнале.
K=5 mod 3=2
K=2
Система Диффи-Хелмана
Программно реализовать на языке C++ алгоритм шифрования и дешифрования сообщения c помощью потокового шифра RC4.
Краткое описание алгоритма шифра Эль-Гамаля.
Схема Эль-Гамаля (Elgamal) — криптосистема с открытым ключом, основанная на трудности вычисления дискретных логарифмов в конечном поле. Криптосистема включает в себя алгоритм шифрования и алгоритм цифровой подписи.
Схема была предложена Тахером Эль-Гамалем в 1984 году. Эль-Гамаль разработал один из вариантов алгоритма Диффи-Хеллмана. Он усовершенствовал систему Диффи-Хеллмана и получил два алгоритма, которые использовались для шифрования и для обеспечения аутентификации. В отличие от RSA алгоритм Эль-Гамаля не был запатентован и, поэтому, стал более дешевой альтернативой, так как не требовалась оплата взносов за лицензию. Считается, что алгоритм попадает под действие патента Диффи-Хеллмана.
Генерация ключей
1. Генерируется случайное простое число длины битов.
2. Выбирается случайное целое число такое, что .
3. Выбирается случайное целое число такое, что .
4. Вычисляется .
5. Открытым ключом является тройка , закрытым ключом — число .
Работа в режиме шифрования
Шифрсистема Эль-Гамаля является фактически одним из способов выработки открытых ключей Диффи — Хеллмана. Шифрование по схеме Эль-Гамаля не следует путать с алгоритмом цифровой подписи по схеме Эль-Гамаля.
Шифрование
Сообщение шифруется следующим образом:
1. Выбирается сессионный ключ — случайное целое число такое, что
2. Вычисляются числа и .
3. Пара чисел является шифротекстом.
Нетрудно видеть, что длина шифротекста в схеме Эль-Гамаля длиннее исходного сообщения вдвое.
Расшифрование
Зная закрытый ключ , исходное сообщение можно вычислить из шифротекста по формуле:
При этом нетрудно проверить, что
и поэтому
.
Для практических вычислений больше подходит следующая формула:
Пример
§ Шифрование
1. Допустим что нужно зашифровать сообщение .
2. Произведем генерацию ключей :
1. пусть . Выберем - случайное целое число такое,что .
2. Вычислим .
3. Итак , открытым является тройка ,а закрытым ключом является число .
3. Выбираем случайное целое число такое, что 1 < k < (p − 1). Пусть .
4. Вычисляем число .
5. Вычисляем число .
6. Полученная пара является шифротекстом.
§ Расшифрование
1. Необходимо получить сообщение по известному шифротексту и закрытому ключу .
2. Вычисляем M по формуле :
3. Получили исходное сообщение .
Так как в схему Эль-Гамаля вводится случайная величина ,то шифр Эль-Гамаля можно назвать шифром многозначной замены. Из-за случайности выбора числа такую схему еще называют схемой вероятностного шифрования. Вероятностный характер шифрования является преимуществом для схемы Эль-Гамаля, так как у схем вероятностного шифрования наблюдается большая стойкость по сравнению со схемами с определенным процессом шифрования. Недостатком схемы шифрования Эль-Гамаля является удвоение длины зашифрованного текста по сравнению с начальным текстом. Для схемы вероятностного шифрования само сообщение и ключ не определяют шифротекст однозначно. В схеме Эль-Гамаля необходимо использовать различные значения случайной величины для шифровки различных сообщений и . Если использовать одинаковые , то для соответствующих шифротекстов и выполняется соотношение . Из этого выражения можно легко вычислить , если известно .
Реализация шифрования дешифрования методом Эль-Гаммеля
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|