«Провал» Специальной службы
«Провал» Специальной службы
Справедливости ради отметим, что все же как минимум один «провал» Лаврентий Берия допустил. «Венона» – это имя закрепилось за операцией по сбору и расшифровке сообщений, которыми обменивались советские дипломатические учреждения в США с Москвой с 1943 по 1946 год. На самом деле американские криптоаналитики называли эту процедуру «советская дипломатическая головоломка», затем «Нефрит», потом «Невеста», какой-то период она именовалась «Снадобье» и только в 1961 году стала «Веноной».[335]
Об этом «шпионском деле» написано достаточно много, поэтому мы не будем останавливаться подробно на этом вопросе. А расскажем о том, что обычно не попадает на страницы статей и книг, – о системе организации шифровальной связи с заграничными учреждениями и почему американцы смогли ее «вскрыть».
Советская шифровальная служба, как и аналогичные подразделения других стран, не имела изъянов с позиции безопасности. При условии, что обслуживающий ее шифровальщик не попытается сбежать на Запад (вариант его вербовки иностранными спецслужбами был маловероятен, так как за ним постоянно присматривали сотрудники резидентуры); посторонний не проникнет в помещение, где хранятся шифроматериалы; будут соблюдены все требования шифровальной работы и т. п.
Постоянно выполнять все условия было крайне сложно. Отечественные разведчики иногда вербовали иностранных шифровальщиков и негласно проникали в различные помещения дипломатических миссий. В то же время из-за специфики военного времени сотрудники отечественной Специальной службы несколько раз грубо нарушили требования шифровальной работы, что привело к частичному «вскрытию» системы шифровальной связи, используемой советской внешней разведкой в США.
Основу используемой криптосистемы составлял алгоритм «одноразового блокнота». В классическом виде это последовательность групп пяти– или шестизначных случайных чисел, записанных на листах бумаги, которые скреплены между собой в блокнот. В советских блокнотах таких листков обычно было 35 или 50.
Технология шифрования происходит так. Отправитель преобразует «открытый» текст в набор цифр. Это можно сделать разными способами. Например, присвоить каждой букве ее порядковый номер алфавита, А можно использовать код, когда каждому символу или группе символов (слогу, слову и т. п.) присваивается определенное число.
После того как текст преобразован в последовательность цифр, отправитель складывает их с числами из блокнота. При этом он руководствуется правилом «китайской арифметики» – если сумма превысила 10, то стоящая слева единица отбрасывается. В результате получается зашифрованное сообщение. После этой процедуры лист «одноразового блокнота» уничтожается.
Получатель, используя копию уничтоженного листа «одноразового блокнота», складывает цифры из него с цифрами из сообщения, руководствуясь все тем же правилом «китайской арифметики». В результате он получает последовательность цифр, которую зашифровал отправитель. Затем получатель преобразует цифры в буквы, слоги или слова, и вот текст расшифрован.
Утверждать, что данный алгоритм абсолютно стоек, можно при выполнении двух условий:
– Последовательность цифр, которая содержатся в одноразовом блокноте, должна быть по-настоящему случайной, а не просто псевдослучайной. Говоря другими словами, криптоаналитик не должен выявить закономерности появления той или иной цифры.
– Пользователь не должен дважды использовать шифроблокнот. Дело в том, что криптоаналитик может отыскать участки сообщения, для зашифровки которых применялся один и тот же шифроблокнот.[336]
А теперь немого о том, как он был реализован на практике. Агент советской разведки или шифровальщик посольства с помощью специальной кодовой книги (в ней определенной фразе, слову или букве соответствовала случайная комбинация из пяти цифр) преобразовывал открытый текст в закодированное сообщение (набор пятизначных групп цифр). Это процедура не защищала от профессионального криптоаналитика (вскрыть такой шифр не составит большого труда), но преобразовала текст в набор цифр, что позволяло использовать одноразовый шифроблокнот и затрудняло работу криптоаналитку. Даже узнав «псевдоним» агента, контрразведка не всегда могла его идентифицировать.
Затем агент или шифровальщик к каждой группе цифр прибавлял пятизначное число (гамму), которое он брал из одноразового шифроблокнота («одноразовой тетради»), по правилу «китайской арифметики». Занятие трудоемкое и кропотливое. Поэтому на некоторых второстепенных линиях связи, например дипломатической, часть текста секретных телеграмм передавалась в открытом виде или использовался простейший шифр.
Обычно зашифровывались по кодовой книге различные имена, названия (организаций, городов, стран), часто встречающиеся слова и отдельные действия. Например, так выглядел текст сообщения, полученного из Москвы 25 ноября 1952 года по дипломатической почте:
«Просим вас в следующий раз сообщить всю информацию относительно № 42, который фигурирует в папках департамента в связи с № 43. А также ее № 44 в Спарте.
В зависимости от сообщенных вами подробностей о № 42 и ее № 44 в Спарте мы будем рассматривать вопрос о № 45 в Суданию одного из наших планировщиков № 46 новатора по визам № 44 к № 42».
Спарта, Судания, планировщик, новатор и т. п. – кодовые обозначения распространенных слов. Они были одинаковыми для всех резидентур. А вот места, обозначенные номерами, шифровались каждый раз по-новому.
После выполнения всех процедур текст телеграммы выглядел следующим образом:
«Просим вас в следующий раз сообщить всю известную вам информацию о Казановой, которая фигурирует в папках консульства в связи с ее завещаниями и родственниками в СССР.
В зависимости от полученных всех подробностей о Казановой и ее родственниках в СССР мы будем рассматривать вопрос о засылке в Австралию одного из наших кадровых работников в качестве секретного агента под видом родственника Казановой».[337]
Реализованная в СССР в середине прошлого века технология изготовления «одноразовых тетрадей» имела множество недостатков, которые существенно повлияли на уровень криптостойкости систем, используемых на линиях связи советской внешней разведки и МИДа.
Размножение шифроблокнотов производилось простым фотографированием, которое считалось наилучшим способом скопировать «гамму» для шифровальщика или агента. При этом исключалась любая ошибка. Бумага, из которой изготовлялись «одноразовые тетради», изготовлялась из нитроклетчатки – материала, который применялся для производства пленки на заре кинематографа. Этот материал очень легко воспламенялся, а с помощью марганцовокислого калия процесс горения можно было превратить почти во взрыв, который быстро и полностью уничтожал шифроблокнот, не оставляя даже скрытого изображения на пепле.
Интересно, что оригиналы одноразовых шифроблокнотов готовились не с помощью высококачественных и производительных печатных механизмов, а на простой пишущей машинке. Это видно из-за наличия в них подтирок и повторных ударов, чего не может быть при полиграфическом способе изготовления.
При этом участие машинистки не ограничивалось просто воспроизведением набора пятизначных цифр. Ей их приходилось самой генерировать. К такому выводу можно прийти при статистическом анализе цифр, содержащихся в шифроблокноте. В одной из таких «одноразовых тетрадей», например, количество групп, в которых цифры от 1 до 5 чередуются с группами цифр от 6 до 0, было в семь раз больше по сравнению со случайным распределением. Это наводит на предположение, что машинистка поочередно работала левой рукой (печатая цифры от 1 до 5) и правой (печатая цифры от 6 до 0). Кроме того, вместо половинчатого количества групп, начинающихся с цифр от 1 до 5, таких групп наблюдается ?. Это, вероятно, произошло из-за того, что пробел машинистка делала правой рукой, а новую группу печатала левой. Удвоений и утроений наблюдается меньше, чем этого следовало бы ожидать согласно случайному распределению. Возможно, машинистки, которым было приказано печатать цифры наугад, понимали, что повторы неизбежны, но в целях конспирации сводили их число к минимуму.[338] Мы уже говорили выше о том, к чему приводит генерация псевдослучайной последовательности.
Хотя предпринимались попытки механизировать этот процесс и избежать влияния «человеческого фактора» при генерировании псевдослучайной последовательности. В частности, пробовали использовать устройство, основанное на принципе лототрона – в барабане вращалось множество шаров с цифрами, которые периодически выкатывались в желоб. Понятно, что производительность у такого устройства была крайне низка. Также использовали некое электроламповое устройство, которое генерировало электрические импульсы. А их затем преобразовывали в последовательность случайных чисел.[339]
Несмотря на все усилия сотрудников 10-го отделения 5-го спецотдела НКВД СССР, решить проблему изготовления массового количество «одноразовых блокнотов» не удалось. Если до начала Великой Отечественной войны они как-то справлялись с возложенной на них задачей «составления и издания блокнотов для НКО, НКВМФ, НКВД, НКИД, НКВТ»,[340] то после начала боевых действий объем шифропереписки возрос как минимум в два раза.
Сейчас мы уже не узнаем, кто именно в начале 1942 года принял решение о вторичном использовании отдельных страниц «одноразовых блокнотов». Да и знать имя этого «рационализатора» не обязательно. В отдельных публикациях зарубежных историков можно прочесть о том, что его или их расстреляли за это. Важно другое: в 1942 году как минимум 70 тысяч страниц из «одноразовых блокнотов» Лубянка использовала два раза.[341] На самом деле их было значительно больше.
Если бы все ограничилось бы только этим фактом, то последствия для советской системы шифрования были бы не столь катастрофичными. Нужно вспомнить и о других важных с позиции криптографии событиях периода Великой Отечественной войны.
Служба разведки каналов связи (СРКС) армии США предприняла первые попытки вскрыть советские криптографические системы, которые использовались на линиях связи между Америкой и Советской Россией, еще в 1939 году. Через три года специалисты СРКС установили, что СССР использует как минимум пять систем. Одна – для переписки по дипломатическим вопросам, вторая – для нужд внешней торговли и поставок в рамках программы «ленд-лиз», а остальные три – для нужд разведок: НКВД, ГРУ и Коминтерна.[342]
Справедливости ради стоит отметить определенную заслугу финских и японских криптоаналитиков, которые сумели уяснить характеристики советских шифросистем. Например, финнам удалось научиться сортировать советские шифровки согласно типам используемых ими шифровальных систем. Своими достижениями в этой сфере Хельсинки поделился с Токио. Американцы смогли дешифровать большинство сообщений этой переписки.[343]
Этим «помощь» Финляндии не ограничилась. В распоряжение американцев, по одной версии в ноябре 1944 года, а по другой – в мае 1945 года, попали полторы тысячи полуобгоревших страниц советских «кодовых книг» (поясним, что речь идет об используемым внешней разведкой так называемом коде «Победа», дипломатическом коде – так называемом «коде 26», а также о кодах военной и военно-морской разведок). Трофей финнов содержал 999 5-цифровых кодовых групп, каждая из которых в шифротелеграммах заменяла отдельную букву, слово или фразу. Поясним, что финны захватили их 22 июня 1941 года в советском консульстве в городе Петсамо. Возможно, этот эпизод не попал бы на страницы данной книги, если бы… с января 1942 по октябрь 1943 года кодовая книга «Победа» не использовалась для связи «легальной» резидентуры США с Центром.
Хотя справедливости ради стоит отметить, что из-за сильных повреждений пламенем ее удалось использовать лишь частично. В результате американцам удалось прочесть гораздо меньше шифровок в период с января 1942 по октябрь 1943 года, чем за последующие три года. Поясним, что американскому криптоаналитику Мередиту Гарднеру удалось почти полностью реконструировать кодовую книгу (так называемый код 075-Б), который использовался с ноября 1943 года по февраль 1946 года.[344]
Данный текст является ознакомительным фрагментом.