Добавил:
донатики - https://qiwi.com/n/1ZOMBIE1 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛБ / ЛБ_6

.docx
Скачиваний:
9
Добавлен:
01.10.2023
Размер:
253.91 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное образовательное

учреждение высшего образования

«Юго-Западный государственный университет»

Лабораторная работа №6

По дисциплине: «Криптографические методы защиты информации»

Тема: «Перестановки»

Выполнил: Бунина А.В.

студент группы ИБ-01б

Проверил: Ефремов М.А.

доцент

Курск, 2023

Целью работы: • расшифровать криптограмму, зашифрованную методом перестановок, получить ключ шифрования;

• расшифровать криптограмму, зашифрованную методом перестановок по путям Гамильтона, получить ключ шифрования;

• расшифровать криптограмму, зашифрованную методом табличной перестановки, пользуясь для этой цели таблицей частот диаграмм русского языка, получить ключ шифрования;

Теория

Все шифры замены, которые были рассмотрены выше, относятся к т.н. поточным шифрам. В поточных шифрах шифрование происходит посимвольно. Если уподобить поточные шифры - а, вернее, шифраторы - черному ящику и подавать на вход поток символов открытого текста, то на выходе практически без задержек будут появляться соответствующие им символы криптограммы.

Кроме поточных, существуют еще блочные шифры. При использовании блочных шифров текст предварительно разбивается на блоки и шифрование происходит поблочно.

Перестановки относятся к блочным шифрам. Текст делится на блоки по N символов, и в каждом блоке символы переставляются в соответствии с некоторым правилом (ключом). Таким образом ключ задает порядок символов в блоке.

Кроме того, известны т.н. табличные перестановки. Например, исходный текст вписывают в таблицу по столбцам, а затем строки таблицы переставляются в соответствии с ключом. Размер таблицы оговаривается заранее.

Существует два способа использования ключа.

Пусть

Ключ K = k1k2…ki…kN

Текст M = m1m2…mi…mN

ki- целое число : ki.

Способ 1.

Чтобы зашифровать M, нужно i-ый символ текста поставить на ki-ое место. При расшифровке на i-ое место ставим ki-ый символ криптограммы.

N = 5; Ключ 3-1-5-4-2

Исходный Текст : ИНФОР|МАЦИЯ

Криптограмма : НРИОФ|АЯМИЦ

Способ 2.

При шифровке на i-ое место ставим ki-ый символ текста. При расшифровке i-ый символ криптограммы ставится на ki-ое место.

N = 5; Ключ 3-1-5-4-2

Исходный Текст : ИНФОР|МАЦИЯ

Криптограмма : ФИРОН|ЦМЯИА

В нашем лабораторном практикуме для простой перестановки используется способ 2, а для случая табличной перестановки - способ 1.

Любую перестановку можно представить в виде графа G = < V,E >, где V - вершины, а E - ребра графа. В этом случае перестановки получают, записывая открытый текст и читая зашифрованный текст по всевозможным путям этого графа.

Для этих целей удобно пользоваться путями Гамильтона. Гамильтонов путь в графе — это путь, проходящий в точности один раз через каждую вершину данного графа.

Таким образом, заранее выбирается некоторый граф, и затем один из путей Гамильтона используется в качестве ключа перестановки.

В общем случае, при использовании перестановок с длиной блока N, существует N! вариантов ключа. Поэтому при малой длине ключа N, для вскрытия шифра достаточен простой перебор всех вариантов перестановок. При больших значениях N перебор становится невозможен. Использование маршрутов Гамильтона упрощает дешифрацию перестановок, т.к. из всего множества возможных ключей используются только пути Гамильтона. Однако, при больших значениях N, это преимущество становится незаметным.

Знание частот встречаемости в тексте пар букв - диграмм - позволяет легко вскрывать шифры табличной перестановки. Оказывается, рассматривая маловероятные сочетания букв, можно восстановить истинный порядок строк в таблице. Кроме того, с помощью вероятностей появления диграмм можно рассчитать вероятность следования одной строки за другой.

p(i,j) = П p(ei,k ,ej,k) (5.1)

k=1

Пользуясь формулой 5.1 можно вычислить вероятности следования друг за другом всех возможных пар строк. Руководствуясь этим соображением, для таблиц небольшого размера легко восстановить истинный порядок следования строк. В общем случае для расшифровки криптограммы необходимо решить оптимизационную задачу нахождения наиболее вероятного порядка строк в таблице (задача коммивояжера).

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

Запустим программу лабораторной работы и выберем из главного меню опцию “Метод перестановок”. Выбираем 3 вариант и увидим окно программы.

Зададим длину ключа 6, после просмотра вероятной длины ключа.

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

Так как при помощи генерации осмысленное слово или текст не выявлено пробуем другой вариант ключа.

Расшифровка криптограммы с этим набором ключей показывает текст не особо читаемый, но уже можно предположить правильное содержание открытого текста.

Попробовав вероятное слово «процессе», алгоритм расшифрования начался, что предполагает возможную перестановку символов. Окончательный результат осмысленный открытый текст и ключ. Вероятное слово оказалось верным, и криптограмма расшифрована.

Во второй части задания требуется использовать перестановку по путям Гамильтона, для чего нужно заполнить таблицу смежности графа варианта №3. Затем можно будет расшифровать криптограмму, используя полученные данные.

Теперь выберем 3 вариант и перейдём в RESULT2.TXT для просмотра результатов.

После ввода стандартного значения ключа в программу, был получен определенный результат.

Берем из файла полученные значения пробуем их подставлять, если необходимо, то делаем смещения в положении ключа. После подстановки значения «125643» получаем осмысленный открытый текст.

Для выполнения третьей части задания перейдем в директорию PER и откроем файл CRYPTO64.exe

Для того чтобы расшифровать данное сообщение необходимо переставить строки в соответствии с их вероятным следованием друг за другом.

После того как получилось слово «Иван», продолжаем расшифровывать данную криптограмму переставляя строки на разные полиции.

После дополнительного исследования было выявлено, что последовательность «7145026» является ключом для данной криптограммы.

Вывод: научилась расшифровывать криптограммы методами перестановок, включая пути Гамильтона и табличную перестановку. Однако, после дополнительного исследования выяснила, что криптостойкость метода перестановок зависит от длины ключа, поэтому это может быть недостатком данного алгоритма.

Соседние файлы в папке ЛБ