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

крипта_15

.docx
Скачиваний:
0
Добавлен:
17.06.2026
Размер:
48.43 Кб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ

УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

Факультет Кибербезопасности

Кафедра Защищенных систем связи

Дисциплина Криптографические протоколы

ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №15

Построение протокола доказательства с нулевым разглашением

(тема отчета)

Направление/специальность подготовки

(код и наименование направления/специальности)

Выполнил студент 3 курса:

___________

(Ф.И.О., № группы) (подпись)

Преподаватель:

д.т.н., проф. Яковлев В.А.

(Ф.И.О., № группы) (подпись)

Цель лабораторной работы

Получить навыки анализа и построения протоколов нулевого разглашения секрета.

Задача лабораторной работы

Построить протокол доказательства с нулевым разглашением секрета в виде решения задачи доказательства пользователем А того, что он имеет секретный ключ, соответствующий открытому ключу у пользователя В. На рисунке 1 изображено изначальное распределение ключей между A и B.

Рисунок 1. Распределение ключей.

Задание.

Провести моделирование работы протокола при следующих параметрах:

  1. Модуль p = 31

  2. Генератор g = 3

  3. Секретный ключ x = (5 + 10) mod 30 = 15

Остальные параметры выбрать самостоятельно, используя числа в диапазоне (10-25). Пусть маскирующее число v = 32 – 15 = 17, запрос e = 13.

Порядок работы протокола:

  1. Вычисляется открытый ключ y

  2. A выбирает v, вычисляет a и отправляет его B

  3. B выбирает e и отправляет его A

  4. A вычисляет z и отправляет его B

  5. B проверяет равенство gz mod p = (a * ye) mod p

Шаг 1.

y = gx mod p = 315 mod 31 = 30

Шаг 2.

a = gv mod p = 317 mod 31 = 22

31 mod 31 = 3

32 mod 31 = 9

34 mod 31 = (9 * 9) mod 31 = 81 mod 31 = 19

38 mod 31 = (19 * 19) mod 31 = 361 mod 31 = 20

316 mod 31 = (20 * 20) mod 31 = 400 mod 31 = 28

317 mod 31 = 316 * 31 mod 31 = 28 * 3 mod 31 = 22

Шаг 3.

e = 13

Шаг 4.

z = (v + e * x) mod (p – 1) = (17 + 13 * 15) mod 30 = 2

Шаг 5.

gz mod p = (a * ye) mod p

Левая часть:

gz mod p = 32 mod 31 = 9

Правая часть:

(a * ye) mod p = (22 * 3013) mod 31 = (22 * 30) mod 31 = 660 mod 31 = 9

3013 = 313 * 1013 mod 31 = 24 * 9 mod 31 = 216 mod 31 = 30

313 mod 31 = (34)3 * 3 mod 31 = 193 * 3 mod 31 = 8 * 3 mod 31 = 24

1013 mod 31 = ((102)2)3 * 10 mod 31 = (72)3 * 10 mod 31 = 183 * 10 mod 31 = 4 * 10 mod 31 = 9

Проверка:

9 = 9 → проверка пройдена успешно

По итогу схема работы протокола со всеми значениями выглядит так, как показано на рисунке 2. По рисунку видно, что секретный ключ x ни разу не передавался между A и B, что обеспечивает его защиту от раскрытия.

Рисунок 2. Схема работы протокола.

Вывод

В ходе выполнения лабораторной работы были получены навыки анализа и построения протоколов нулевого разглашения секрета.

Был построен протокол доказательства с нулевым разглашением секрета в виде решения задачи доказательства пользователем А того, что он имеет секретный ключ, соответствующий открытому ключу у пользователя В.

Санкт-Петербург

2026

Соседние файлы в предмете Криптографические протоколы