| Helgus ~ µастер ~ Kласс: Это незавершённая статья по ивентологии и её применениям |
Шифр перестановки один из самых старых и часто встречаемых методов шифрования.
Шифр перестановки заключается в том, что символы шифруемого текста переставляются по определенным правилам внутри шифруемого блока символов.
Примеры перестановок[]
Самая простая перестановка — написать исходный текст задом наперед и одновременно разбить шифрограмму на группы из нескольких букв. Пусть группа состоит из пяти букв. Например, из фразы
ПУСТЬ БУДЕТ ТАК, КАК МЫ ХОТЕЛИ
получится такой шифротекст:
ИЛЕТО ХЫМКА ККАТТ ЕДУБЪ ТСУП
В последней группе (пятерке) не хватает одной буквы. Значит, прежде чем шифровать исходное выражение, следует его дополнить незначащей буквой (например, О) до числа, кратного пяти:
ПУСТЬ-БУДЕТ-ТАККА-КМЫХО-ТЕЛИО.
Тогда шифрограмма, несмотря на столь незначительные изменения, будет выглядеть по-другому:
ОИЛЕТ ОХЫМК АККАТ ТЕДУБ ЬТСУП
Кажется, ничего сложного, но при расшифровке проявляются серьезные неудобства.
Во время Гражданской войны в США в ходу был такой шифр: исходную фразу писали в несколько строк. Например, по пятнадцать букв в каждой (с заполнением последней строки незначащими буквами).
П У С Т Ь Б У Д Е Т Т А К К А
К М Ы Х О Т Е Л И К Л М Н О П
После этого вертикальные столбцы по порядку писали в строку с разбивкой на пятерки букв:
ПКУМС ЫТХЬО БТУЕД ЛЕИТК ТЛАМК НКОАП [1].
Книжный шифр[]
Книжный шифр, является еще одним примером шифра перестановки. Этот шифр изобрел Эней, и описал его в сочинении «Об обороне укрепленных мест». Эней предложил прокалывать малозаметные дырки в книге или в другом документе над буквами секретного сообщения. Интересно отметить, что в первой мировой войне германские шпионы использовали аналогичный шифр, заменив дырки на точки, наносимые симпатическими чернилами на буквы газетного текста.
Книжный шифр в современном варианте имеет несколько другой вид. Суть этого шифра состоит в замене букв на номер строки и номер этой буквы в строке в заранее оговоренной странице некоторой книги. Ключом такого шифра является книга и используемая страница в ней. Этот шифр оказался «долгожителем» и применялся даже во времена второй мировой войны.
На экране:
М О С К В А
К О С В М А
Для расшифровки сообщения надо поменять строки в таблице местами и поставить в порядке возрастания числа
И Ч Е У Н К
У Ч Е Н И К [2].
Очевидно, что в данном примере существует возможных вариантов заполнения нижней строки.
Маршрутная перестановка[]
Широкое распространение получили шифры перестановки, использующие некоторую геометрическую фигуру. Преобразования из этого шифра состоят в том, что в фигуру исходный текст вписывается по ходу одного «маршрута», а затем по ходу другого выписывается с нее. Такой шифр называют маршрутной перестановкой.
Например, можно вписывать исходное сообщение в прямоугольную таблицу, выбрав такой маршрут: по горизонтали, начиная с левого верхнего угла поочередно слева направо и справа налево. Выписывать же сообщение будем по другому маршруту: по вертикали, начиная с верхнего правого угла и двигаясь поочередно сверху вниз и снизу вверх [2]
Зашифруем, например, указанным способом фразу:
ПРИМЕРМАРШРУТНОЙПЕРЕСТАНОВКИ
используя прямоугольник размера четыре на семь:
| П | Р | И | М | Е | Р | М |
| Н | Т | У | Р | Ш | Р | А |
| О | Й | П | Е | Р | Е | С |
| И | К | В | О | Н | А | Т |
Зашифрованная фраза выглядит так:
МАСТАЕРРЕШРНОЕРМИУПВКЙТРПНОИ
Теоретически маршруты могут быть значительно более изощренными, однако запутанность маршрутов усложняет использование таких шифров.
В данном примере видно, что шифр состоит из двух перестановок:
- выбор маршрута, как вписывать сообщение в таблицу;
- выбор маршрута, записи шифр текста.
Так как можно произвольно вписывать буквы сообщения в таблицу, то мы получим маршрутов P(28)=28! в первой перестановке.
Во второй тоже 28!.
И в итоге получаем вариантов шифрования одного сообщения. Но какое бы ни было число вариантов, шифр можно взломать.
Пример: Расшифровать АЗЮЖЕ СШГГООИПЕР
Пусть имеется шифровка АЗЮЖЕ СШГГООИПЕР, сообщение состоит из 16 символов включая пробел. Составим таблицу 4 на 4, и впишем в нее наше сообщение
| 1 | 2 | 3 | 4 | |
| 1 | A | З | Ю | Ж |
| 2 | E | С | Ш | |
| 3 | Г | T | О | О |
| 4 | И | П | E | P |
Рассматривая маловероятные сочетания букв, легко найти истинную последовательность столбцов. Так, сочетание ГТ в 3 строке шифровки указывает на то, что после 1 столбца вряд ли следует 2 столбец. Рассчитаем статистически, какой столбец, скорее всего, следует за 1. Для этого воспользуемся таблицей логарифмов вероятностей пар букв (биграмм) русского текста.
| А | Б | В | Г | Д | Е | Ж | З | И | Й | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | П | Т | Ь | Ы | Ь | Э | Ю | Я | Процент | |
| А | 2 | 7 | 8 | 6 | 7 | 7 | 7 | 7 | 4 | 7 | 7 | 7 | 8 | 8 | 3 | 7 | 6 | 7 | 8 | 2 | 6 | 6 | 7 | 7 | 5 | 5 | 0 | 0 | 0 | 0 | 6 | 7 | 9 | 71 |
| Б | 7 | 1 | 1 | 0 | 1 | 6 | 2 | 2 | 6 | 0 | 5 | 6 | 3 | 5 | 7 | 2 | 7 | 5 | 0 | 7 | 0 | 5 | 4 | 1 | 0 | 5 | 5 | 7 | 2 | 2 | 0 | 3 | 5 | 13 |
| В | 8 | 0 | 5 | 0 | 4 | 8 | 0 | 3 | 7 | 1 | 6 | 7 | 5 | 6 | 8 | 4 | 6 | 6 | 6 | 6 | 0 | 3 | 0 | 1 | 3 | 0 | 0 | 8 | 2 | 0 | 0 | 4 | 8 | 38 |
| Г | 6 | 0 | 1 | 1 | 6 | 5 | 0 | 0 | 6 | 0 | 4 | 5 | 4 | 4 | 8 | 0 | 7 | 0 | 0 | 6 | 0 | 0 | 1 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 10 |
| Д | 8 | 1 | 6 | 3 | 4 | 8 | 1 | 0 | 0 | 4 | 7 | 1 | 7 | 8 | 4 | 6 | 5 | 2 | 7 | 1 | 3 | 3 | 3 | 4 | 0 | 0 | 6 | 4 | 0 | 4 | 5 | 7 | 25 | |
| Е | 5 | 5 | 6 | 7 | 8 | 6 | 6 | 6 | 4 | 7 | 7 | 8 | 8 | 9 | 6 | 5 | 8 | 8 | 9 | 3 | 3 | 6 | 5 | 6 | 5 | 6 | 0 | 0 | 1 | 1 | 5 | 5 | 9 | 73 |
| Ж | 6 | 0 | 0 | 0 | 6 | 7 | 2 | 1 | 7 | 0 | 5 | 0 | 2 | 7 | 1 | 0 | 1 | 2 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 2 | 8 |
| 3 | 8 | 4 | 6 | 2 | 6 | 4 | 1 | 1 | 6 | 1 | 5 | 5 | 6 | 6 | 7 | 1 | 5 | 0 | 0 | 6 | 0 | 0 | 2 | 1 | 0 | 0 | 2 | 6 | 2 | 0 | 0 | 4 | 6 | 14 |
| И | 6 | 6 | 7 | 6 | 6 | 8 | 5 | 7 | 7 | 7 | 7 | 6 | 8 | 8 | 5 | 5 | 7 | 8 | 8 | 1 | 5 | 7 | 7 | 7 | 6 | 3 | 0 | 1 | 0 | 0 | 6 | 7 | 9 | 64 |
| Й | 0 | 0 | 3 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 3 | 6 | 5 | 4 | 0 | 0 | 0 | 6 | 6 | 0 | 0 | 0 | 1 | 2 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 8 | 11 |
| К | 8 | 1 | 5 | 1 | 1 | 6 | 5 | 2 | 7 | 1 | 2 | 7 | 0 | 5 | 8 | 0 | 7 | 6 | 6 | 7 | 0 | 0 | 6 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 7 | 29 |
| Л | 8 | 4 | 1 | 2 | 1 | 8 | 6 | 1 | 8 | 0 | 4 | 4 | 1 | 6 | 7 | 0 | 0 | 3 | 3 | 6 | 3 | 0 | 0 | 3 | 1 | 1 | 0 | 6 | 8 | 0 | 7 | 8 | 6 | 31 |
| М | 7 | 5 | 7 | 2 | 2 | 8 | 0 | 1 | 7 | 0 | 4 | 4 | 7 | 6 | 8 | 5 | 1 | 3 | 1 | 6 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 7 | 3 | 0 | 0 | 6 | 8 | 32 |
| Н | 9 | 0 | 3 | 3 | 6 | 8 | 1 | 1 | 9 | 0 | 6 | 0 | 1 | 7 | 8 | 0 | 0 | 5 | 7 | 6 | 5 | 2 | 5 | 3 | 0 | 0 | 0 | 8 | 5 | 0 | 4 | 6 | 7 | 50 |
| О | 2 | 8 | 8 | 8 | 8 | 6 | 7 | 7 | 6 | 8 | 7 | 8 | 8 | 7 | 6 | 7 | 8 | 8 | 8 | 3 | 2 | 5 | 6 | 7 | 6 | 5 | 0 | 0 | 1 | 5 | 2 | 5 | 9 | 89 |
| П | 7 | 0 | 0 | 0 | 0 | 8 | 0 | 4 | 7 | 0 | 3 | 6 | 1 | 4 | 8 | 4 | 9 | 4 | 5 | 6 | 2 | 0 | 1 | 0 | 0 | 0 | 0 | 4 | 5 | 3 | 0 | 4 | 4 | 28 |
| Р | 9 | 1 | 6 | 4 | 4 | 8 | 6 | 0 | 8 | 0 | 5 | 2 | 6 | 6 | 8 | 4 | 2 | 6 | 6 | 7 | 3 | 5 | 4 | 2 | 4 | 2 | 0 | 7 | 4 | 0 | 1 | 6 | 7 | 48 |
| С | 6 | 4 | 6 | 2 | 5 | 7 | 2 | 0 | 7 | 0 | 7 | 8 | 6 | 6 | 8 | 7 | 5 | 6 | 9 | 6 | 3 | 5 | 1 | 5 | 5 | 0 | 0 | 5 | 6 | 1 | 3 | 8 | 7 | 43 |
| Т | 8 | 2 | 7 | 1 | 4 | 8 | 0 | 0 | 8 | 0 | 6 | 4 | 5 | 6 | 9 | 3 | 8 | 8 | 4 | 6 | 0 | 0 | 0 | 4 | 0 | 2 | 1 | 7 | 8 | 0 | 1 | 5 | 8 | 60 |
| У | 3 | 4 | 4 | 6 | 6 | 7 | 6 | 5 | 3 | 3 | 6 | 5 | 5 | 6 | 0 | 6 | 7 | 7 | 7 | 1 | 5 | 5 | 0 | 6 | 3 | 6 | 0 | 0 | 0 | 0 | 7 | 4 | 8 | 19 |
| Ф | 6 | 0 | 0 | 0 | 0 | 5 | 0 | 0 | 6 | 0 | 0 | 2 | 2 | 0 | 6 | 0 | 4 | 0 | 3 | 5 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 2 | 4 |
| Х | 4 | 3 | 3 | 0 | 0 | 4 | 0 | 0 | 3 | 0 | 1 | 1 | 0 | 5 | 6 | 0 | 5 | 3 | 1 | 3 | 0 | 0 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 8 | 6 |
| Ц | 5 | 0 | 6 | 0 | 0 | 6 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5 | 0 | 0 | 0 | 0 | 5 | 6 |
| Ч | 7 | 0 | 1 | 0 | 0 | 8 | 0 | 0 | 7 | 0 | 6 | 1 | 0 | 6 | 2 | 0 | 1 | 0 | 7 | 3 | 0 | 0 | 0 | 1 | 3 | 0 | 0 | 1 | 3 | 0 | 0 | 0 | 4 | 12 |
| Ш | 5 | 0 | 0 | 0 | 0 | 6 | 0 | 0 | 7 | 0 | 3 | 3 | 0 | 3 | 4 | 0 | 3 | 0 | 3 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 0 | 0 | 5 | 3 |
| Щ | 6 | 0 | 0 | 0 | 0 | 7 | 0 | 0 | 6 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 2 | 0 | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 1 | 0 | 1 | 3 |
| Ъ | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 32 | 1 |
| Ы | 1 | 4 | 7 | 3 | 5 | 7 | 1 | 5 | 1 | 7 | 5 | 5 | 6 | 2 | 1 | 5 | 5 | 5 | 6 | 0 | 0 | 7 | 0 | 5 | 4 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 8 | 18 |
| Ь | 0 | 1 | 0 | 0 | 0 | 3 | 0 | 7 | 1 | 0 | 6 | 0 | 4 | 7 | 1 | 0 | 0 | 6 | 4 | 0 | 0 | 0 | 0 | 1 | 6 | 1 | 0 | 0 | 0 | 0 | 6 | 2 | 8 | 12 |
| Э | 0 | 0 | 4 | 0 | 0 | 1 | 0 | 0 | 0 | 2 | 6 | 5 | 2 | 1 | 0 | 2 | 0 | 1 | 7 | 0 | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 4 |
| Ю | 0 | 5 | 0 | 0 | 2 | 0 | 1 | 2 | 0 | 4 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 7 | 0 | 0 | 0 | 0 | 6 | 1 | 7 | 0 | 0 | 1 | 0 | 3 | 0 | 7 | 6 |
| Я | 0 | 1 | 5 | 2 | 5 | 6 | 2 | 5 | 0 | 2 | 2 | 3 | 6 | 5 | 0 | 1 | 4 | 4 | 7 | 0 | 0 | 4 | 4 | 3 | 0 | 4 | 0 | 0 | 0 | 0 | 6 | 4 | 9 | 18 |
| 7 | 8 | 9 | 7 | 8 | 7 | 5 | 8 | 8 | 3 | 8 | 6 | 8 | 9 | 9 | 9 | 8 | 9 | 8 | 7 | 7 | 6 | 7 | 8 | 5 | 1 | 1 | 2 | 1 | 8 | 2 | 6 | 0 | 138 |
Вероятность следования одного столбца за другим равна произведению вероятностей биграмм в строках этих столбцов. Поскольку в таблице даны логарифмы биграмм, то их достаточно суммировать, а потом выбрать сочетание столбцов с максимальной вероятностью. Для вероятностей следования за первым столбцом 2, 3 и 4 имеем выражения:
р (1-2) =р(A3) р(Е ) р(ГТ) р(ИП)=7+9+0+5=21
р (1-3) =р(АЮ) р(ЕС) р(ГО) р(ИЕ)=6+8+8+8=30
р (1-4 )=р(АЖ) р(ЕШ) р(ГО) р(ЯР)=7+5+8+7=27
В нашем случае наиболее вероятно, что после столбца 1 следует столбец 3, их вероятность наибольшая. Для такой небольшой таблицы шифрования, которую имеем, можно перебрать все варианты перестановок - их всего лишь 24. В случае большого числа столбцов целесообразно оценить вероятности пар сочетаний разных столбцов и решить оптимизационную задачу, которая укажет перестановку столбцов, дающую фрагменты естественного текста с большей вероятностью. В нашем случае наилучший результат достигается при расстановке столбцов (2413), что примерно вдвое по вероятностной оценке достовернее ближайшей к ней по вероятности расстановки (4132). После того, как столбцы шифровки расставлены, не составит труда правильно расставить и ее строки по смыслу фрагментов текста:
| 2 | 4 | 1 | 3 | |
| 1 | З | Ж | A | Ю |
| 2 | _ | Ш | E | С |
| 3 | T | О | Г | О |
| 4 | П | P | И | E |
Текст в ней уже читается и, расставив строки в порядке (4123), получим расшифровку ПРИЕЗЖАЮ ШЕСТОГО.
Литература[]
1. Бабаш А.В., Шанкин Г.П. Криптография: аспекты защиты. М.: Солон – Р, 2002.
2. Ященко В.В., ред. Введение в криптографию. М: МЦНМО, 2000
См.также[]
Nomaan 10:57, 17 августа 2008 (UTC)