Некоммерческое акционерное общество
АЛМАТИНСКИЙ УНИВЕРСИТЕТ ЭНЕРГЕТИКИ И СВЯЗИ
Кафедра «Электроники»
ЗАЩИТА ИНФОРМАЦИИ В ИНФОКОММУНИКАЦИОННЫХ СЕТЯХ
Задания и методические указания к выполнению курсовой работы для студентов специальности 5В071900 – Радиотехника, электроника и телекоммуникации
.
Алматы 2012
СОСТАВИТЕЛИ: С.Н.Петрищенко, Е.О.Елеукулов. Защита информации в инфокоммуникационных сетях. Задания и методические указания к выполнению курсовой работы для студентов специальности 5В071900 – Радиотехника, электроника и телекоммуникации. - Алматы: АИЭС, 2012. – 9 с.
В методической разработке приводится курсовая работа, состоящая из трех заданий и методических указаний к их выполнению. Первое задание посвящено ассиметричному шифрованию – расшифрованию электронных сообщений по методу RSA. Второе задание связано с одним из способов хэширования сообщений и вычисления для них цифровой подписи с целью подтверждения подлинности как источника, так и самого электронного документа. В третьем задании используется один из способов симметричного шифрования – расшифрования электронных сообщений по методу Вижинера.
Методическая разработка предназначена для студентов специальности 5В071900 – Радиотехника, электроника и телекоммуникации.
Ил. 4, табл. 3, библиогр. – 8 назв.
Рецензент: канд.тех.наук, доц. Ордабаев Б.Б.
Печатается по плану издания некоммерческого акционерного общества «Алматинский институт энергетики и связи» на 2011/12 г.
© НАО «Алматинский институт энергетики и связи» , 2012 г.
Курсовая работа имеет цель закрепления и применения знаний, полученных при изучении курса «Защита информации в инфокоммуникационных сетях» и состоит из трех заданий.
1 Задание 1. Несимметричное шифрование – расшифрование.
Задача - зашифровать свою фамилию по методу RSA для последующей передачи.
Вариант задания определяется по последней цифре номера студенческого билета и представлен в таблице 1, по которой студент определяет требуемые для реализации алгоритма RSA числа (p, q).
Т а б л и ц а 1
N варианта |
0 |
1 |
2 |
3 |
4 |
P, q |
7,11 |
5,17 |
11,13 |
11,19 |
13,17 |
Продолжение таблицы 1
N арианта |
5 |
6 |
7 |
8 |
9 |
P, q |
17,31 |
5,11 |
7,13 |
11,17 |
5,13 |
2.1 Методические указания к решению задания 2
Одним из наиболее распространенных методов несимметричного шифрования-расшифрования является метод шифрования с открытым ключом, в котором используется алгоритм RSA, получивший название от первых букв фамилий его создателей: Rivest, Shamir и Adleman.
Алгоритм основан на использовании операции возведения в степень модульной арифметики. Его можно представить в виде следующей последовательности шагов [ 3 ].
Шаг 1. Выбираются два больших простых числа p и q. Простыми называются числа, которые делятся только на самих себя и на 1. На практике для обеспечения криптостойкости системы величина этих чисел должна быть очень большой, длиной не менее двухсот десятичных разрядов.
Шаг 2. Вычисляется открытая компонента ключа n
n = p·q . (1)
Шаг 3. Находится функция Эйлера по формуле
f (p,q) = (p-1)(q-1) . (2)
Функция Эйлера показывает количество целых положительных чисел от 1 до n , которые взаимно просты с n. Взаимно простыми являются числа, которые не имеют ни одного общего делителя, кроме 1.
Шаг 4. Выбирается число e, которое должно быть взаимно простым со значением функции Эйлера и меньшим, чем f (p,q).
Шаг 5. Определяется число d, удовлетворяющее соотношению
e·d (mod f(p,q)) = 1. (3)
Числа e и n принимаются в качестве открытого ключа. В качестве секретного ключа используются числа d и n.
Шаг 6. Исходная информация независимо от ее физической природы представляется в числовом двоичном виде. Последовательность бит разделяется на блоки длиной L бит, где L – наименьшее целое число, удовлетворяющее условию L ³ log2 (n+1). Каждый блок рассматривается как целое положительное число X (i), принадлежащее интервалу [ 0, n-1 ].
Шаг 7. Зашифрованная информация получается в виде последовательности чисел Y (i), вычисляемых по формуле
Y (i) = ( Y (i)) e ( mod n ) . (4)
Шаг 8. Для расшифрования информации используется зависимость
X (i) = ( Y (i)) d( mod n) . (5)
Рассмотрим числовой пример применения метода RSA для криптографического закрытия информации, в котором для простоты вычислений использованы минимально возможные числа.
Пусть требуется зашифровать слово БЕГ на русском языке.
Шаг 1. Выбираются два простых числа p = 7, q = 17.
Шаг 2. Вычисляется n = pq = 7·17 = 119.
Шат 3. Определяется функция Эйлера f(p,q) = (p - 1)(q - 1) = 96.
Шаг 4. В качестве взаимно простого числа с 96 выбирается число e = 5.
Шаг 5. Определяется такое число d , которое удовлетворяло бы соотношению d ·5 ( mod 96) = 1. Подбор подходящего числа d производится по выражению e·d = к∙f(p,q)) + 1, то есть 5·d = к ∙96 + 1. Соответствующим значением будет d = 77, так как 77 · 5 = 385 = 4 · 96 + 1.
Шаг 6. Согласно таблице 2 представим шифруемое слово БЕГ в виде следующего кортежа чисел < 2 6 4 >.
Т а б л и ц а 2
Буквы алфавита |
А |
Б |
В |
Г |
Д |
Е |
Ж |
З |
И |
К |
Л |
М |
Н |
О |
П |
Р |
С |
Т |
Номер буквы |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
Длина блока определяется как минимальное число из целых чисел, удовлетворяющих условию L ³ log2 (119+1), так как n = 119. Отсюда L = 7.
Шаг 7. Кортеж зашифровывается по открытому ключу {5, 119}
Y1 = 25 mod (119) = 32 mod (119) = 32 ,
Y2 = 65 mod (119) = 7776 mod (119) = 41 ,
Y3 = 45 mod (119) = 1024 mod (119) = 72 .
Получено зашифрованное сообщение Y (i) = < 32 41 72 >, которое в двоичном коде имеет следующий вид: < 0100000 0101001 1001000 >.
Шаг 8. Расшифровка зашифрованного сообщения по секретному ключу (77, 119}
X1 = 3277 mod (119) = 2 ,
X2 = 7277 mod (119) = 4 .
X3 = 4177 mod (119) = 6 ,
В итоге получаем исходное сообщение БЕГ.
2 Задание 2. Хэширование и цифровая подпись электронных сообщений:
- используя данные задания 1, получить хэш-код m для сообщения M при помощи хэш-функции Х.509, взятой из рекомендаций МККТТ [ 4 ]. Вектор инициализации Н0 выбрать равным нулю;
- вычислить цифровую подпись методом RSA под электронным документом М, используя рассчитанный хеш – код m и секретный ключ d, представленный в задании 1;
- представить схему цифровой подписи RSA.
2.1 Методические указания к заданию 2
Хэш-функция (H) – это функция, отображающая электронные сообщения произвольной длины (М) в значения фиксированной длины (m), называемые хэш-кодами или дайджест сообщениями. Хэш - функции вместе со схемами электронной цифровой подписи предназначены для решения задач обеспечения целостности и достоверности передаваемых и хранимых на носителях информации электронных сообщений. Криптографически стойкая хэш – функция должна быть односторонней и свободной от коллизий. Первое требование означает, что она должна быть функцией, по значению которой трудно найти ее аргумент. Второе требование заключается в том, что при большом количестве коллизий у хэш – функции, то есть таких пар значений x и y, что h (x) = h (y), отсутствуют эффективные алгоритмы поиска коллизий.
В качестве примера хэш-функций, построенных на основе трудноразрешимой вычислительной задачи, можно привести хэш-функцию Х.509. Задача разложения большого числа на простые множители (факторизация) эквивалентна следующей трудноразрешимой математической задаче. Пусть n = pq – произведение двух больших простых чисел. В этом случае легко вычислить квадрат числа по модулю n, то есть x2 (mod n), однако, вычислительно трудно извлечь квадратный корень по этому модулю.
Хэш – функцию Х.509 можно записать следующим образом
Hi = [( Hi – 1 Å Mi ) 2] ( mod n ) , (9)
где i = 1,n;
H0 – вектор инициализации;
Mi = M1 , M2 , … , Mn - длина блока.
Все блоки делят пополам и к каждой половине прибавляют равноценное количество единиц. С такими блоками производят итерационные действия.
Допустим, необходимо получить хеш – код сообщения БЕГ при помощи хэш – функции Х .509 с параметрами р = 7, q = 17 .
Порядок вычисления хэш – кода:
а) получить значение модуля n = pq = 7·17 = 119;
б) представить сообщение в виде номеров букв русского алфавита в десятичном и двоичном видах ( байтах ):
Б Е Г
2 6 4
0000 0010 0000 0110 0000 0100 ;
в) разбить байт пополам, добавить в начало полубайта единицы и получить хэшируемые блоки Mi :
M1 M2 M3 M4 M5 M6
1111 0000 1111 0010 1111 0000 1111 0110 1111 0000 1111 0100 ;
г) выполнить итеративные шаги:
первая итерация
M1 = 11110000
Å
H0 = 0 = 00000000
H0 Å M1 = 11110000 = 24010
[H0 Å M1 )2] ( mod 119 ) = 2402 ( mod 119 ) = 4
H1 = 410 = 000001002 ;
вторая итерация
M2 = 11110010
Å
H1 = 00000100
H1 Å M2 = 11110110 = 24610
[H1 Å M2 )2] ( mod 119 ) = 2462 ( mod 119 ) =64
H2 = 6410 = 010000002 ;
третья итерация
M3 = 11110000
Å
H2 = = 01000000
H2 Å M3 = 10110000 = 17610
[H2 Å M3 )2] ( mod 119 ) = 176 2 ( mod 119 ) = 36
H3 = 3610 = 001001002 ;
четвертая итерация
M4 = 11110110
Å
H 3 = = 00100100
H3 Å M4 = 11010010 = 21010
[H3 Å M4 )2] ( mod 119 ) = 210 2 ( mod 119 ) = 70
H4 = 7010 = 010001102 ;
пятая итерация
M5 = 11110000
Å
H4 = 01000110
H4 Å M5 = 10110110 = 18210
[H4 Å M5 )2] ( mod 119 ) = 182 2 ( mod 119 ) = 42
H5 = 4210 = 001010102 ;
шестая итерация
M6 = 11110100
Å
H5 = 00101010
H5 Å M6 = 11011110 = 22010
[H5 Å M6 )2] ( mod 119 ) = 220 2 ( mod 119 ) = 18
H6 = 1810 = 000100102 .
Таким образом, исходное сообщение БЕГ имеет хэш – код m = 18.
Для вычисления цифровой подписи используем следующую формулу
S = md ( mod n ) = 1877 ( mod 119 ) = 86 . (9)
Пара ( M,S ) передается получателю как электронный документ М, подписанный цифровой подписью S, причем подпись S сформирована обладателем секретного ключа d.
Получив пару ( M,S ), получатель вычисляет хэш – код сообщения М двумя способами:
а) восстанавливает хэш - код m' , применяя криптографическое преобразование подписи S с использованием открытого ключа e
m' = S e ( mod n ) = 86 5 mod ( 119 ) = 18 ;
б) находит результат хэширования принятого сообщения с помощью той же хэш – функции
m = H ( M ) = 18 .
При равенстве вычисленных значений m' и m получатель признает пару
( M,S ) подлинной.
3 Задание 3. Симметричное шифрование-дешифрование
Предлагается зашифровать заданный текст с помощью таблицы Вижинера.
Шифруемый текст: «Защита информации».
Ключ выбирается в соответствии с таблицей 1, где j - последняя цифра студенческого билета; i – предпоследняя цифра.
Т а б л и ц а 3
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
i, j |
А Б В |
Г Д Е |
Ж З И |
К Л М |
Н О П |
Р С Т |
У Ф Х |
Ц Ч Ш |
Щ Ъ Ы |
Э Ю Я |
Например, если последние цифры студенческого билета 21, то в качестве ключа выбирается следующий набор букв: ЖЗИГДЕ. В случае, если i = j , то взять j = i + 1. Например, при последних двух цифрах номера студенческого билета 33 ( i = 3, j = 3 ), изменяют j, т.е. j = i + 1 = 3 + 1 = 4. Следовательно, ключ – КЛМНОП.
3.1 Методические указания к заданию 3
Для решении задачи составляется таблица, которая представляет собой квадратную матрицу с числом элементов К, где К – число символов в алфавите. В первой строке матрицы записываются буквы в порядке очередности их в алфавите, во второй – та же последовательность, но со сдвигом влево на одну позицию, в третьей – со сдвигом влево на две позиции и т. д. Освободившиеся места справа заполняются вытесненными влево буквами, записываемыми в естественной последовательности, как показано на рисунке 1.
А Б В Г Д Е … Э Ю Я
Б В Г Д Е Ж … Ю Я А
В Г Д Е Ж З … Я А Б
Г Д Е Ж З И … А Б В
Д Е Ж З И К … Б В Г
Е Ж З И К Л … В Г Д
………………………………………………………
Я А Б В Г Д Ь Э Ю
Рисунок 1 - Таблица шифрования Вижинера
Для шифрования текста устанавливается ключ, как некоторое слово или набор букв. Далее из полной матрицы без буквы Ё выбирается подматрица шифрования. Она включает первую строку и строки матрицы, начальными буквами которых являются последовательно буквы ключа. На рисунке 2 представлена подматрица, составленная по ключу ЖЗИГДЕ.
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В Г Д Е
З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В Г Д Е Ж
И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В Г Д Е Ж З
Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В
Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В Г
Е Ж З И Й К Л МН О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В Г Д
Рисунок 2 - Ключ шифрования
Процесс шифрования включает следующую последовательность действий, представленную на рисунке 3:
а) под каждой буквой шифруемого текста записываются буквы ключа, причем ключ повторяется требуемое число раз;
б) каждая буква шифруемого текста заменяется на букву, расположенную на пересечении столбца, начинающегося с буквы текста и строки, начинающейся с буквы ключа.
Так, под первой буквой 3 шифруемого текста оказалась буква Ж ключа. На пересечении столбца с буквой З в таблице Вижинера и строки с буквой Ж находится буква Н. Буква Н будет первой буквой шифрованного текста.
Шифруемый текст З А Щ И Т А И Н Ф О Р М А Ц И И
Ключ Ж З И Г Д Е Ж З И Г Д Е Ж З И Г
Текст после замены Н З Б Л Ц Е О Ф Ъ С Ф С Ж Э Р Л
Зашифрованный текст Н З Б Л Ц Е О Ф Ъ С Ф С Ж Э Р Л
Рисунок 3 - Механизм шифрования заменой
Как видно из рисунка 3, зашифрованный текст делится на группы по четыре буквы в каждой.
Для расшифровывания зашифрованного текста необходимо знать ключ. Расшифровывание текста выполняется в следующей последовательности, как показано на рисунке 4:
а) над буквами зашифрованного текста сверху последовательно записываются буквы ключа;
б) в строке подматрицы таблицы Вижинера, начинающейся с буквы ключа, отыскивается буква зашифрованного текста; буква первой строки, находящаяся в соответствующем столбце, будет буквой расшифрованного текста;
в) полученный текст группируется в слова по смыслу.
Ключ Ж З И Г Д Е Ж З И Г Д Е Ж З И Г
Зашифрованный текст Н З Б Л Ц Е О Ф Ъ С Ф С Ж Э Р Л
Расшифрованный текст З А ЩИ Т А И Н Ф О Р М А Ц И И
Исходный текст З А ЩИ ТА И Н Ф О Р М А Ц И И
Рисунок 4 - Механизм расшифрования
Список литературы
1. Романец Ю.В. Защита информации в компьютерных системах и сетях. / Под ред.В.Ф.Шаньгина.- М.: Радио и связь, 1999. - 328 с.
2. Малюк А.А. и др. Введение в защиту информации в автоматизированных системах.- М.: Горячая линия-Телеком, 2001. - 148 с.
3. Завгородний В.И. Комплексная защита информации в компьютерных системах: Учеб.пособие.- М.: Логос; ПБОЮЛ Н.А.Егоров, 2001. - 264 с.
4. Петраков А.В. Основы практической защиты информации. 2-е изд.: Учеб.пособие.- М.: Радио и связь, 2000. - 368 с.
5. Зегжда Д.П. Основы безопасности информационных систем. – М.: Горячая линия – Телеком, 2000. – 452 с.
6. Рябко Б.Я., Фионов А.Н. Криптографические методы защиты информации: Учебное пособие. – М.: Горячая линия – Телеком, 2005. – 229 с.
7. Алферов А.П., Зубов Ф.Ю. и др. Основы криптографии: Учебное пособие. – М.: Гелиос АРВ, 2002. – 480 с.
8. Столлингс, Вильям. Криптография и защита сетей: принципы и практика. / Пер. с англ..- М.: Издательский дом «Вильямс», 2002. – 672 с
Содержание
1 Задание 1 .………………………………………………………………………3
1.1 Методические указания к заданию 1 ………………………………………….3
2 Задание 2 ………………………………………………………………………..5
2.1 Методические указания к заданию 2…………………………………………. 5
3 Задание 3 .………………………………………………………………………8
3.1 Методические указания к заданию 3 ………………………………………….8
Список литературы …………………………………………………………….... 10
План 2011 г., поз.