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

№4 ИССЛЕДОВАНИЕ КРИПТОГРАФИЧЕСКОЙ СИСТЕМЫ RSA

.doc
Скачиваний:
0
Добавлен:
31.05.2023
Размер:
160.77 Кб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ

САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ

ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

«ЛЭТИ» ИМ. В.И. УЛЬЯНОВА (ЛЕНИНА)

Кафедра ИС

отчет

по лабораторной работе №4

по дисциплине «Конструирование программ»

Тема: Исследование криптографической системы RSA.

Студент гр. 0375

Яблоков В.А.

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

Копыльцов А. В.

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

2022

Цель работы:

Ознакомиться с классической криптосистемой с открытым ключом RSA и вариантами ее использования.

Ход работы:

1. Общий ключ для двух пользователей.

Пусть простое число p = 14, g = 5 – примитивный корень по модулю 14. Возьмем два ключа: 886273 для первого пользователя и 4517 для второго. В результате выполнения программы на компьютере получаем общий ключ, равный 3:

Для обоих пользователей был получен одинаковый ключ.

2. Передача шифрованных сообщений.

Пусть p = 79, q = 103. Тогда n = 79 * 103 = 8137. φ(n) = 78 * 102 = 7956. Выберем d = 19, так как (19, 7956) = 1. В качестве передаваемого символа выберем Z, ASCII код которого равен 90. Вычисления на компьютере:

Абонент В получил верный код.

3. Сообщение от клиентов банку.

3.1. Выберем простые числа P = 67, Q = 383. P1, p2, p3, q1, q2, q3 пусть будут равны 5, 59, 269, 13, 71, 7 соответственно. Вычислим функции Эйлера, подберем открытые ключи, вычислим секретные ключи:

φ(N) = 25212, d = 263, T = 9107,

φ(n1) = 48, d = 5, t1 = 29,

φ(n2) = 4060, d = 101, t2 = 201,

φ(n3) = 1608, d = 29, t3 = 1109.

Пусть теперь клиент 2 хочет передать банкиру символ H, ASCII код которого равен m = 72. Протокол с этапами шифрования и дешифровки: 1) Клиент шифрует сообщение

m1 = (m^t2) mod n2 = (72^201) mod 4189 = 214,

m2 = (m1^D) mod N = (214^263) mod 25661 = 5726.

2) Банк расшифровывет сообщение

m3 = (m2^T) mod N = (5726^9107) mod 25661 = 214,

m4 = (m3^d2) mod n2 = (214^101) mod 4189 = 72.

m4 = m, банкир получил код символа H, значит передача была выполнена верно.

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

В итоге было получено сообщение «Привет».

3.3. Если пользователь, воспользовавашись чужим открытым ключом, поробует передать сообщения, то на выходе будетполучен неправильный результат. Пусть пользователь 2 использовал ключ клиента 1 и передал 72. Банкир получил 7, что не соответсвует изначальному значению:

Выводы:

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