Лекция 12. Практикум для студентов всех специальностей, использующих федеральный компонент по основам информационной безопасности и защите информации
Скачать 1.25 Mb.
|
Бабаш А.В., Баранова Е.К. Учебное пособие КРИПТОГРАФИЧЕСКИЕ МЕТОДЫ И СРЕДСТВА ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ Лабораторный практикум для студентов всех специальностей, использующих федеральный компонент по основам информационной безопасности и защите информации Москва 2010 2 КРИПТОГРАФИЧЕСКИЕ МЕТОДЫ И СРЕДСТВА ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ Часть 1 Содержание ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ ………………………………………… 3 ЛАБОРАТОРНАЯ РАБОТА №1 ИСПОЛЬЗОВАНИЕ КЛАССИЧЕСКИХ КРИПТОАЛГОРИТМОВ ПОДСТАНОВКИ И ПЕРЕСТАНОВКИ ДЛЯ ЗАЩИТЫ ТЕКСТОВОЙ ИНФОРМАЦИИ …………………………………… 14 ЛАБОРАТОРНАЯ РАБОТА №2 ИССЛЕДОВАНИЕ РАЗЛИЧНЫХ МЕТОДОВ ЗАЩИТЫ ТЕКСТОВОЙ ИНФОРМАЦИИ И ИХ СТОЙКОСТИ НА ОСНОВЕ ПОДБОРА КЛЮЧЕЙ ………… ………………………… 24 ЛАБОРАТОРНАЯ РАБОТА №3 ИЗУЧЕНИЕ УСТРОЙСТВА И ПРИНЦИПА РАБОТЫ ШИФРОВАЛЬНОЙ МАШИНЫ ЭНИГМА (Enigma) ………………. 32 ЛАБОРАТОРНАЯ РАБОТА №4 СТАНДАРТ СИММЕТРИЧНОГО ШИФРОВАНИЯ AES RIJNDAEL ………………………………………………………… 46 СПИСОК ЛИТЕРАТУРЫ ………………………………………………… 59 3 ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ 1. Проблемы защиты информации В настоящее время во всем мире резко повысилось внимание к проблеме информационной безопасности. Это обусловлено процессами стремительного расширения потоков информации, пронизывающих все сферы жизни общества Информация давно перестала быть просто необходимым для производства вспомогательным ресурсом или побочным проявлением всякого рода деятельности. Она приобрела ощутимый стоимостной вес, который четко определяется реальной прибылью, получаемой при ее использовании, или размерами ущерба, с разной степенью вероятности наносимого владельцу информации. Однако создание индустрии переработки информации порождает целый ряд сложных проблем. Одной из таких проблем является надежное обеспечение сохранности и установленного статуса информации, циркулирующей и обрабатываемой в информационно-вычислительных системах и сетях. Появление глобальных компьютерных сетей сделало простым получение доступа к информации, как для отдельных пользователей, так и для больших организаций. Но легкость и высокая скорость доступа к данным при помощи компьютерных сетей, таких как Internet, также сделали значительными следующие угрозы безопасности данных при отсутствии мер их защиты: неавторизованный доступ к информации; неавторизованное изменение информации; неавторизованный доступ к сетям и сервисам; 4 другие сетевые атаки, например, повтор перехваченных ранее транзакций и атаки типа "отказ в обслуживании". При обработке любой значимой информации при помощи отдельного компьютера, а тем более в сети, возникает вопрос о ее защите от несанкционированного доступа и использования. Наиболее распространенный в компьютерных системах способ защиты – использование паролей – более пригоден для защиты доступа к вычислительным ресурсам, нежели для защиты информации. Это своеобразный экран, отгораживающий законных пользователей системы от посторонних, пройдя сквозь который, квалифицированный пользователь получает доступ практически ко всей информации. В настоящее время исключительно важное значение в разных областях приобрели вопросы, связанные с сохранением и передачей конфиденциальной информации. Возникающие при этом задачи решает криптография – наука о методах преобразования информации в целях ее защиты от незаконных пользователей. Ретроспективный взгляд на историю развития криптографии, как специфическую область человеческой деятельности, позволяет выделить три основных периода. Первый, наиболее продолжительный, – это эпоха "ручной криптографии". Ее начало теряется в глубокой древности, а окончание приходится на 30-е годы ХХ века. Криптография прошла путь от магического искусства до вполне прозаической прикладной специальности чиновников дипломатических и военных ведомств. Второй период – создание и широкое внедрение в практику сначала механических, затем электромеханических и электронных устройств шифрования, организация целых сетей засекреченной связи. Его началом можно считать разработку Гилбертом Вернамом (G.Vernam) в 1917 году 5 схемы телеграфной шифровальной машин, использующей одноразовую гамму, рис.1.1. Рис. 1.1. Шифрование методом Вернама К середине 70-х годов с развитием разветвленных коммерческих сетей связи, электронной почты и глобальных информационных систем на первый план вышли новые проблемы – проблемы снабжения ключами и проблемы подтверждения подлинности. В 1976 году американские ученые Уитфилд Диффи (W.Diffie) и Мартин Хеллман (M.Hellman) предложили два новых принципа организации засекреченной связи без предварительного снабжения абонентов секретными ключами шифрования – принцип так называемого открытого шифрования и принцип открытого распределения ключей. Этот момент можно считать началом нового периода в развитии криптографии. В настоящее время это направление современной криптографии очень интенсивно развивается. 6 2. Из истории криптографии Понятие ―безопасность‖ охватывает широкий круг интересов, как отдельных лиц, так и целых государств. Во все исторические времена существенное внимание уделялось проблеме информационной безопасности, обеспечению защиты конфиденциальной информации от ознакомления, кражи, модификации, подмены. Решением этих вопросов занимается криптография. Рис. 1.2. Джон Валлис Криптография – тайнопись. Термин ввел Джон Валлис (John Wallis) (1616-1703), английский математик. Потребность шифровать и передавать шифрованные сообщения возникла очень давно. Так еще в V-VI вв до н.э. греки применяли специальное шифрующее устройство. По описанию Плутарха, оно состояло из двух цилиндрических стержней одинаковой длины и толщины. Один оставляли себе, а другой отдавали отъезжающему. Эти стержни называли сциталами. При необходимости передачи сообщения, длинную ленту папируса наматывали на сциталу, не оставляя на ней никакого промежутка. 7 Затем, оставляя папирус на сцитале, писали на нем все, что необходимо, а, написав, снимали папирус и без стержня отправляли адресату. Так как буквы оказывались разбросанными в беспорядке, то прочитать сообщение мог только тот, кто имел свою сциталу такой же длины и толщины, намотав на нее папирус. . 1.3. Сцитала Квадрат Полибия 1 В Древней Греции (II в. до н.э.) был известен шифр, называемый ―квадрат Полибия”. 1 Полибий (200-120 гг. до н.э.) древнегреческий историк Это устройство представляло собой квадрат 5*5, столбцы и строки которого нумеровали цифрами от 1 до 5. В каждую клетку записывалась одна буква (в греческом варианте одна клетка оказывалась пустой, а в латинском – в одну клетку помещали две буквы I,J). В результате каждой букве отвечала пара чисел по номеру строки и столбца. 1 2 3 4 5 A B C D E 1 13 34 22 24 44 34 15 42 22 34 43 45 32 F G H I,J K 2 L M N O P 3 Cogito ergo sum - лат. ―Я мыслю, следовательно, существую‖ Q R S T U 4 Р.Декарт V W X Y Z 5 Код Цезаря В I в.н.э. Ю.Цезарь во время войны с галлами, переписываясь со своими друзьями в Риме, заменял в сообщении первую букву латинского алфавита (А) на четвертую (D), вторую (B) – на пятую (E), наконец последнюю – на третью. 3 ABCDEFGHIJKLMNOPQRSTUVWXYZ YHQL YLGL YLFL DEFGHIJKLMNOPQRSTUVWXYZABC Veni vidi vici - ―Пришел, увидел победил" Ю.Цезарь Донесение Сенату о победе над понтийским царем Шифр Цезаря относится к так называемому классу моноалфавитных подстановок и имеет множество модификаций. Решетка Кардано Широко известны шифры, принадлежащие к классу перестановка, в частности ―решетка Кардано‖ 2 . Это прямоугольная карточка с отверстиями, чаще всего квадратная, которая при наложении на лист бумаги оставляет открытыми лишь некоторые его части. Число строк и столбцов на карточке четно. Карточка сделана так, что при последовательном ее поворачивании каждая клетка лежащего под ней листа окажется занятой. Карточку поворачивают сначала вдоль вертикальной оси симметрии на 180 , а затем вдоль горизонтально оси также на 180 . И вновь повторяют ту же процедуру. Рис. 1.4. Решетка Кардано 2 Кардано Джероламо (1501-1576) - итальянский математик, философ и врач 4 Диск Альберти Итальянец Альберти (ХVI в.) впервые выдвинул идею "двойного шифрования" – текст, полученный в результате первого шифрования, подвергался повторному зашифрованию. В трактате Альберти был приведен его собственный шифр, который он назвал "шифром, достойным королей". Он утверждал, что этот шифр недешифруем. Реализация шифра осуществлялась с помощью шифровального диска, положившего начало целой серии многоалфавитных подстановок. Устройство представляло собой пару дисков – внешний, неподвижный (на нем были нанесены буквы в естественном порядке и цифры от 1 до 4) и внутренний – подвижный – на нем буквы были переставлены. Процесс шифрования заключался в нахождении буквы открытого текста на внешнем диске и замену ее на соответствующую (стоящую под ней) букву шифрованного текста. После шифрования нескольких слов внутренний диск сдвигался на один шаг. Ключом данного шифра являлся порядок расположения букв на внутреннем диске и его начальное положение относительно внешнего диска. Рис. 1.5. Диск Альберти 5 Таблица Виженера Неудобство рассмотренных выше шрифтов моноалфавитных подстановок очевидно, так как в случае использования стандартного алфавита таблица частот встречаемости букв алфавита позволяет определить один или несколько символов, а этого иногда достаточно для вскрытия шифра (―Плящущие человечки‖ Конан Дойля или ―Золотой жук‖ Эдгара По). Поэтому использовались различные приемы для того чтобы затруднить дешифрование, например использование ―таблицы Виженера”, которая представляет собой квадратную таблицу с числом строк и столбцов равным количеству букв алфавита. Чтобы зашифровать какое-либо сообщение выбирают слово – лозунг (например, ―монастырь‖) и надписывают его над сообщением с необходимым повторением. Чтобы получить шифрованный текст, находят очередной знак лозунга, начиная с первого в вертикальном алфавите, а ему соответствующий знак сообщения в горизонтальном алфавите. На пересечении выделенных столбца и строки находим первую букву шифра. Очевидно, что ключом к такому шифру является используемый лозунг. 6 м о н а с т ы р ь м о н а с т ы р ь м о н р а с к и н у л о с ь м о р е ш и р о к о э о я к щ а п ы й ю й щ о в ч ф ш л ь ш ы Таблица Виженера 3 АБВГДЕЖЗИЙКЛ М НОПРСТУФХЦЧШЩЬЫЭЮЯ БВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯА ВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯАБ ГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯАБВ ДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯФБВГ ЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯФБВГД ЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯФБВГДЕ ЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖ ИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗ ЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИ КЛМНОПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙ ЛМНОПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙК МНОПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛ НОПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМ ОПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМН ПРСТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНО Р СТУФХЦЧШЩЬЫ Э ЮЯАБВГДЕЖЗИЙКЛМНОП СТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПР ТУФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРС УФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТ ФХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУ ХЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФ ЦЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФХ ЧШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФХЦ ШЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧ ЩЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШ ЬЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩ ЫЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬ ЭЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧЩШЬЫ ЮЯАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭ ЯАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮ 3 Блез де Виженер (1523-1596) - французский посол в Риме, написал большой труд о шифрах. Квадратный шифр Виженера на протяжении почти 400 лет не был дешифрован, считался недешифруемым шифром 7 Одноразовый шифровальный блокнот Примером нераскрываемого шифра может служить так называемый одноразовый шифровальный блокнот – шифр, в основе которого лежит та же идея, что в шифре Цезаря. Назовем расширенным алфавитом множество букв алфавита и знаков препинания { . , : ; ! ? () – “ <пробел>}, число символов расширенного кириллического алфавита в данном варианте будет равно 44. Занумеруем символы расширенного алфавита числами от 0 до 43. Тогда любой передаваемый текст можно рассматривать как последовательность {a n } чисел множества A={0,1,2,…,43}. Предположим, что имеем случайную последовательность {c n } из чисел множества А той же длины, что и передаваемый текст – ключ. Складывая по модулю 44 число из передаваемого текста a n с соответствующим числом из множества ключа c n : a n + c n b n (mod 44), 0<=b n <=43 получим последовательность {b n } знаков шифрованного текста. Чтобы получить передаваемый текст, можно воспользоваться тем же ключом: a n b n - c n (mod 44), 0<=a n <=43 У двух абонентов, находящихся в секретной переписке, имеются два одинаковых блокнота. В каждом из них на нескольких листах напечатана случайная последовательность чисел множества А. Отправитель свой текст шифрует, указанным выше способом, при помощи первой страницы блокнота. Зашифровав сообщение, он уничтожает использованную страницу и отправляет текст сообщения второму абоненту, получатель шифрованного текста расшифровывает его и также уничтожает 8 использованный лист блокнота. Нетрудно видеть, что одноразовый шифр не раскрываем в принципе, так как символ в тексте может быть заменен любым другим символом и этот выбор совершенно случаен. 3. Методы шифрования 3 .1.Одноалфавитный метод Данный метод, пожалуй, самый древний из всех известных методов. В его основе лежит простой способ шифрования: отправитель и получатель зашифрованного документа заранее договариваются об определенном смещении букв относительно их обычного местоположения в алфавите. Например для кириллицы, если смещение равно 1, то ―А‖ соответствует букве ―Б‖, ―Б‖ – ―В‖, и так далее, а когда алфавит подходит к концу, то начинают брать буквы из начала списка. И выходит, например, следующее: из слова ―КОДИРОВАНИЕ‖ получается ―ЛПЕЙСПГБОЙЖ‖. Частным случаем данного метода является ранее рассмотренный шифр Цезаря. Очевидно, что произвольный шифр из класса одноалфавитных методов не является шифром Цезаря (если мощность алфавита текста равна n, то число шифров Цезаря равно n, а число всех одноалфавитных шифров равно n!).Однако и для таких методов легко предложить способы дешифрования, основанные на статистических свойствах шифрованных текстов поскольку открытый и закрытый тексты имеют одинаковые статистические характеристики. В лабораторной работе № 1 рассматриваются два варианта одноалфавитного метода с фиксированным смещением и с произвольным (задаваемым) смещением. 9 3 .2.Шифрование методом перестановки символов Суть этого метода заключается в том, что символы текста переставляются по определенным правилам, при этом используются только символы исходного (незашифрованного) текста. Перестановки в классической криптографии обычно получаются в результате записи исходного текста и чтения шифрованного текста по разным путям геометрической фигуры. Простейшим примером перестановки является запись исходного текста по строкам некоторой матрицы и чтение его по столбцам этой матрицы. Последовательность заполнения строк и чтения столбцов может быть любой и задается ключом. Таким образом, для матрицы размером 8*8 (длина блока 64 символа) возможно 1.6*10 9 ключей, что позволяет на современных компьютерах путем перебора дешифровать заданный текст. Однако для матрицы размером 16*16 (длина блока 256 символов) имеется 1.4*10 26 ключей, и перебор их с помощью современных вычислительных средств весьма затруднителен. Примером применения метода перестановки может быть также восьмиэлементная таблица, обладающая совокупностью маршрутов, носящих название маршрутов Гамильтона. Последовательность заполнения таблицы каждый раз соответствует нумерации ее элементов. Если длина шифруемого текста не кратна числу элементов, то при последнем заполнении в свободные элементы заносится произвольный символ. Выборка из таблицы для каждого заполнения может выполняться по своему маршруту, при этом маршруты могут использоваться как последовательно, так и в порядке, задаваемом ключом. 10 Для методов перестановки характерны простота алгоритма, возможность программной реализации и низкий уровень защиты, так как при большой длине исходного текста в его зашифрованном варианте проявляются статистические закономерности ключа, что и позволяет его быстро раскрыть. Другой недостаток этих методов – легкое раскрытие, если удается направить в систему для шифрования несколько специально подобранных сообщений. Так, если длина блока в исходном тексте равна К символам, то для раскрытия ключа достаточно пропустить через шифровальную систему К-1 блоков исходного текста, в которых все символы, кроме одного, одинаковы. |