Такой же результат можно получить, если буквы сообщения писать по кольцу не подряд, а через определенное число позиций до тех пор, пока не будет исчерпан весь текст.
Для расшифрования такого щифротекста нужно не только знать правило шифрования, но и обладать ключом в виде диаметра стержня.
Шифрующие таблицы
В конце XIV века с началом эпохи Возрождения начинает возрождаться и криптография. Наряду с традиционными применениями криптографии в политике, дипломатии и военном деле появляются и другие задачи – защита интеллектуальной собственности от преследований инквизиции или заимствований злоумышленников. В разработанных шифрах перестановки того времени применяются шифрующие таблицы, которые в сущности задают правила перестановки букв в сообщении.
В качестве ключа в шифрующих таблицах используются:
· размер таблицы;
· слово или фраза, задающие перестановку;
· особенности структуры таблицы.
Одним из самых примитивных табличных шифров перестановки является простая перестановка, для которой ключом служит размер таблицы. Этот метод шифрования сходен с шифром скитала. Например, сообщение
|
|
НАД ВСЕЙ ИСПАНИЕЙ БЕЗОБЛАЧНОЕ НЕБО
записывается в таблицу поочередно по столбцам. Результат заполнения таблицы из 5 строк и 6 столбцов показан в таблице 1.3.1.
После заполнения таблицы текстом сообщения по столбцам для формирования шифротекста считывают содержимое таблицы по строкам.
Таблица 1.3.1 – Заполнение таблицы из 5 строк и 6 столбцов
Н | Е | А | Б | Л | Е |
А | Й | Н | Е | А | Н |
Д | И | И | З | Ч | Е |
В | С | Е | О | Н | Б |
С | П | Й | Б | О | О |
Если шифротекст записывать группами по 5 букв, получается такое шифрованное сообщение:
НЕАБЛ ЕАЙНЕ АНДИИ ЗЧЕВС ЕОНБС ПЙБОО
Естественно, отправитель и получатель сообщения должны заранее условиться об общем ключе в виде размера таблицы.Объединение букв шифротекста в 5-ти буквенные группы не входит в ключ шифра и осуществляется для удобства записи несмыслового текста.
При расшифровке действия выполняются в обратном порядке.
Несколько большей стойкостью к раскрытию обладает метод шифрования, называемый одиночной перестановкой по ключу. Он отличается от предыдущего тем, что столбцы таблицы переставляются по ключевому слову, фразе или набору чисел длиной в строку таблицы.
Применим в качестве ключа, например, слово
ЦУНАМИ,
а текст сообщения возьмем из предыдущего примера. В таблицах 1.3.2 и 1.3.3 показано заполнение до перестановки и после перестановки сообщения с ключевым словом.
Таблица 1.3.2 – Заполнение до перестановки
Ц | У | Н | А | М | И |
6 | 5 | 4 | 1 | 3 | 2 |
Н | Е | А | Б | Л | Е |
А | Й | Н | Е | А | Н |
Д | И | И | З | Ч | Е |
В | С | Е | О | Н | Б |
С | П | Й | Б | О | О |
|
|
Таблица 1.3.3 – Заполнение после перестановки
А | И | М | Н | У | Ц |
1 | 2 | 3 | 4 | 5 | 6 |
Б | Е | Л | А | Е | Н |
Е | Н | А | Н | Й | А |
З | Е | Ч | И | И | Д |
О | Б | Н | Е | С | В |
Б | О | О | Й | П | С |
В верхней строке таблицы 1.3.2 записан ключ, а номера под буквами ключа определены в соответствии с естественным порядком букв в алфавите. Если бы в ключе встретились одинаковые буквы, они бы были понумерованы слева направо.
В таблице 1.3.3 столбцы переставлены в соответствии с упорядоченными номерами букв ключа.
При считывании содержимого таблицы 1.3.3 по строкам и записи шифротекста группами по пять букв получим шифрованное сообщение:
БЕЛАЕ НЕНАН ЙАЗЕЧ ИИДОБ НЕСВБ ООЙПС
Для обеспечения дополнительной скрытности можно повторно зашифровать сообщение, которое уже прошло шифрование. Такой метод шифрования называется двойной перестановкой. В случае двойной перестановки столбцов и строк таблицы перестановки определяются отдельно для столбцов и отдельно для строк. Сначала в таблицу записывается текст сообщения, а потом поочередно переставляются столбцы, а затем строки.
При расшифровании порядок перестановок должен быть обратным.
Пример выполнения шифрования методом двойной перестановки показан в таблице 1.3.6. Если считывать шифротекст из таблицы 1.3.6 построчно блоками по четыре буквы, то получится следующее сообщение:
ГРУЗИТЕ АПЕЛЬСИНЫ
Ключом к шифру двойной перестановки служит последовательность номеров столбцов и номеров строк исходной таблицы 1.3.4: в нашем примере последовательности 4132 и 3142 соответственно.
Таблица 1.3.4 – Заполнение исходной таблицы
4 | 1 | 3 | 2 | |
3 | Г | Р | У | З |
1 | И | Т | Е | А |
4 | П | Е | Л | Ь |
2 | С | И | Н | Ы |
Таблица 1.3.5 – Перестановка столбцов
1 | 2 | 3 | 4 | |
3 | Р | З | У | Г |
1 | Т | А | Е | И |
4 | Е | Ь | Л | П |
2 | И | Ы | Н | С |
Таблица 1.3.6 – Перестановка строк
1 | 2 | 3 | 4 | |
1 | Т | А | Е | И |
2 | И | Ы | Н | С |
3 | Р | З | У | Г |
4 | Е | Ь | Л | П |
Число вариантов двойной перестановки быстро возрастает при увеличении размера таблицы:
· для таблицы 3 х 3 86 вариантов;
· для таблицы 4 х 4 576 вариантов;
· для таблицы 5 х 5 14400 вариантов.
Однако двойная перестановка не отличается высокой стойкостью и сравнительно просто взламывается при любом размере таблицы шифрования.
Магические квадраты
В средние века для шифрования перестановкой применялись и магические квадраты.
Магическими квадратами называют квадратные таблицы с вписанными в их клетки последовательными натуральными числами, начиная с 1, которые дают в сумме по каждому столбцу, каждой строке и каждой диагонали одно и то же число.
Шифруемый текст вписывали в магические квадраты в соответствии с нумерацией их клеток. Если затем выписать содержимое такой таблицы по строкам, то получится шифротекст, сформированный благодаря перестановке букв исходного сообщения. В те времена считалось, что созданные с помощью магических квадратов шифротексты охраняет не только ключ, но и магическая сила.
Пример магического квадрата и его заполнение сообщением
ГРУЗИТЕ АПЕЛЬСИНЫ
Таблица 1.3.7 – Магический квадрат
16 | 3 | 2 | 13 |
5 | 10 | 11 | 8 |
9 | 6 | 7 | 12 |
4 | 15 | 14 | 1 |
Таблица 1.3.8 – Магический квадрат, заполненный сообщением
Ы | У | Р | С |
И | Е | Л | А |
П | Т | Е | Ь |
З | Н | И | Г |
Шифротекст получаемый при считывании содержимого таблицы 1.3.8 по строкам, имеет следующий вид:
ЫУРС ИЕЛА ПТЕЬ ЗНИГ
Число магических квадратов быстро возрастает с увеличением размера квадрата. Существует только один магический квадрат размером 3 х 3 (если не учитывать его повороты). Количество магических квадратов 4 х 4 составляет уже 880, а количество магических квадратов 5 х 5 – около 250000.
|
|
Магические квадраты средних и больших размеров могли служить хорошей базой для обеспечения нужд шифрования того времени, поскольку практически нереально выполнить вручную перебор всех вариантов такого шифра.
Подготовка к работе
Подгруппа разбивается на 4 бригады: первая, вторая, третья, четвертая по 2 – 3 человека в каждой. В дальнейшем бригады работают друг с другом: первая с третьей, вторая с четвертой.
Каждая бригада пишет:
· программу получения шифра двойной перестановки по ключевым словам русского осмысленного текста для таблицы перестановки 5 x 5;
· программу расшифровки шифротекста двойной перестановки путем нахождения ключевых слов русского осмысленного текста для таблицы перестановки 5 х 5.
Выполнение работы
Каждая бригада получает у преподавателя по два ключевых слова для перестановки строк и столбцов таблицы, а также сообщение, которое необходимо зашифровать. Они хранятся в тайне от других бригад. Сообщения шифруются, и в виде файла с переставленными ключевыми словами передаются через преподавателя соответствующей бригаде.
Получив шифротекст, бригада, применяя свою программу путем нахождения осмысленных (перестановки) ключевых слов расшифровывает сообщение. Расшифрованное сообщение с определенными ключевыми словами предъявляются преподавателю.
Примечание: эффективность работы достигается при условии хранения каждой бригадой в тайне как самого сообщения, так и ключевых слов.
Содержание отчета
Отчет выполняется один на бригаду и должен включать:
1. Наименование и цель работы.
2. Краткие теоретические сведения.
3. Описание программы.
4. Блок схема алгоритма.
5. Текст программы.
6. Контрольный пример.
7. Выводы.
Примечание: Программа должна иметь дружественный интерфейс, предусматривающий объединение всех лабораторных работ.
Контрольные вопросы
|
|
1. Дать определение понятий “криптология”, “криптография”, “криптоанализ”.
2. Что такое “шифр”, “ключ”, “конфиденциальность”, “аутентичность”.
3. Принцип шифрования по шифрующим таблицам.
4. Шифры перестановки с ключевыми словами.
5. Принцип шифрования с помощью магических квадратов.