Читать «Таинственные страницы. Занимательная криптография» онлайн - страница 10

Иван Иванович Ефишов

Попробуем разбить фразы на составные части следующим способом:

MaNeR || E te VO || lo DOn || ec Ven || [ero].

(Я хочУ, || чтОбЫ || ты оСТ || аВалС || [я на месте, пока я не приду]).

Лишь теперь, после разбиения фразы на пятерки букв, мы видим, что дешифруемое слово состоит ровно из четырех букв. Места расположения выделенных букв в пятерках не совпадают, так как русское слово не является калькой с латинского и пишется иначе. В квадратные скобки заключен лишний текст, который не использовался при шифровании; при дешифровке он легко будет отброшен как ненужный.

Этот шифр Бэкон изобрел «еще в ранней юности», в семнадцать лет. В шестьдесят он писал: «Даже сейчас, как нам кажется, это изобретение не потеряло своего значения и не заслуживает забвения. Ибо оно представляет собой высшую ступень совершенства шифра, давая возможность выражать всё через всё (omnia per omnia). Единственным условием при этом оказывается то, что внутреннее письмо должно быть в пять раз меньше внешнего; никаких других условий или ограничений не существует».

Вы уже догадались, в чем дело, или пора в качестве очередной подсказки дать ответ?

Итак, секретное послание, состоящее из одного слова, – это fuge (лат. «беги»).

Как же это слово возникло из фразы, по какому алгоритму? Рассмотрим все по порядку:

MaNeR соответствует при дешифровке f;

EteVO – u;

loDOn – g;

ecVen – e;

ero – ничему не соответствует, так как в этом остатке фразы слишком мало букв.

Улавливаете закономерность? Вспомним, что мы используем два шрифта для данного шифра. Заменим все обычные буквы фразы на цифру 0, а ВЫДЕЛЕННЫЕ – на 1. Получаем, что

f = 00101, u = 10011, g = 00110, e = 00100,

или в русскоязычном варианте:

б = 00001, е = 00101, г = 00011, и = 01001.

Если первой букве классического латинского алфавита А поставить в двоичной системе счисления (в которой всего две цифры: 0 и 1!) в соответствие число 0 (или, используя пять символов, 00000), то второй латинской букве B (в русском языке Б) будет соответствовать 00001, третьей букве C (В) – 00010, четвертой букве D (Г) – 00011, пятой букве E (Д) – 00100, шестой букве F (Е) – 00101, седьмой букве G (Ё) – 00110…., десятой букве K (И) – 01001…., двадцатой букве V (Т) – 10011.

У математиков бытует шутка, что на свете существует 10 типов людей: те, кто понимает двоичную систему счисления, и те, кто не понимает. Надеюсь, что в предыдущем абзаце вы прекрасно разобрались.

Заметим, что внешнее письмо может быть написано на одном языке, а внутреннее – на другом. Так, если вышеприведенную фразу на латыни записать как:

ManeRe tE vOlo dONeC veNero,

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

Конечно, Бэкон ничего не знал о двоичной системе счисления, которая была полностью разработана в европейской математике в трудах Г. В. Лейбница несколько позже. Он просто заметил, что на каждую букву достаточно пяти символов (где каждый символ – это либо буква а, либо b или, как у нас в этюде, равнозначные им цифровые символы 0 и 1), чтобы полностью заменить весь латинский алфавит различными сочетаниями этих знаков: «Перестановки из двух букв по пяти дадут нам тридцать два различных сочетания, что более чем достаточно для замещения двадцати четырех букв, из которых состоит наш алфавит».