Скачиваний:
33
Добавлен:
29.06.2022
Размер:
1.28 Mб
Скачать

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

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

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

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

(СПбГУТ)

_____________________________________________________________________________

Кафедра информационной безопасности телекоммуникационных систем

Дисциплина «Основы криптографии с открытыми ключами»

Лабораторная работа 5

«Исследование побочных атак на криптосистему РША»

Выполнила: студ. гр. .

.

Проверил: проф. Яковлев В.А..

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

2021

Цель работы

Изучить влияние параметров и способов проектирования криптосистемы РША на возможность ее криптоанализа, используя побочные атак, а также закрепить знания, полученные на лекциях курса «Основы криптографии с открытым ключом», «Криптографические протоколы».

Задание

  1. Для выполнения каждой из атак сгенерировать набор ключей РША (или несколько наборов).

  2. Выполнить необходимые для осуществления криптоанализа шаги.

  3. Проанализировать результаты выполнения атак.

Ход работы

  1. Запустим программу «RSA attacks lab.exe». После запуска сразу откроется окно для демонстрации атаки на малую шифрующую экспоненту.

  1. Программа «RSA attacks lab.exe».

  1. Тип атаки «Малая шифрующая экспонента.

  1. Сгенерируем 3 набора ключей РША с одинаковой малой открытой экспонентой e=3.

  1. Генерация набора ключей. Открытая экспонента e.

  1. Генерация набора ключей. Секретная экспонента d.

  1. Генерация набора ключей. Модуль n.

  1. Генерация набора ключей. Простое число p.

  1. Генерация набора ключей. Простое число q.

Набор ключей

Модуль n

Экспонента e

Экспонента d

Простое p

Простое q

1

45649

3

30147

191

239

2

8083

3

5259

137

59

3

16351

3

10715

83

197

  1. Сгенерируем случайное сообщение и зашифруем его.

  1. Случайное сообщение и зашифрованное сообщение ключом 1.

Шифруемое сообщение: 1040

Криптограмма 1: 26991

Криптограмма 2: 1388

Криптограмма 3: 13306

  1. Вычислим решение системы сравнений, используя китайскую теорему об остатках.

  1. Вычисление решения системы уравнений.

Общее решение системы сравнений: 1124864000

  1. Найдем кубический корень методом Ньютона из решения системы, полученного на предыдущем шаге. Убедимся в том, что это и есть исходное сообщение, сгенерированное в п.3.

  1. Вычисление кубического корня методом Ньютона.

Кубический корень: 1040

Сообщение: 1040

  1. Переключимся на окно демонстрации атаки при малом количестве возможных сообщений.

  1. Тип атаки «Малое количество возможных сообщений».

  1. Сгенерируем ключи криптосистемы и список возможных сообщений заданной длины.

  1. Генерирование ключей РША и список возможных сообщений.

  1. Зашифруем случайным образом одно из возможных сообщений.

  1. Шифрование случайного сообщения.

  1. Путем последовательного шифрования возможных сообщений по списку и сравнения с криптограммой из п.8 найдем исходное сообщение.

  1. Поиск сообщения, соответствующего данной криптограмме.

Скорость выполнения зависит от количества сообщений. Программа проверила 32 сообщения из 100, прежде чем криптограммы совпали. Если бы было зашифровано последнее сообщение из списка, то программа перебрала бы все сообщения, прежде чем найти нужное.

  1. Переключимся на окно демонстрации атаки Винера (атака на малую секретную экспоненту).

  1. Тип атаки «Малая экспонента дешифрования». Атака Винера.

  1. Сгенерируем ключи криптосистемы.

  1. Генерирование ключей РША.

  1. Выполним атаку Винера. Убедимся в том, что найденные в результате выполнения атаки секретная экспонента и делители модуля криптосистемы действительно соответствуют параметрам заданной криптосистемы.

  1. Выполнение атаки Винера.

Шифрующая экспонента e: 152248211

