- •Разработка программного комплекса для проведения сравнительного анализа шифров
- •1.1. Выбор шифров перестановки для проведения анализа
- •Определение места в классификационной схеме и дереве развития криптографии
- •Определение криптографических задач, решаемых с помощью выбранных шифров
- •1.2. Анализ алгоритма шифра 1, построение блок-схемы алгоритма шифра и программы шифрования
- •1.3. Анализ алгоритма шифра 2, построение блок-схемы алгоритма шифра и программы шифрования
- •1.4. Анализ алгоритма шифра 2, построение блок-схемы алгоритма шифра и программы шифрования. Описание формата ввода данных
- •1.5 Разработка общего интерфейса комплекса программ шифрования 1, 2 и 3. Описание формата ввода данных
- •2.1. Шифрование с помощью разработанного программного комплекса шифров замены литературного текста
- •Сравнительный анализ шифров перестановки по результатам шифрования и криптоанализа зашифрованных текстов
- •2.2. Построение гистограмм открытого и зашифрованных текстов, диаграмм символов, биграмм и триграмм
- •2.2. Криптоанализ шифртекстов, полученных с помощью шифров.
- •2.3. Криптоанализ вертикальной перестановки
- •2.4. Криптоанализ Решетки Кардано
- •2.6. Криптоанализ шифра на основе задачи «о ходе коня» Эйлера
- •2.5. Сравнительный анализ криптостойкости выбранных шифров 1, 2 и 3 по полученным оценкам и трудоемкости процедуры криптоанализа.
2.2. Построение гистограмм открытого и зашифрованных текстов, диаграмм символов, биграмм и триграмм
Ниже приведена гистограмма исходного текста:
Рисунок 2.13 Гистограмма исходного текста
Вертикальная перестановка
Рисунок 2.14 Биграмма
Рисунок 2.15 Триграмма:
Решетка Кардано
Рисунок 2.16 Биграмма
Рисунок 2.17 Триграмма
Конь Эйлера:
Рисунок 2.18 Биграмма
Рисунок 2.19 Триграмма
2.2. Криптоанализ шифртекстов, полученных с помощью шифров.
Проанализировав полученные биграммы для выбранных шифров, можно сделать сказать, что все они очень неравномерны, однако шифр вертикальной перестановки дал худший результат, потому что он имеет самую высокую частоту встречаемости биграмм.
Рассматривая полученные триграммы, можно заметить, что они опять же не равномерны, но шифр Эйлера показывает лучший результат, так как у него самая низкая частота встречаемости, и самая равномерная триграмма.
Можно сделать вывод, что шифр Эйлера обладает более высокой криптостойкостью относительно шифра вертикальной перестановки решетки Кардано.
2.3. Криптоанализ вертикальной перестановки
В процессе шифрования вертикальными перестановками буквы каждого столбца заполненного прямоугольника выписываются в криптограмму подряд, то есть криптограмма разбивается на отрезки, являющиеся столбцами таблицы. Поэтому при дешифровании естественно попытаться соединить две группы последовательных букв криптограммы так, чтобы они образовывали хорошие с точки зрения обычного текста комбинации.
Для этого естественно использовать наиболее частые биграммы открытого текста, которые можно составить из букв рассматриваемого шифрованного текста.
Если для первой пробы выбрано, скажем, сочетание СТ (самая частая биграмма русского языка), то можем по очереди приписывать к каждой букве С криптограммы каждую букву Т из нее. При этом несколько букв, стоящих до и после данной буквы С, и несколько букв, стоящих до и после данной буквы Т, соединяются в пары, то есть получаются два столбца букв, записанные рядом.
Конечно, длины столбцов не известны, но некоторые ограничения на них можно получить, используя положение конкретных букв. Так, столбцы должны иметь одинаковые длины или первый столбец может быть длиннее второго на одну букву, и тогда эта буква — последняя буква сообщения.
Если приписываемые друг к другу буквы разделены, скажем, только двумя буквами, то, как легко видеть, мы можем составить в соседних столбцах не более трех пар, и длина столбца не превышает четырех. Кроме того, ограничением может послужить появление запретной биграммы (например, гласная — мягкий знак).
Для выбранного сочетания СТ получается по одной паре столбцов для каждого конкретного выбора букв С и Т из криптограммы, и из них целесообразно отобрать ту пару, которая содержит наиболее частые биграммы.
При автоматизации этого процесса можно приписать каждой биграмме вес, равный частоте ее появления в открытом тексте. Тогда следует отобрать ту пару столбцов, которая имеет наибольший вес. Кстати, появление одной биграммы с низкой частотой может указать на то, что длину столбца надо ограничить по длине. Выбран пару столбцов, мы аналогичным образом можем подобрать к ним третий (справа или слева) и т. д.
Описанная процедура значительно упрощается при использовании вероятных слов, то есть слов, которые могут встретиться в тексте с большой вероятностью.
