Выбрать главу

Вторым более серьезным шифром была «таблица Тритемия» — квадратная таблица размером 24х24 со многими алфавитами, названная «tabula recta». Алфавиты были записаны в строки таблицы один под другим, причем каждый из них был сдвинут на одну позицию влево по сравнению с предыдущим.

Тритемий предлагал использовать эту таблицу для многоалфавитного шифрования самым простым из возможных способов: первая буква текста шифровалась первым алфавитом, вторая буква — вторым и т. д. В этой таблице не было отдельного алфавита открытого текста, для этой цели служил алфавит первой строки. Таким образом, слово «UKRAINE» превращалось в шифротекст «ULTDNSL».

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

Кроме того, Тритемий предлагал также использовать одноалфавитное шифрование с помощью квадрата Полибия и ключевого слова — пароля. Выбиралось какое-либо слово, из него убирались повторяемые буквы, а оставшиеся записывались в первые клетки квадрата. Пустые клетки заполнялись оставшимися буквами алфавита по порядку.

Рассмотрим эту систему шифрования, таблица которой будет иметь размер не 5х5, а 5х6. Буква шифрования берётся из клетки, находившейся под клеткой буквы сообщения. Поскольку ключевое слово легко было запомнить, то такой подход упрощал процессы шифрования и дешифрования. Для ключа «ШИФРОВКА» таблица будет иметь такой вид (см. таблицу).

Для вышеописанного шифра по данной таблице сообщение «УЖГОРОД» даёт шифровку «ЫСМДГДН». Такие табличные шифры были названы монограммами, потому что шифрование велось по одной букве.

Тритемий также первым заметил, что можно шифровать одновременно по две буквы, которые стояли рядом и были названы «биграммой». Такой шифр был назван «биграммным». Опишем его на примере той же таблицы. Открытый текст разбивался на биграммы, а текст шифровки выходил из него в соответствии с такими правилами:

1. Если обе буквы биграммы исходного текста принадлежали одному столбцу таблицы, то буквами шифра считались буквы, которые были под ними. Так, биграмма «БУ» давала текст шифровки «ЛЫ». Если буква открытого текста находилась в нижней строке, то для шифра бралась соответствующая буква из верхней строки: биграмма «ЯЩ» давала шифр «ВШ» (биграмма из одной буквы или пары одинаковых букв тоже подчинялась этому правилу).

2. Если обе буквы биграммы исходного текста принадлежали одной строке таблицы, то буквами шифра считались буквы, которые лежали справа от них. Так, биграмма «КА» давала текст шифровки «АБ». Если буква открытого текста была в правом столбце, то для шифра бралась соответствующая буква из левого столбца: биграмма «ВЕ» давала шифр «ШК».

3. Если обе буквы биграммы открытого текста лежали в разных строках и столбцах, то вместо них брались две буквы таким образом, чтобы вся их четверка составляла прямоугольник. При этом последовательность букв в шифре была отражением исходной пары. Например, «АЛ» шифровалось как «БЗ», а «ДУ» — как «БЦ».

При шифровании фразы «ОБЪЯВЛЕН СБОР» по биграммам получается шифровка «ФДИВФПДПУКВО»:

ОБ ЪЯ ВЛ ЕН СБ ОР

ФД ИВ ФП ДП УК ВО

Шифрование биграммами резко усилила стойкость шифров к раскрытию.

Несмотря на то, что «Полиграфия» была достаточно доступной печатной книгой, описанные в ней идеи получили признание лишь тремя веками позже. Скорее всего это было вызвано непопулярностью Тритемия среди профессиональных криптологов, который был не криптологом, а богословом, библиофилом и основателем архивного дела.

Следующий шаг в развитии предложенного Тритемием способа шифрования был сделан итальянцем Джованни Баттиста Беллазо (Giovan Battista Bellaso). В 1553 году он опубликовал брошюру «Шифр сеньора Джованни Баттиста Беллазо» (итал. La cifra del. Sig. Giovan Battista Bellaso), где предложил использовать для многоалфавитного шифра буквенный ключ, который был назван им «паролем» и должен был легко запоминаться. Пароль выписывался под или над строкой сообщения. Буква пароля, что находились над (под) буквой сообщения, определяла номер строки таблицы Тритемия, то есть алфавит замены, в соответствии с которым и осуществлялась шифрование. Буква сообщения определяла номер столбца таблицы, а буква шифротекста находилась на пересечении строки и столбца таблицы.