Модуль криптосистемы n: 888174281

Найденная секретная экспонента: 35

Найденные делители модуля: 31699 и 28019

i = 3, k=6, g=1

  1. Задавая различные длины модуля и секретной экспоненты, убедимся в том, что атака Винера дает результат при битовой длине секретной экспоненты приблизительноменьше четверти битовый длины модуля криптосистемы.

  1. Выполнение атаки Винера, при заданных длинах секретной экспоненты и модуля криптосистемы.

  1. Переключимся на окно демонстрации атаки, связанной с мультипликативным свойством шифра РША.

  1. Тип атаки, использующей мультипликативные свойства шифра РША

  1. Сгенерируем ключи криптосистемы.

  1. Генерирование ключей РША.

Параметры криптосистемы:

  • Открытая экспонента e: 391

  • Секретная экспонента d: 223

  • Модуль криптосистемы n: 551

  1. Сгенерируем случайное сообщение M и зашифруем его.

  1. Выбранное сообщение M.

  1. Зашифрованное сообщение C .

Выбранное сообщение M: 181

Зашифрованное сообщение C: 431

  1. Сгенерируем случайное число x взаимно простое с модулем криптосистемы и вычислим специальную криптограмму C'.

  1. Генерирование x. Криптограмма C’, при x=273.

Случайное число x взаимно простое с модулем n: 273

Комбинированная криптограмма

  1. Дешифруем C', получив тем самым некое сообщение M'.

  1. Расшифрованное сообщение.

Расшифрованное M': 374

  1. Извлечем исходное сообщение M из M'. Убедимся в том, что полученное в результате выполнения атаки сообщение совпадает с исходным сообщением.

  1. Вычисление сообщения.

Исходное сообщение

  1. Переключимся на окно демонстрации циклической атаки.

  1. Тип атаки «циклическая атака».

  1. Сгенерируем ключи криптосистемы.

  1. Генерация ключей РША.

Открытая экспонента e: 23

Модуль криптосистемы n: 62

  1. Сгенерируем случайное сообщение и зашифруем его.

  1. Случайное сообщение и соответствующая ему криптограмма.

Шифруемое сообщение M: 19

Криптограмма C: 9

  1. Выполним циклическую атаку.

  1. Выполнение циклической атаки.

, где k = 4

Найденное сообщение соответствует исходному сообщению.

  1. Увеличим длину модуля криптосистемы, убедимся в том, что алгоритм выполнения данной атаки обладает не полиномиальной сложностью.

  1. Циклическая атака с более длинным модулем КС.

  1. Переключимся на окно демонстрации атаки на общие модули.

  1. Тип атаки «Атака на общие модули».

  1. Сгенерируем 2 набора ключей с общим модулем.

  1. Два набора ключей с общим модулем.

Открытая экспонента e1: 4577

Открытая экспонента e2: 1981

Общий модуль n: 5053

  1. Выполним факторизацию общего модуля, зная обе секретные экспоненты.

  1. Факторизация, из общего n находим p и q.

  1. Вычислим секретную экспоненту второго набора ключей, зная делители общего модуля криптосистемы. Просмотрим исходные параметры обоих наборов ключей и результаты выполнения атаки, убедимся в том, что атака на общие модули привела к взлому криптосистемы.

  1. Вычисление d2.

Секретная экспонента d1: 893

Общий модуль: 5053

Случайное число g, используемое для факторизации: 2730

Делители модуля: 31 и 163

Секретная экспонента d2: 1261

Вычисленная секретная экспонента d2 соответствует секретной экспоненте второго набора ключей.

Вывод:

В ходе лабораторной работы изучили влияние параметров и способов проектирования криптосистемы РША на возможность ее криптоанализа, используя побочные атак. Закрепили знания, полученные на лекциях курса «Основы криптографии с открытым ключом», «Криптографические протоколы».

Соседние файлы в папке 05_ЛР