Лабораторная 8. Лабораторная работа 1. Использование классических криптоалгоритмов подстановки и перестановки для защиты текстовой информации Цель работы
Скачать 33.2 Kb.
|
Лабораторная работа №1. Использование классических криптоалгоритмов подстановки и перестановки для защиты текстовой информации Цель работы: изучение классических криптографических алгоритмов моноалфавитной подстановки, многоалфавитной подстановки и перестановки для защиты текстовой информации. Использование гистограмм, отображающих частоту встречаемости символов в тексте для криптоанализа классических шифров. Описание лабораторной работы.Для выполнения лабораторной работы необходимо запустить программу L_LUX.EXE. На экране дисплея появляется окно с размещенным в его центре текстовым редактором (для отображения зашифрованных и расшифрованных текстов), в верхней строке окна расположено главное меню, позволяющее пользователю выполнить требуемое действие. Чуть ниже основного меню размещена панель инструментов (для управления быстрыми командными кнопками и другими «горячими» элементами управления), а в самом низу окна, под текстовым редактором, находится строка состояния, в которой указывается подсказка и выводится дополнительная информация. Клавиши панели инструментов для удобства снабжены всплывающими подсказками. Для того чтобы попасть в основное меню, необходимо нажать клавишу F10. Передвижение по главному меню осуществляется клавишами перемещения курсора. Чтобы вызвать пункт меню, нужно нажать клавишу ENTER, вернуться в главное меню или вовсе выйти из него – ESC. Рассмотрим более подробно каждый из пунктов главного меню. Редактор. Данный пункт основного меню содержит подпункты: создать документ, открыть файл, сохранить файл, выход из программы. Предварительно, сразу после запуска программы, текстовый редактор недоступен, также недоступными являются почти все пункты главного меню, кроме создания документа, открытия файла, выхода из программы, информации о программе, и большая часть клавиш панели управления, за исключением создания документа, открытия файла и выхода из программы. Создать документ (Ctrl+N) – при выборе данного подпункта становится доступна работа с тестовым редактором (пользователь получает право создать свой текстовый файл, который впоследствии можно будет использовать при работе с программой), также появляется возможность использовать все недоступные до этого пункты основного меню и клавиши панели управления. Открыть файл (Ctrl+L) – при выборе этого пункта появляется диалоговое окно, предоставляющее возможность выбора файла для загрузки. При этом содержимое файла будет отображено в окне редактора текстов. Аналогично пункту СОЗДАТЬ ДОКУМЕНТ доступным для работы становится текстовый редактор с отображаемым текстом, а также появляется возможность использовать все недоступные до этого пункты основного меню и клавиши панели управления. Сохранить файл (Ctrl+S) – при выборе этого пункта появляется диалоговое окно, позволяющее сохранить на диске содержимое редактора текстов. Выход из программы (Ctrl+X) – при выборе этого пункта появляется диалоговое окно, позволяющее выйти из программы. Гистограмма. Вывод на экран двух гистограмм, отображающих частоту встречаемости символов в тексте. Внимание! До выполнения шифрования и дешифрования вызывать гистограмму не имеет смысла, так как еще не сформированы тексты, для которых будет просматриваться гистограмма. Имеется возможность просмотра следующих сочетаний гистограмм: исходного и зашифрованного файла; зашифрованного и расшифрованного файла; стандартного распределения и зашифрованного текста; стандартного распределения и расшифрованного текста. С целью масштабирования в гистограммах используются левая и правая клавиши мыши. Например, после шифрования текста большого объема пользователь хочет посмотреть гистограммы исходного и зашифрованного файла. Поскольку размеры текста достаточно большие, то на экран будут выведены две гистограммы с большим количеством столбцов в каждой (столбец соответствует одному символу текста), однако трудно будет сказать, какой из этих столбцов соответствует тому или иному символу текста и какова частота встречаемости данного символа. Поэтому у пользователя есть возможность увеличить масштаб любой из двух гистограмм для более точного определения требуемого значения частоты встречаемости конкретного символа. Для этого необходимо навести указатель мыши на левую границу того участка гистограммы, который требуется увеличить, затем нажать левую клавишу мыши и, не отпуская ее, растянуть прямоугольник так, чтобы его нижний правый угол совпал с правой границей увеличиваемого участка гистограммы. После этого следует отпустить левую клавишу мыши, и на экране появится увеличенное изображение нужного участка. Нажав и не отпуская правую клавишу мыши, можно перемещать гистограмму в любом направлении с целью изучения всего полученного распределения в увеличенном масштабе. Для того чтобы от увеличенного масштаба вернуться к исходному виду, нужно навести указатель мыши на гистограмму, затем нажать левую клавишу мыши и, не отпуская ее, снизу вверх растянуть небольшой по размерам прямоугольник, после этого следует отпустить левую клавишу мыши, и на экране появится исходное изображение гистограммы. Шифрование. Выполнение шифрования текстового файла осуществляется одним из семи методов, рассматриваемых в лабораторной работе: одноалфавитный (с фиксированным смещением); одноалфавитный с задаваемым смещением (от 2 до 20); перестановка символов; по дополнению до 255 (инверсный); многоалфавитный (с фиксированным ключом); многоалфавитный с ключом фиксированной длины; многоалфавитный с ключом произвольной длины. Выбор метода шифрования производится как мышкой, так и клавишами перемещения курсора и клавишей ENTER. Затем появляется окно, в котором в зависимости от метода шифрования требуется указать те или иные параметры и либо подтвердить процесс кодировки, либо отказаться от него. После этого в окне редактора будет выдан зашифрованный текст. Расшифрование. Аналогично предыдущему пункту выбирается метод расшифрования (должен соответствовать методу, которым был зашифрован файл). Снова появляется окно, в котором в зависимости от метода расшифрования требуется указать те или иные параметры и либо подтвердить процесс расшифрования, либо отказаться от него. После этого в окно редактора будет выдан расшифрованный текст. При правильном расшифровании полученный текст совпадает с исходным. Дополнительная информация. Программа предусматривает возможность посмотреть дополнительную информацию («Помощь Ctrl+F9»), справочную информацию об используемых методах шифрования («О методах Ctrl+F10»), сведения о программе («О программе Ctrl+F11»). Пример работы с программой. Рассмотрим одноалфавитное шифрование с фиксированным ключом. Нажав клавиши Ctrl+L либо выбрав в меню пункт ОТКРЫТЬ ФАЙЛ, загрузите в окно редактора исходный текст. Затем вызовите пункт меню ШИФРОВАНИЕ, выберите одноалфавитный метод (с фиксированным смещением). В появившемся окне нажмите клавишу ЗАШИФРОВАТЬ. После того как шифрование выполнено, можно в редакторе просмотреть зашифрованный текст. Перейдите к пункту меню ГИСТОГРАММА. Выберите тип гистограмм, отображающий гистограммы исходного и шифрованного файлов. Проанализируйте гистограммы. Они должны иметь примерно одинаковый вид. Чтобы узнать ключ шифра (смещение второго алфавита относительно первого), необходимо по гистограммам найти символы, имеющие одинаковую частоту встречаемости. Например, самый частый символ в первой гистограмме при шифровании должен перейти в самый частый символ во второй гистограмме. Таким образом, найдя два самых часто встречаемых символа в обеих гистограммах, можно по стандартном таблице ASCII-кодов вычислить смещение. Зная смещение и таблицу кодировки символов, текст можно легко расшифровать. Вызвав пункт меню ДЕШИФРОВАНИЕ, можно провести те же действия в автоматическом режиме. Примечание. При шифровании и расшифровании из таблицы кодировки не используются символы с кодами 176–223 и 240–255, т.е. при ручной расшифровке эти символы следует пропускать и считать, что, например, символ «Я» имеет код не 159, а 223, аналогично «п» не 175, а 239. Иногда в гистограммах под столбцами, показывающими частоту встречаемости символов, изображены не сами символы, а их табличные коды в квадратных скобках. Ниже провидено описание «горячих» клавиш и их использование при выполнении различных действий: Shift+F10 – о программе; Ctrl+X – выход из программы; Ctrl+N – new – ФАЙЛ/СОЗДАТЬ; Ctrl+L – load – ФАЙЛ/ОТКРЫТЬ; Ctrl+S – save – ФАЙЛ/СОХРАНИТЬ. Шифрование: Ctrl+Fl – одноалфавитный метод (с фиксированным смещением); Ctrl+F2 – одноалфавитный с задаваемым смещением (от 2 до 20); Ctrl+F3 – перестановка символов; Ctrl+F4 – по дополнению до 255 (инверсный метод); Ctrl+F5 – многоалфавитный метод с фиксированным ключом; Ctrl+F6 – многоалфавитный метод с ключом фиксированной длины; Ctrl+F7 – многоалфавитный метод с ключом произвольной длины. Расшифрование: Shift+Fl – одноалфавитный метод (с фиксированным смещением); Shift+F2 – одноалфавитный с задаваемым смещением (от 2 до 20); Shift+F3 – перестановка символов; Shift+F4 – по дополнению до 255 (инверсный метод); Shift+F5 – многоалфавитный метод с фиксированным ключом; Shift+F6 – многоалфавитный метод с ключом фиксированной длины; Shift+F7 – многоалфавитный метод с ключом произвольной длины. Гистограммы: Shift+Ctrl+F1 – исходного и шифрованного файла; Shift+Ctrl+F2 – шифрованного и расшифрованного файла; Shift+Ctrl+F3 – стандартного распределения и шифрованного текста; Shift+Ctrl+F4 – стандартного распределения и расшифрованного текста. Помощь: Ctrl+F9 – помощь; Ctrl+F10 – о методах; Ctrl+Fll – о программе. Задание 1. Ознакомиться с описанием лабораторной работы и заданием. 2. Для одноалфавитного метода с фиксированным смещением определить установленное в программе смещение. Для этого следует: просмотреть предварительно созданный с помощью редактора свой текстовый файл; выполнить для этого файла шифрование; просмотреть в редакторе зашифрованный файл; просмотреть гистограммы исходного и зашифрованного текстов; описать гистограммы (в чем похожи, чем отличаются) и определить, с каким смещением было выполнено шифрование; расшифровать зашифрованный текст: - с помощью программы, после чего проверить в редакторе правильность расшифрования, - вручную с помощью гистограмм; описать и объяснить процесс дешифрования. В отчете для каждого метода шифрования описывается последовательность выполняемых действий, имена всех использованных файлов, полученные гистограммы, указывается найденное смещение, описывается процесс дешифрования. Преподавателю предоставляется отчет о проделанной работе и все использованные и созданные файлы. 3. Для одноалфавитного метода с задаваемым смещением (шифр Цезаря) следует: выполнить шифрование с произвольным смещением для своего исходного текста; просмотреть и описать гистограммы исходного и зашифрованного текстов, определить смещение для нескольких символов; расшифровать текст с помощью программы; дешифровать зашифрованный шифром Цезаря текст с помощью программы методом подбора смещения; указать, с каким смещением был зашифрован файл. 4. Для метода перестановки символов дешифровать зашифрованный файл. Для этого необходимо определить закон перестановки символов открытого текста. Создайте небольшой файл длиной в несколько слов с известным вам текстом, зашифруйте его, просмотрите гистограммы (опишите их; ответьте, можно ли извлечь из них полезную для дешифрации информацию). Сравните (с помощью редактора) ваш исходный и зашифрованный тексты и определите закон перестановки символов. Дешифруйте файл: вручную (объясните ваши действия); с помощью программы. 5. Для инверсного кодирования (по дополнению до 255): выполните шифрование для своего произвольного файла; просмотрите гистограммы исходного и зашифрованного текстов, опишите гистограммы и определите смещение для нескольких символов; дешифруйте зашифрованный текст, проверьте в редакторе правильность дешифрования. 6. Для многоалфавитного шифрования с фиксированным ключом определите, сколько одноалфавитных методов и с каким смещением используется в программе. Для этого нужно создать свой файл, состоящий из строки одинаковых символов, выполнить для него шифрование и по гистограмме определить способ шифрования и набор смещений. 7. Для многоалфавитного шифрования с ключом фиксированной длины: выполните шифрование и определите по гистограмме, какое смещение получает каждый символ для файла, состоящего из строки одинаковых символов; выполните шифрование и расшифрование для файла произвольного текста; просмотрите и опишите гистограммы исходного и зашифрованного текстов; ответьте, какую информацию можно получить из гистограмм. 8. Для многоалфавитного шифрования с произвольным паролем задание полностью аналогично п. 7. 9. Привести в отчете ответы на контрольные вопросы в соответствии с номером варианта, указанным преподавателем (табл. 1.1). Таблица 1.1
|