Более эффективны обобщения подстановки Цезаря — шифр Хилла и шифр Плэйфера. Они основаны на подстановке не отдельных символов, а 2-грамм (шифр Плэйфера) или n-грамм (n-граммой называется последовательность из n символов алфавита.) (шифр Хилла). При более высокой криптостойкости они значительно сложнее для реализации и требуют достаточно большого количества ключевой информации.
Наиболее известный шифр биграммами называется Playfair. Он применялся Великобританией в Первую мировую войну. Опишем его на примере той же самой таблицы. Открытый текст разбивался на пары букв (биграммы) и текст шифровки строился из него по следующим двум очень простым правилам.
1. Если обе буквы биграммы исходного текста принадлежали одной колонке таблицы, то буквами шифра считались буквы, которые лежали под ними. Так биграмма УН давала текст шифровки ВЧ. Если буква открытого текста находилась в нижнем ряду, то для шифра бралась соответствующая буква из верхнего ряда и биграмма ОЯ давала шифр ШБ. (Биграмма из одной буквы или пары одинаковых букв тоже подчинялась этому правилу и текст ЕЕ давал шифр ИИ).
2. Если обе буквы биграммы исходного текста принадлежали одной строке таблицы, то буквами шифра считались буквы, которые лежали справа от них. Так биграмма ИВ давала текст шифровки КГ. Если буква открытого текста находилась в правой колонке, то для шифра бралась соответствующая буква из левой колонки и биграмма ОМ давала шифр ДН.
Если обе буквы биграммы открытого текста лежали в разных рядах и колонках, то вместо них брались такие две буквы, чтобы вся четверка их представляла прямоугольник. При этом последовательность букв в шифре была зеркальной исходной паре.
Шифровка биграммами, которую называют двойной квадрат, открыл новый этап в криптографии. Двойной квадрат использует сразу две таблицы, расположенные по горизонтали, а шифрование идет биграммами, как в шифре Playfair. Эти, казалось бы и не столь уж значительные изменения привели к появлению на свет новой криптографической системы ручного шифрования. Имеются две таблицы со случайно расположенными в них алфавитами. Для шифрования сообщение разбивают на биграммы. Первая буква биграммы находится в левой таблице, а вторая в правой. Затем, мысленно в таблице строится прямоугольник так, чтобы буквы биграммы лежали в его противоположных вершинах. Другие две вершины этого прямоугольника дают буквы шифровки.
Суть метода — создается таблица из 256 элементов с неодинаковыми значениями (по случайному закону). Каждый байт заменяется элементом этой таблицы с индексом равным байту. После этого таблица вписывается в тело файла, а адрес таблицы в файле является ключом. Таким образом длина файла увеличивается на 256 байт. Декодирование производится в обратном порядке.
Читайте также: Процессор intel core 2 duo e4400 характеристики
Шифр «двойной квадрат» был назван именем Чарльза Уитстона, который разработал его в 1854 г. «Двойной квадрат» Уитстона использует сразу две таблицы одинакового размера. Они заполняются буквами алфавита случайным образом аналогично методу полибианского квадрата, а шифрование идет биграммами, как в шифре Плейфейра. Таким образом ключом данного шифра является размер таблиц и порядок букв в них. Сократить длину ключа можно, используя способ заполнения таблиц с помощью ключевых слов, аналогично методу Трисемуса.
Рассмотрим процедуру шифрования методом «двойной квадрат» на примере. Пусть имеются две таблицы со случайно расположенными в них русскими алфавитами, пробелом и знаками препинания (рис. 6). Перед шифрованием исходное сообщение разбивают на биграммы. Каждая биграмма шифруется отдельно. Первую букву биграммы находят в левой таблице, а вторую букву – в правой таблице. Затем мысленно строят прямоугольник так, чтобы буквы биграммы лежали в его противоположных вершинах. Другие две вершины этого прямоугольника дают буквы биграммы шифртекста.
Допустим, что шифруется биграмма исходного текста «СА». Букву «С» находим левой таблице. Букву «А» находим в правой таблице. Это означает, что прямоугольник образован строками 1 и 4, а также столбцами 1 левой таблицы и 5 правой таблицы. Следовательно, в биграмму шифртекста входят буква «Н», расположенная в столбце 5 и строке 1 правой таблицы, и буква «И», расположенная в столбце 1 и строке 4 левой таблицы. Таким образом, получаем биграмму шифртекста «НИ».
СЬЖНФЪК
ЯЩЧФН .УЦБЩЯРДГРТЮГЦЙЕШЭМЙЧЫИЖЛЭКЬСИ ХЗ,ПОВХДЗШАЪЫЛ
А.ЕТЮ УО
М ВПБ,
Рис. 6. Ключевые таблицы для шифра «двойной квадрат» Уитстона
Если обе буквы биграммы сообщения лежат в одной строке или столбце, то буквы шифртекста берут из этой же строки или столбца. Первую букву биграммы шифртекста берут из правой таблицы в ячейке с индексами второй буквы биграммы сообщения. Вторая буква биграммы шифртекста берется из левой таблицы в ячейке с индексами первой буквы биграммы сообщения. Поэтому биграмма сообщения «АБ» превращается в биграмму шифртекста «МЮ». Аналогичным образом шифруются все биграммы сообщения.
Читайте также: Лучшие аксессуары для смартфонов
Шифруя методом «двойной квадрат» Уитстона сообщение «КРАСНАЯ ПЛОЩАДЬ» получим следующий шифртекст: «ЯГ, Н,ГЕОЛЦЗЙЧ» (рис. 7).
СообщениеКРАСНАЯПЛОЩАДЬШифртекстЯГ,Н,ГЕОЛЦЗЙЧ
Рис. 7. Пример шифрования по методу «двойной квадрат» Уитстона
I. Шифры простой замены
Шифр –Цезаря
1. Открытый текст – В САДУ РАСПУСТИЛИСЬ ЛИЛИИ
3. Ход шифрования – в строку записываются поочередно буквы алфавита, исключая «Ё» и «Й». Далее строкой ниже выписываются буквы, со сдвигом на то количество букв, которое записано в ключе. После того как все буквы выписаны, недостающие записываются в конец строки. По исходному тексту находим соответствие букв из получившегося алфавита.
АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯАБВГ
4. Шифрограмма – ЖХДИЧФДХУЧХЦНПНХАПНПНН
Шифр –Афинная система подстановок Цезаря
1. Открытый текст – ОСТРОВ (не правильный вариант)
2. Ключ – константы В = 3, А = 4, m = 32
3. Ход шифрования – каждой букве открытого текста присваивается номер согласно ее порядковому номеру в алфавите таблицы. После чего по формуле для каждой буквы вычисляются операции по модулю (целочисленное деление). Далее, если полученное значение Т1
АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ_
4. Шифрограмма — ЬЕИРЦ
Шифр – Лозунговый
1. Открытый текст –ПОБЕДА
2. ЛОЗУНГ – СВОБОДА
АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯСВОБДАГЕЖЗИКЛМНПРТУФХЦЧШЩЪЫЬЭЮЯ
3. Ход шифрования – выбранное слово-лозунг записываем во вторую строку таблицы по следующему правилу: «сначала вписывается слово-лозунг, причем повторяющиеся буквы отбрасываются, после чего таблица во второй строке дополняется не вошедшими в нее буквами алфавита».
Читайте также: Как пользоваться парогенератором philips
4. Шифрограмма – НМВАДС
Шифр – Полибианский квадрат
1. Открытый текст – МЕРКУРИЙ
3. Ход шифрования – прямоугольная таблица заполняется буквами алфавита в случайном порядке. Каждая буква открытого сообщения заменяется буквой, расположенной ниже в том же столбце. Если буква находится на последней строке таблицы, то для ее шифрования беру самую верхнюю букву столбца.
АРБОЙФЩХМВКЛ_СЧЪГТЗИПШЯЮЖУДНЕЭЦЫ
4. Шифрограмма – ГЙВЗРВН_
5 Шифр – Шифрующая таблица Трисемуса
1. Открытый текст – КНИГА
2. КЛЮЧ – ВЕНЕЦИЯ
3. Ход действий – Ключевое слово записывается в прямоугольную таблицу, причем повторяющиеся буквы отбрасываются. Затем данная таблица дополняется не вошедшими в нее буквами алфавита. Применение таблицы аналогично применению полибианского квадрата.
ВЕНЦИЯАБГДЖЗКЛМОПРСТУФХЧШЩЪЫЬЭЮ__
4. Шифрограмма – УЖКПМ
Шифр – Биграммный шифр Плейфейра
1. Открытый текст –ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ
2. Ключ –ПИРАМИДА
3. Ход действий – шифр основан на таблице, аналогичной таблице Трисемуса. Открытый текст разбивается на пары букв (биграммы). Текст должен содержать четное число букв, и в нем не должно быть биграмм, содержащих две одинаковые буквы. Последовательность биграмм открытого текста преобразуется в последовательность биграмм с помощью шифрующей таблицы по следующим правилам:
1) если обе буквы биграммы открытого сообщенияне попадают в одну строку или столбец, тогда для замены находят буквы в углах прямоугольника, определяемого данной парой букв;
2) если обе буквы биграммы отрытого сообщения принадлежат одному столбцу таблицы, то их заменяют на буквы, которые лежат под ними. Если при этом буква открытого текста находится в нижней строке, то для шифрования берется буква из верхней строки того же столбца;
3) если обе буквы биграммы открытого сообщения принадлежат одной строке таблицы, то они заменяются на буквы, которые лежат справа от них. Если при этом буква открытого текста находится в крайнем правом столбце, то для шифрования берется буква из крайнего левого столбца той же строки.