Скачиваний:
41
Добавлен:
29.06.2022
Размер:
961.81 Кб
Скачать

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

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

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

_____________________________________________________________________________

Кафедра информационной безопасности телекоммуникационных систем Дисциплина «Основы криптографии»

Практическое задание 13

«Исследование криптосистем с открытым ключом»

Выполнили:

ст. гр. .

.

Проверил:

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

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

2021

Цель работы

Приобретение навыков анализа алгоритмов криптосистем с открытыми ключами.

Выполнение работы

Варианта №6

Задание 1. Моделирование криптографической системы

 

Эль-Гамаля

 

 

 

 

 

 

1. Дано: p=11, a,x,k – в таблице.

 

 

2. Сформировать открытый ключ.

 

 

3. Зашифровать сообщение m=(№*11+4)mod7, расшифровать

 

 

криптограмму, где № Ваш номер по журналу.

 

 

4. Подписать сообщение, соответствующее Вашему №, используя хэш-

 

 

функцию вида m=(№*13+4)mod7. Проверить подпись.

1)

Вариант №6.

 

 

 

 

 

 

a

x

 

k

 

 

 

 

 

 

 

 

 

 

6

 

6

6

 

9

 

 

 

 

 

 

 

 

Если получится, что r или s равно нулю, необходимо выбрать k на единицу

 

меньше или больше заданного. Если m=0, то положить m=10.

2) Ключ x = 6 - закрытый

 

 

 

y = a mod p = 66mod 11 = (62 ∙ 62 ∙ 62) mod 11 = (3 ∙ 3 ∙ 3)mod 11 = 5

 

y=5 - открытый ключ

 

 

3)

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

 

m = (6 ∙ 11 + 4)mod 7 = 0

 

 

 

т.к. m=0, то выберем m=10 - открытый ключ

 

−1 = yp−2mod p = 59mod 11 = (52 ∙ 52 ∙ 52 ∙ 52 ∙ 5)mod 11 =

 

= (3 ∙ 3 ∙ 3 ∙ 3 ∙ 5)mod 11 = 9

 

 

Шифрование сообщения

 

 

 

 

= mod = 69 mod 11 = (62 ∙ 62 ∙ 62 ∙ 62 ∙ 6)mod 11 =

 

1

 

 

 

 

 

 

 

= (3 ∙ 3 ∙ 3 ∙ 3 ∙ 6)mod 11 = 2

 

 

 

 

= m ∙ −1∙ mod = 10 ∙ 99 mod 11 = (10 ∙ 92 ∙ 92 ∙ 92 ∙ 92 ∙ 9)mod 11 =

 

2

 

 

 

 

 

 

= (10 ∙ 9 ∙ 4 ∙ 4 ∙ 4 ∙ 4)mod 11 = 6

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

1 mod p = 26mod 11 = (8 ∙ 8 )mod 11 = 92 1 = 6 ∙ 9 mod 11 = 10

10=10, зашифрованное сообщение расшифровано успешно

4)Подпись сообщения

x=6 закрытый ключ

m = (6 ∙ 13 + 4)mod 7 = 6

I-часть подписи

y = axmod p = 5 - открытый ключ (рассчитан ранее в пункте 2)

r = ak = 69 11 = (62 ∙ 62 ∙ 62 ∙ 62 ∙ 6)mod 11 = = (3 ∙ 3 ∙ 3 ∙ 3 ∙ 6)mod 11 = 2

II-часть подписи

найдем k−1: k−1 ∙ k = 1(mod 10) k−1 = 9−1mod 10 = 9

= k−1 ∙ (m − xr)mod(p − 1) = 9 ∙ (6 − 6 ∙ 2)mod 10 = 9 ∙ (−6) 10 = 6

Подпись (r=2, s=6)

Проверка подписи ( ∙ ) = ( ) ( ∙ ) = (52 ∙ 26) 11 = (3 ∙ 8 ∙ 8) 11 = 5

( ) = (66) 11 = (62 ∙ 62 ∙ 62) mod 11 = (3 ∙ 3 ∙ 3)mod 11 = 5

5=5, подпись верна

Задание 2. Моделирование криптографической системы РША

1.Дано: p,q, e,m – в таблице, согласно Вашему номеру.

2.Сформировать закрытый ключ d.

3.Зашифровать сообщение m. Расшифровать криптограмму.

4.Подписать сообщение, проверить подпись.

1)Вариант №6.

p

q

e

m

 

 

 

 

 

6

5

7

7

9

 

 

 

 

 

2)Генерация ключей

N = p ∙ q = 5 ∙ 7 = 35

( ) = ( − 1)( − 1) = 4 ∙ 6 = 24

Числа 7 и 24 взаимно простые.

7 = 7 ∙ 1 24 = 3 ∙ 2 ∙ 2 ∙ 2 ∙ 1

НОД( , ( )) = НОД(7,24) = 1 d = −1( ( )) = 7−1 24

Ищем обратный элемент

24 = 7 ∙ 3 + 3 3 = 24 − 7 ∙ 3 7 = 1 ∙ 6 + 1 = 1 + 2 ∙ 3 1 = 7 − 2 ∙ 3

1 = 7 − 2 ∙ 3 = 7 − (24 − 7 ∙ 3) ∙ 2 = 7 ∙ 7 − 24 ∙ 2 d = 7

Проверка (7 ∙ 7) 24 = 49 24 = 1, верно рассчитали

3)Шифрование сообщения m m = 9

E = me = 97 35 = 92 ∙ 92 ∙ 92 ∙ 9 35 = 11 ∙ 11 ∙ 11 ∙ 9 35 = 9

Расшифрование криптограммы

= E = 97 35 = 92 ∙ 92 ∙ 92 ∙ 9 35 = 11 ∙ 11 ∙ 11 ∙ 9 35 = 9

4)Подпись сообщения d – закрытый ключ,

(e,N) – открытый ключ.

Подписываем сообщение m ключом d:

s = md = 97 35 = 92 ∙ 92 ∙ 92 ∙ 9 35 = 11 ∙ 11 ∙ 11 ∙ 9 35 = 9

Проверка

m = se = 97 35 = 92 ∙ 92 ∙ 92 ∙ 9 35 = 11 ∙ 11 ∙ 11 ∙ 9 35 = 9

9=9, сообщение расшифровано успешно

Вывод:

Приобрели и закрепили навыки анализа алгоритмов криптосистем с открытыми

ключами.

Соседние файлы в папке 13_ПЗ