385.02K
Категория: ИнформатикаИнформатика

Протокол Диффи - Хэлмана

1.

Диффи Хэллмана
{

2.

Протокол Ди́ффи — Хе́ллмана (англ. Diffie–Hellman key exchange
protocol, DH) — криптографический протокол, позволяющий двум
и более сторонам получить общий секретный ключ, используя
незащищенный от прослушивания канал связи. Полученный ключ
используется для шифрования дальнейшего обмена с помощью
алгоритмов симметричного шифрования.

3.

Описание алгоритма
Предположим, существует два абонента: Алиса и Боб. В самом
начале они обмениваются данными: делителем – g и модулем – p,
где числа g – натуральное число, p – простое число, и g < p, эти
числа передаются по открытому каналу связи и не являются
секретными. Для того, чтобы создать неизвестный более никому
секретный ключ, оба абонента генерируют большие случайные
числа: Алиса — число a, Боб – число b. После генерации числа – a
Алиса вычисляет остаток от деления по формуле: A = g ^ a mod,
после вычисления Алиса отсылает свое число – A Бобу. Боб после
генерации числа – b так же вычисляет остаток от деления по
формуле: B = g ^ a mod и отсылает результат Алисе.

4.

Алиса принимает число B и возводит его в свою степень(случайно
сгенерированное число), вычисляет по модулю и получает
секретный общий ключ. Боб так же принимает от Алисы число A
и возводит его в свою степень, и так же получает секретный
общий ключ.

5.

Пример
Ева — криптоаналитик. Она читает пересылку Боба и Алисы, но не
изменяет содержимого их сообщений.
Алиса:
Боб:
g = 3, p = 17, a = 3
g = 3, p = 17, a = 5
A = 3 ^ 3 mod 17 = 10
B = 3 ^ 5 mod 17 = 5
A = 5 ^ 3 mod 17 = 6
B = 10 ^ 5 mod 17 = 6
В открытом канале связи Ева узнает числа g, p, A, B, но не узнает
секретных чисел(степеней) Алисы и Боба и секретного общего
ключа.

6.

Задание:
g = 4, p = 7, a = 4, b = 5;
g = 17, p = 23, a = 11, b = 29;
g = 5, p = 23, a = 6, b = 15;
g = 11, p = 19, a = 4, b = 7;
English     Русский Правила