logo search
Криптографическая защита информации

4.3.2. Элементы криптоанализа шифров перестановки

Укажем сначала основные идеи, используемые при вскры­тии вертикальных перестановок.

Заметим, что буквы каждого столбца запол­ненного прямоугольника выписываются в криптограмму подряд, то есть криптограмма разбивается на отрезки, являющиеся столбцами таблицы. Поэтому при дешифровании следует попы­таться соединить две группы последовательных букв крипто­граммы так, чтобы они образовывали хорошие ("читаемые") с точки зрения обычного текста комбинации. Для этого естест­венно использовать наиболее частые биграммы открытого тек­ста, которые можно составить из букв рассматриваемого шиф­рованного текста. Если для первой пробы выбрано, скажем, со­четание СТ (самая частая биграмма русского языка), то мы мо­жем по очереди приписывать к каждой букве С криптограммы каждую букву Т из нее. При этом несколько букв, стоящих до и после данной буквы С, и несколько букв, стоящих до и после данной буквы Т, соединяются в пары, то есть получаются два столбца букв, записанные рядом:

С

Т

I П

Конечно, мы не знаем длины столбцов, но некоторые огра­ничения на них можно получить, используя положение конкрет­ных букв. Так, столбцы должны иметь одинаковые длины или первый столбец может быть длиннее второго на одну букву, и тогда эта буква – последняя буква сообщения.

Если приписываемые друг к другу буквы разделены, ска­жем, только двумя буквами, то, как легко видеть, мы можем со­ставить в соседних столбцах не более трех пар, и длина каждого столбца не превышает четырех. Кроме того, ограничением мо­жет послужить появление запретной биграммы (например, гласная – мягкий знак).

Для выбранного сочетания СТ получается по одной паре столбцов для каждого конкретного выбора букв С и Т из криптограммы, и из них целесообразно отобрать ту пару, которая содержит наиболее частые биграммы.

Заметим, что при автоматизации этого процесса можно приписать каждой биграмме вес, равный частоте ее появления в открытом тексте. Тогда целесообразно отобрать ту пару столб­цов, которая имеет наибольший вес. Кстати, появление одной биграммы с низкой частотой может указать на то, что длину столбца надо ограничить.

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

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

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