Автор: Пользователь скрыл имя, 28 Октября 2013 в 21:54, лабораторная работа
Для обмена ключами весьма эффективным оказалось использование т.н. протокола Диффи-Хеллмана, позволяющий двум пользователям в произвольный момент времени безопасно построить псевдослучайный ключ, который может быть использован для симметричного шифрования.
У.Диффи и М.Хеллман предложили для создания криптографических систем с открытым ключом использовать однонаправленную показательную функцию в мультипликативной группе конечного поля (функцию дискретного возведения в степень).
Государственный университет телекоммуникаций
Учебно-научный институт защиты информации
Кафедра безопасности информационных технологий
Прикладная криптология
О Т Ч Ё Т
по лабораторной работе № 10
ПРОТОКОЛ СОГЛАСОВАНИЯ КЛЮЧЕЙ ДИФФИ-ХЕЛЛМАНА
И КРИПТОСИСТЕМА ЭЛЬ-ГАМАЛЯ
Вариант № 0
Фамилия И.О.________________________
Дата сдачи/защиты__________________
Проверил______________________
Оценка________________________
20__
Выполнение работы
1. Протокол согласования ключей Диффи-Хеллмана.
Для обмена ключами весьма эффективным оказалось использование т.н. протокола Диффи-Хеллмана, позволяющий двум пользователям в произвольный момент времени безопасно построить псевдослучайный ключ, который может быть использован для симметричного шифрования.
У.Диффи и М.Хеллман предложили для создания криптографических систем с открытым ключом использовать однонаправленную показательную функцию в мультипликативной группе конечного поля (функцию дискретного возведения в степень).
Необратимость преобразования в этом случае обеспечивается тем, что достаточно легко вычислить показательную функцию вида , где – большое простое число (например, размера 400-600 битов), то найти из данного соотношения, при корректном выборе , вычислительно невозможно.
Протокол Диффи-Хеллмана осуществляет так называемый экспоненциальный ключевой обмен, с использованием функции , при заранее выбранных несекретных параметрах . Эти параметры зависимы, в том смысле, что выбирается так, чтобы последовательность степеней совпадала с точностью до перестановки с последовательностью .
Наименьшее натуральное число называется порядком числа по модулю , если имеет место сравнение ; и НОД . Число называется примитивным элементом или первообразным корнем по модулю , если . В этом случае все числа класса вычетов – также первообразные корни по этому модулю.
Если модуль – простое число, то и по теореме Ферма . Следовательно, первообразные корни следует искать среди решений сравнения . Для практического нахождения первообразных корней по простому модулю удобно пользоваться следующим критерием поиска первообразных корней: если – каноническое разложение числа и , , …, , то целое число будет первообразным корнем по модулю сравнения .
Другой, менее громоздкий способ нахождения первообразных корней по простому модулю состоит в следующем: если известен один из первообразных корней (лучше наименьший) по простому модулю , то остальные корни находятся как наименьшие положительные вычеты степеней по модулю , где і .
Первообразные корни по простому модулю всегда существуют и их число равно (теорема Гаусса).
Первообразные корни простому модулю всегда существуют и их число равно (теорема Гаусса).
Протокол обмена ключами Диффи–Хеллмана:
Открытые параметры, известные участникам ключевого обмена и – и – заранее выбранные числа, – некоторый первообразный элемент поля Галуа , – простое.
Абонент , получив значение , вычисляет .
Псевдослучайное число можно использовать как ключ для симметричной криптосистемы.
При перехвате знание , , , не позволяет найти и (используется однонаправленная функция), кроме того, в настоящее время, для нахождения по и , подходов, не эквивалентных обращению однонаправленной функции, не найдено.
2. Криптосистема Эль-Гамаля
Криптосистема Эль-Гамаля является одним из вариантов протокол обмена ключами Диффи–Хеллмана.
Организация шифрованного обмена сообщениями с помощью криптосистемы Эль-Гамаля между абонентами , когда абонент хочет получать зашифрованные сообщения от абонентов :
(
).
2. Сгенерируем общий ключ, пользуясь протоколом обмена ключей Диффи-Хеллмана.
Выберем простое число . За первообразный корень по модулю 43 выберем , поскольку: и , .
Открытые параметры и .
Абонент генерирует псевдослучайное число, например, .
Абонент вычисляет .
Абонент вычисляет общий ключ
.
Значение общего секретного ключа .
3. Сгенерируем ключи и зашифруем открытое сообщение , пользуясь криптосистемой Эль-Гамаля.
Таким образом, открытый ключ и закрытый ключ сформированы.
,
.
Криптограмма имеет вид .
Найдём число, обратное к 16 по модулю 43. С помощью расширенного алгоритма Евклида найдем линейное представление наибольшего общего делителя , то есть найдем целые числа и такие, что .
Протокол работы расширенного алгоритма Евклида оформим в виде таблицы:
Остатки |
43 |
16 |
11 |
5 |
0 | |
Частные |
2 |
1 |
2 |
5 | ||
1 |
0 |
1 |
–1 |
3 |
–16 | |
0 |
1 |
–2 |
3 |
–8 |
43 |
Имеем , откуда . Следовательно, , поэтому .
Таким образом, .