крипта_6
.docxМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,
СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ
УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»
(СПбГУТ)
Факультет Кибербезопасности
Кафедра Защищенных систем связи
Дисциплина Криптографические протоколы
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №6
Исследование побочных атак на криптосистему РША
(тема отчета)
Направление/специальность подготовки
(код и наименование направления/специальности)
Выполнил студент 3 курса:
___________
(Ф.И.О., № группы) (подпись)
Преподаватель:
д.т.н., проф. Яковлев В.А.
(Ф.И.О., № группы) (подпись)
Цель работы
Изучить влияние параметров и способов проектирования криптосистемы РША на возможность ее криптоанализа, используя побочные атаки, а также закрепить знания, полученные на лекциях курса «Основы криптографии с открытым ключом» , «Криптографические протоколы».
Порядок выполнения
1. Запустили программу «RSA attacks lab.exe».
2. Сгенерировали 3 набора ключей РША с одинаковой малой открытой экспонентой e=3. Длинна ключа РША = 16
Набор ключей |
Модуль n |
Экспонента e |
Экспонента d |
Простое p |
Простое q |
1 |
901 |
3 |
555 |
17 |
53 |
2 |
519 |
3 |
115 |
173 |
3 |
3 |
6931 |
3 |
4443 |
239 |
29 |
3.Сгенерировали случайное сообщение и зашифровали его.
Шифруемое сообщение: 480
Криптограмма 1: 557
Криптограмма 2: 366
Криптограмма 3: 964
Общее решение системы сравнений: 110592000
Кубический корень из общего решения: 480
2. Атака Винера (пояснение)
Задать параметры: Длина модуля – 30-40, длина секретной экспонеты-8-10.
А) Записать значение секретной экспоненты и простых чисел p и q, которые выдает программа.
Б) Провести проверку найденных значений, используя подход Винера.
Секретная
экспонентиа может ыть вычислена как
знаменатель подходящей дроби в неравестве
Выполним генерацию с помощью программы
Мы получили : n= 9910795729, e= 7717982353
Используя алгоритм Евклида для вычисления НОД, находим цепную дробь рационального числа
=
Разложение 7717982353/9910795729:
Шаг 1: 7717982353 = 0 × 9910795729 + 7717982353
Шаг 2: 9910795729 = 1 × 7717982353 + 2192813376
Шаг 3: 7717982353 = 3 × 2192813376 + 1139542225
Шаг 4: 2192813376 = 1 × 1139542225 + 1053271151
Шаг 5: 1139542225 = 1 × 1053271151 + 86271074
Шаг 6: 1053271151 = 12 × 86271074 + 18018263
Шаг 7: 86271074 = 4 × 18018263 + 14198022
Шаг 8: 18018263 = 1 × 14198022 + 3820241
Шаг 9: 14198022 = 3 × 3820241 + 2737299
Шаг 10: 3820241 = 1 × 2737299 + 1082942
Шаг 11: 2737299 = 2 × 1082942 + 571415
Шаг 12: 1082942 = 1 × 571415 + 511527
Шаг 13: 571415 = 1 × 511527 + 59888
Шаг 14: 511527 = 8 × 59888 + 32423
Шаг 15: 59888 = 1 × 32423 + 27465
Шаг 16: 32423 = 1 × 27465 + 4958
Шаг 17: 27465 = 5 × 4958 + 2675
Шаг 18: 4958 = 1 × 2675 + 2283
Шаг 19: 2675 = 1 × 2283 + 392
Шаг 20: 2283 = 5 × 392 + 323
Шаг 21: 392 = 1 × 323 + 69
Шаг 22: 323 = 4 × 69 + 47
Шаг 23: 69 = 1 × 47 + 22
Шаг 24: 47 = 2 × 22 + 3
Шаг 25: 22 = 7 × 3 + 1
Шаг 26: 3 = 3 × 1 + 0
Коэффициенты цепной дроби: [0, 1, 3, 1, 1, 12, 4, 1, 3, 1, 2, 1, 1, 8, 1, 1, 5, 1, 1, 5, 1, 4, 1, 2, 7, 3]
Вычисляем подходящие дроби:
A₀ = 0/1
A₁ = 1/1
A₂ = 3/4
A₃ = 4/5
A₄ = 7/9
A₅ = 88/113
A₆ = 359/461
A₇ = 447/574
Далее перебором
для каждой
подходящей дроби, вычисляем функцию
Эйлера согласно выражению:
и решаем квадратное уравнение
.
Проверяется, является ли р – простым.
Возьмем подходящую дробь А3 =
,
тогда k=4; d=5
=>
В итоге получим: Р1 = 263317751.36; Р2=37.638=> данная подходящая дробь
А3 = – не является решением, тогда
Возьмем подходящую дробь А4 =
,
тогда k=7; d=9
=>
В итоге получим: Р1 = -804.21; Р2= -12323633.789 => данная подходящая дробь
А4 = – не является решением, тогда
Возьмем подходящую дробь А5 =
,
тогда k=88; d=113
=>
В итоге получим: Р1 = 126257; Р2= 78497
Проверка: p*q = 126257 * 78497 = 9910795729
Следовательно, секретная экспонента d = 113, i = 5, k = 88
Проверим подсчеты с помощью программы:
Результаты совпадают => ручное решение найдено правильно
Зададим параметр секретной экспоненты больше четверти длины модуля РША и выполним атаку Винера:
Как видно при выполнить атаку не удалось
3. Атака с использованием мультипликативного свойства шифра РША
Параметры криптосистемы:
Выбранное сообщение M: 11825
Зашифрованное сообщение C: 16
Случайное число x взаимно простое с модулем n: 2711
Комбинированная
криптограмма:
= 16*27113751 mod n
= = 10367
Расшифрованное M': 7949
Исходное сообщение: M = M’ * x-1 mod n = 11825
4. Циклическая атака
Открытая экспонента e: 9
Модуль криптосистемы n: 213
Шифруемое сообщение M: 134
Криптограмма C: 104
,
где k = 6
Исходное сообщение: M = Ce^(k-1) mod n = 134
5. Атака на общие модули
Открытая экспонента e1: 591
Открытая экспонента e2: 2199
Секретная экспонента d1: 711
Общий модуль n: 2323
Случайное число g, используемое для факторизации: 594
e1 *d1 – 1 = k * 2t = 52525
Делители модуля: 23 и 101
Секретная экспонента d2: 2199
Вывод
В ходе лабораторной работы изучили влияние параметров и способов проектирования криптосистемы РША на возможность ее криптоанализа, используя побочные атак. Закрепили знания, полученные на лекциях курса «Основы криптографии с открытым ключом», «Криптографические протоколы».
Санкт – Петербург
2026
