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

Лабораторная работа №3

.docx
Скачиваний:
31
Добавлен:
10.08.2024
Размер:
43.56 Кб
Скачать

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

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

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

Факультет Инфокоммуникационных сетей и систем Кафедра Защищенных систем связи

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

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

Криптосистема Рабина

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

Информационная безопасность (10.03.01)

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

Студент группы ИКБ-06:

Ерохин А.Г.

(Ф.И.О.) (подпись)

Д.т.н., проф. каф. ЗСС:

Яковлев В.А.

(Ф.И.О.) (подпись)

Цель работы:

Закрепить знания, полученные на лекциях по теме “Криптосистема Рабина”.

Ход работы:

Задание 1. Зашифровать сообщение.

Задание выполняется согласно варианту 11. Исходные данные представлены в таблице. Зашифровать сообщение 111211311.

p

q

11

19

31

Найдем открытый ключ n:

n = p*q = 19*31 = 589

Количество двоичных разрядов |n|:

512 < 589 < 1024; 29 < 589 < 210

|n| = 10

Разобьем сообщение на блоки длиной |n|-1= 9 двоичных разрядов:

11121131110 -> 110101000 001111001 1001011112

Зашифруем каждый блок, представив его десятичным числом:

m1 = 1101010002 = 424:

C1 = m12 mod 589 = 4242 mod 589 = 131

m2 = 0011110012 = 121:

C2 = m22 mod 589 = 1212 mod 589 = 505

m3 = 1001011112 = 303:

C3 = m32 mod 589 = 3032 mod 589 = 514

Полученная криптограмма: {131, 505, 514}.

Расшифруем второй блок криптограммы C2 = 505:

mp = С(p+1)/4 mod p = 505(19+1)/4 mod 19 = 5055 mod 19 = 7

mq = C(q+1)/4 mod q = 505(31+1)/4 mod 31 = 5058 mod 31 = 28

Найдем коэффициенты Безу yp, yq:

31 = 19*1 + 12

19 = 12*1 + 7

12 = 7*1 + 5

7 = 5*1 + 2

5 = 2*2 +1

2 = 1*2 + 0

1 = 5 + (-2)*2

2 = 7 + (-1)*5

5 = 12 + (-1)*7

7 = 19 + (-1)*12

12 = 31 + (-1)*19

1 = 5 + (-2)*2

1 = 5 + (-2)*(7 + (-1)*5) = 3*5 + (-2)*7

1 = 3*(12 + (-1)*7) + (-2)*7 = 3*12 + (-5)*7

1 = 3*12 + (-5)*(19 + (-1)*12) = 8*12 + (-5)*19

1 = 8*(31 + (-1)*19) + (-5)*19 = 8*31 + (-13)*19

yp = -13; yq = 8

Далее, используя китайскую теорему об остатках, вычислим четыре числа, среди которых одно будет являться истинным исходным сообщением:

x1 = (yp*p*mq + yq*q*mp) mod n = (-13*19*28 + 8*31*7) mod 589 = 121

x2 = n – x1 = 589 – 121 = 468

x3 = (yp*p*mq - yq*q*mp) mod n = (-13*19*28 - 8*31*7) mod 589 = 183

x4 = n – x3 = 589 – 183 = 406

Получили исходное сообщение второго блока криптограммы m2 = 121

Задание 2. Расшифровать криптограмму

Задание выполняется согласно варианту 11. Исходные данные представлены в таблице.

М

С

p

q

n

11

34

29

23

7

161

Проверим, есть ли у задачи решение:

НОД(23,7) = 1 → числа p и q простые.

Процесс дешифрования:

mp = С(p+1)/4 mod p = 29(23+1)/4 mod 23 = 296 mod 23 = 12

mq = C(q+1)/4 mod q = 29(7+1)/4 mod 7 = 292 mod 7 = 1

Найдем коэффициенты Безу yp, yq:

23 = 7*3 + 2

7 = 2*3 + 1

2 = 1*2 + 0

1 = 7 + (-3)*2

2 = 23 + (-3)*7

1 = 7 + (-3)*2

1 = 7 + (-3)*(23 + (-3)*7) = 10*7 + (-3)*23

yp = -3; yq = 10

Далее, используя китайскую теорему об остатках, вычислим четыре числа, среди которых одно будет являться истинным исходным сообщением:

x1 = (yp*p*mq + yq*q*mp) mod n = (-3*23*1 + 10*7*12) mod 161 = 127

x2 = n – x1 = 161 – 127 = 34

x3 = (yp*p*mq - yq*q*mp) mod n = (-3*23*1 - 10*7*12) mod 161 = 57

x4 = n – x3 = 161 – 57 = 104

Среди 4х корней получили исходное сообщение M = 34.

Вывод:

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

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