Голосовые радиостанции предназначались для передачи актуальной информации, ценность которой терялась в течение часа или раньше. Передача велась: открытым текстом, эзоповым языком, с использованием радистов, владеющих редким языком одного из народов СССР. Конкретное решение по голосовой связи принималось командиром полка или батальона в зависимости от наличия нужного контингента.

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

Как обычно, чего-то не хватало. Если радиостанции уже были в частях, то шифровальных машин или таблиц кодирования для специальных шифров не было вообще. Но Ольгу это не остановило. Попросив собрать командиров связистов из штабов дивизий, танковой бригады и авиаотряда, с которыми должен поддерживать связь штаб армии, она прочитала короткую лекцию по основам шифрования.

– Товарищи командиры, чтобы не толочь воду в ступе, мы сразу с вами займемся делом. Первым нашим заданием будет научиться составлять таблицы кодирования. На столе лежат книги, которые я взяла на сегодня в местной библиотеке. Прошу каждого подойти и выбрать себе одну. На доске я изобразила буквы алфавита, но не по порядку. Что вам напоминает эта запись?

– Клавиши печатной машинки, – крикнул самый сообразительный.

– Правильно. А кто знает, почему я так записала? Почему клавиши печатной машинки расположены именно в таком порядке?

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

– В целом правильно. Легче печатать потому, что в центре сосредоточены буквы, чаще всего встречающиеся в тексте, а по бокам те, что используются редко. Это обстоятельство нам нужно будет обязательно учитывать при составлении кодовой таблицы. Возьмите лист бумаги, карандаш и перерисуйте таблицу алфавита. Откройте книгу на произвольной странице и зашифруйте каждую букву четырехзначным числом. Первые две цифры – номер строки, вторые две – номер буквы в строке. Чем ближе буква к центру таблицы, чем чаще она встречается в тексте, тем большее количество чисел нужно поставить ей в соответствие. Для начала определимся так: для букв двух центральных столбцов – находите их в тексте страницы не менее восьми раз и записываете под ними по восемь четырехзначных чисел. Соответственно, двигаясь от центра таблицы, для букв других столбцов по шесть, четыре, два, и по одному числу для букв крайних столбцов. Не забудем также про такой символ, как пробел. Пустое место в тексте встречается чаще любых других символов. Так же, как ноль встречается чаще других цифр… а среди людей… не будем о грустном. Поэтому пробелу вы найдете в соответствие не меньше десяти чисел. Это нетрудно. Куда ни плюньте, вы попадете в пустое место. В тексте то же самое. Только плевать не надо, книги библиотечные. Но это еще не все. С обратной стороны листа мы запишем другую таблицу. Здесь вы внесете полученные числа, обязательно в порядке возрастания, а напротив – соответствующую букву. Если вы все правильно сделаете, получится больше ста чисел. Это и будет кодовая таблица. Одна сторона для шифровки, другая для дешифровки. Сразу все рисуйте под копирку, в двух экземплярах. Десять минут на выполнение задачи. Кто готов, подходит ко мне и показывает результат. У кого есть вопросы, зовет меня, я подхожу и объясняю. Время пошло, товарищи командиры.

– У меня вопрос, товарищ лейтенант. Я не понял, что вы про ноль говорили. Его тоже кодировать?

– Нет, товарищ капитан. Только буквы. Цифры будем писать прописью.

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

– Итак, мы готовы начинать составлять шифрованные сообщения. Мы используем так называемый код подстановки, когда буква сообщения заменяется другими символами. Вы должны знать, что это самый примитивный из возможных принципов кодирования и в простом виде применять его опасно. Если вы используете самую простую кодовую таблицу, один символ – одно и то же число, такую шифровку взломает любой студент, изучивший основные принципы дешифровки, и сделает это очень быстро. В нашем варианте, когда мы используем вместо одной буквы целый набор чисел, так, чтобы одно и то же число встречалось в шифровке редко, это уже значительно трудней. Но для того чтобы дешифровка стала невозможной, в обозримый промежуток времени мы должны сделать еще одно усложнение, а именно – запутать структуру шифровки. Ведь если человек, разгадывающий шифр, поймет, что букве соответствует четырехзначное число, это существенно упростит его работу. Структуру путают различными способами.

Самый простой – добавление перед каждым словом кодированного сообщения заранее оговоренного числа незначащих цифр, которые при дешифровке игнорируются. Тут каждый вправе выдумать свой собственный принцип. Например: перед парным словом вы ставите три произвольных цифры, перед непарным две. Либо перед первым словом – три цифры, перед вторым – две, перед третьим – одну и снова – три, две, одну. Незначащие цифры ставите после кода пробела. Поэтому пробелу нужно всегда ставить в соответствие максимальное количество чисел, так, чтобы они, по возможности, не повторялись. Запутав таким образом структуру сообщения, вы значительно затрудните расшифровку, сделав ее невозможной в обозримый период времени. А зачем мы создали столько таблиц, надеюсь, каждому ясно без пояснений. Каждое последующее сообщение кодируете новой таблицей. Если таблицы закончились, используете, начиная с первой, по второму кругу, одновременно готовя новые. Какие ко мне будут вопросы?

– А откуда тот, кому я пишу радиограмму, будет знать, какой таблицей закодировано сообщение?

– Еще раз повторяю. Есть два экземпляра таблиц, одна у вас, другая у вышестоящего связиста. Каждый новый сеанс в вашем радиообмене кодируется следующей по порядку таблицей. И вы, и ваш собеседник самостоятельно определяете номер нужной таблицы. Можете записывать номер использованной таблицы в специальный блокнот, который хранится вместе с другими секретными материалами в вашем сейфе. Еще вопросы?

– С этими цифрами, которые нужно вставлять, не до конца понятно. Кто и куда их вставляет?

Народ весело рассмеялся.

– Вопрос, конечно, непростой. В других случаях сама природа нам помогает разобраться с тем, кто и куда вставляет, и то бывают проблемы. Вроде и понятно, что вставлять и куда вставлять, а не получается. С шифровками все значительно сложнее, тут думать надо. Но ничего, товарищ капитан, сейчас мы с вами попрактикуемся, и вы увидите – в этом случае вставлять ненамного труднее, чем в других, а может, даже легче и приятней. – Подождав, пока слушатели обсудят эту животрепещущую тему, она продолжила: – Давайте создадим трехуровневую систему, вы четверо будете изображать связистов уровня штаба полка, вы двое – штаба дивизии, а вы, товарищ майор, остаетесь на своей должности – будете отвечать за связь штаба армии. Копии своих таблиц передаете вышестоящему командиру связи. С каждым из вас он обязан проводить радиообмен сообщениями только при помощи ваших таблиц. Таким образом достигается основной принцип шифрованной радиосвязи – любую шифровку способны прочитать лишь те двое, кто передает и принимает сообщение. Никто другой, ни свои, ни чужие, этого сделать не могут. Вы, товарищ майор, свои кодовые таблицы передаете мне, я буду командиром связи Генштаба. Я вам сейчас составлю шифровку. Ваша задача – ее расшифровать, на основе полученных распоряжений поставить задачи дивизиям и передать им соответствующие шифровки. Ну а вы, товарищи связисты дивизии, расшифровав сообщение штаба армии, поставите задачи перед своими полками.