
Лабораторная работа №3
.docxМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА» (СПбГУТ)
Факультет Инфокоммуникационных сетей и систем Кафедра Защищенных систем связи
Дисциплина Криптографические протоколы
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №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 г