После кодирования: 80453 26822 40498 33277
Из шифроблокнота: 37584 67439 30842 46793 34809
Шифровка: 37584 47882 56664 86181 67076
На заключительном этапе, пятизначные цифровые группы были преобразованы в пятизначные буквенные группы с использованием следующей таблицы:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
O | I | U | Z | T | R | E | W | A | (?) |
В большинстве дипломатических шифросистем, которыми Советская Россия пользовалась во время Второй мировой войны, в качестве индикатора задействовался номер страницы шифроблокнота, применяемой для зашифрования сообщения (обычно в блокноте было либо 35, либо 50 страниц). Советская разведка придерживалась этого правила вплоть до 1 мая 1944 года, после чего вместо номера страницы стала применять пятизначную цифровую группу, с которой начиналась страница шифроблокнота.
Преобразование цифр в буквы служило, скорее всего, для того, чтобы сократить расходы на передачу шифровки в виде телеграфного сообщения. Одно время передавать по телеграфу буквы было дешевле, чем цифры. И хотя в 40-е годы, с точки зрения оплаты, было уже неважно, из букв или же из цифр состояло телеграфное сообщение, русские по-прежнему отправляли свои телеграммы в буквенном виде.
В результате получилась шифровка следующего вида:
ZWRAT TWААU REEET AEIAI EW0WE RWWEO 12315
В конец этой шифровки была добавлена пятизначная цифровая группа, идущая в шифроблокноте за группой, которую шифровальщик использовал последней (57760 или RWWEO), а также еще пять цифр, первые три из которых обозначали порядковый номер шифровки (123), а последние два число, которым она датировалась (15).
В Москве шифровальщик преобразовал пятизначные буквенные группы полученной шифровки в пятизначные цифровые группы:
(37584) 47882 56664 86181 67076 (57760)
Первая из этих пятизначных групп подсказала московскому шифровальщику, какую страницу одноразового шифроблокнота следует использовать, а последняя — помогла убедиться, что ни одна пятизначная группа не была пропущена при передаче донесения. Далее он по очереди вычел цифры, приведенные на соответствующей странице блокнота, из цифр шифровки (при этом, если вычитаемое оказывалось больше уменьшаемого, последнее увеличивалось на 10). Так им была вычислена исходная цифровая последовательность пятизначных групп:
80453 26822 40498 33277
После разбивки этой последовательности на группы из четырех цифр шифровальщик в Москве восстановил исходный открытый текст донесения, применив обратное преобразование в соответствии с кодовой книгой:
8045 3268 2240 4983 3277 - ««Гном» передал отчет об истребителе».
Метод двойного советского шифра был абсолютно не вскрываемым. Даже если бы американцы каким-либо образом раздобыли кодовую книгу и узнали бы в деталях об этой шифросистеме, они всё равно мало бы продвинулись в ее прочтении. Стойкость такой системы определяется, во-первых, случайностью (т.е. непредсказуемостью) последовательности знаков, из которых состоит шифроблокнот, а во-вторых, уникальностью этой последовательности. Последнее означает, что каждая страница блокнота используется для зашифрования и расшифрования донесений один и только один раз. При строгом соблюдении обоих этих условий взломать криптосистему, построенную на основе одноразового шифроблокнота, невозможно.
Однако такая абсолютная стойкость давалась очень дорогой ценой. Поскольку каждое разведывательное донесение после кодирования приходилось дополнительно шифровать с помощью уникальной цифровой цепи, для засекречивания сотен тысяч сообщений количество страниц в блокноте должно было исчисляться теми же сотнями тысяч. В 40-е годы, в отсутствие быстродействующих компьютеров, которые можно было бы использовать для автоматизации процесса создания шифроблокнотов, вручную изготовить совершенно случайную последовательность длиной несколько сот тысяч знаков оказалось просто невозможно.