Модель шифра маршрутной перестановки
Данный шифр относится к классу шифров перестановки и характеризуется простотой выполнения операций шифрова- ния/расшифрования. Один из наиболее распространенных способов шифрования/расшифрования задается некоторым прямоугольником (таблицей) и соответствующим правилом его заполнения. Например, открытый текст записывается в таблицу по строкам, а шифртекст получается в результате выписывания столбцов соответствующей таблицы, или наоборот.
Пример 2.3. Рассмотрим пример на основе таблицы размера 8x5. Открытый текст записываем по строкам, считываем но столбцам. Порядок записи отражен цифрами в таблице:
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
Шифртекст выписывается так: 1, 6, 11, 16, 21, 26, 31, 36, 2, 7, 12, 17, 22, 27, 32, 37, 3, 8, ... и т.д.
Маршрутная перестановка на основе решетки Кардано
Для построения решетки Кардано исходный квадрат 2п х 2п делится на 4 квадрата размером п х п. В правом верхнем квадрате все ячейки нумеруются числами из множества {1,2,3,4}. Далее исходный квадрат поворачиваем на 90 градусов. В таком случае занумерованные клетки первого квадрата п х п будут налагаться на клетки второго квадрата такого же размера, находящегося в правом нижнем углу. Переносим номера первого квадрата на соответствующие клетки второго.
Аналогично производится дальнейший поворот исходного квадрата на очередные 90 градусов и перенос номеров в клетки квадрата в левом нижнем углу, а затем и в квадрат в левом верхнем углу. Делаем вырезы по следующему правилу: правый верхний квадрат - вырезы в клетках с номером 1, в правом нижнем - 2, в левом нижнем - 3, в левом верхнем - 4. Накладываем полученную решетку на лист и вписываем в вырезы буквы открытого текста. Затем переворачиваем решетку на 90 градусов и вписываем буквы в открывшиеся окошки. Повторяем так еще два раза.
Так как мы создавали решетку описанным выше способом, при поворотах окошки не попадут друг на друга и при этом весь квадрат 2п х 2п окажется заполненным. Расшифрование происходит с использованием такой же решетки. Длинные тексты шифруются блоками по 4п2 знаков.
Пример 2.4. Решеткой Кардано размера 6x6 является таблица, ячейки которой заполнены следующими числами:
1 |
2 |
4 |
1 |
2 |
1 |
2 |
3 |
1 |
4 |
3 |
2 |
1 |
4 |
3 |
3 |
1 |
4 |
4 |
1 |
3 |
3 |
4 |
1 |
2 |
3 |
4 |
1 |
3 |
2 |
1 |
2 |
1 |
4 |
2 |
1 |
Данная таблица состоит из четырех квадратов размера 3x3, вырезы в которых делаются соответственно на цифрах 1, 2, 3 и 4. Места вырезов при повороте исходной решетки на 90, 180 и 270 градусов показаны ниже:
3 |
4 |
||||
3 |
4 |
||||
1 |
|||||
2 |
1 |
||||
2 |
1 |
2 |
|||||
2 |
3 |
||||
3 |
|||||
1 |
4 |
||||
1 |
1 |
4 |
1 |
2 |
||||
1 |
2 |
||||
1 |
|||||
4 |
3 |
||||
4 |
3 |
||||
Упражнение 2.2.1. Расставьте соответствующие номера в незаполненные клетки приведенных выше таблиц.
Упражнение 2.2.2. Найдите открытый текст по шифртексту, который представляет собой заполненную таблицу Кардано из рассмотренного выше примера.
п |
и |
Р |
Е |
Е |
Ш |
3 |
р |
Р |
Д |
У |
Е |
с |
Е |
А |
Е |
т |
II |
т |
Т |
К |
А |
ш |
О |
р |
А |
Н |
Е |
С) |
К |
и |
А |
Ф |
Р |
А |
Л |