Шифр Рамзая
Шифр Рамзая
Рихарду Зорге в истории нашей Родины суждено было занять особое место. Волею судьбы и благодаря своим исключительным человеческим качествам он поднялся на самую вершину Олимпа, под названием Советская разведка. Десятки книг, сотни статей, документальные и художественные фильмы, улицы, названные в честь великого разведчика. Но, собирая материалы о нём, я, за редким исключением, не мог обнаружить в отечественной литературе никаких правдивых материалов о шифре его разведгруппы. Как, впрочем, и о шифрах других легендарных его товарищей – Леопольда Треппера, Шандора Радо, Рудольфа Абеля. А, между тем, история их шифров – одна из захватывающих страниц криптографии ХХ века. «Триумфом советской разведки» назвал её агентурные шифры известный американский историк Дэвид Кан. Давайте же перелистаем доступные ныне страницы истории, заглянем в святая святых наших выдающихся разведчиков. Именно советские шифры, разработанные, несомненно, замечательными специалистами своего дела, на десятилетия определили вектор развития мировой криптографии в области так называемых «ручных шифров». И этот факт со всей очевидностью вытекает из содержания моих коротких очерков.
Шифр ИНО ОГПУ. 1926 год.
Идея подобных шифров давно известна, но была доведена советскими шифроаналитиками до совершенства. Первой его частью являлся так называемый квадратный (шахматный) шифр, наложенный затем на иные способы тайнописи. Появление таких двойных шифров зарубежные исследователи относят к российским революционерам, называя их «шифром нигилистов». Но вряд ли это корректно. Ибо сами революционеры в свою очередь воспользовались криптографическими идеями, возникшими задолго до них. Так шахматный шифр берет своё начало со знаменитого «полибианского квадрата», а вторая составляющая шифра носила среди российских подпольщиков название «гамбеттовского ключа» в честь известного премьер-министра Франции XIX века Л. Гамбетты.
Наиболее близко идея будущего знаменитого шифра советских разведчиков изложена в исследовании революционера П. Розенталя «Шифрованное письмо», изданном ещё в 1904 году. Но говорить, что эта работа дала толчок распространению аналогичных шифросистем среди всего российского подполья не приходится. Вплоть до самого Октябрьского переворота 1917 года шифры революционеров оставались довольно простыми. Впрочем, и долгое время после революции системы тайнописи советских разведчиков были такими же несложными и только к середине 30-х годов (после ряда их громких провалов) они стали приобретать свой законченный вид.
И шифр Рихарда Зорге (руководителя японской резидентуры ГРУ «Рамзай») о котором здесь пойдёт речь, нужно рассматривать как типовой образец действующих шифросистем всех советских спецслужб, а не приписывать его изобретение несправедливо самому Зорге или искать в нём некую уникальность. Свои телеграммы в Москву Зорге для конспирации составлял преимущественно на английском языке. Поэтому в качестве ключа для построения квадратного шифра было выбрано слово «SUBWAY».
Ключ выписывался в верхней строке квадратной таблички. А в оставшиеся клетки по порядку проставлялись буквы английского алфавита, не вошедшие в слово SUBWAY. Таким образом, мы получим следующую сетку:
S U B W A Y c d E f g h I j k L m N O p q R T v x z . /
В конце алфавита в таблице добавлено два знака. Это точка (.) и знак индикатора (/) - для обозначения разделителя слов или перехода на цифровой текст. Но об этом, подробнее, ниже.
Однако таблица в подобном виде использовалась только для придания вошедшим в нее символам новых цифровых обозначений.
Известно, что наиболее часто встречаемые в английской речи восемь букв можно представить в виде анаграммы ASINTOER (фраза "a sin to err" («грех в заблуждении») без последней буквы). Её то и использовал Зорге в качестве второго шага построения своего шифра. Для этого он нумеровал входящие в анаграмму буквы в своей табличке по порядку сверху вниз и получал новую таблицу:
S=0 U B W A=5 Y c d E=3 f g h I =1 j k L m N=7 O=2 p q R=4 T=6 v x z . /
Конечной целью разведчиков являлось составление следующего квадратного шифра:
0 1 2 3 4 5 6 7 8 9 - s i o e r a t n - - 8 c x u d j p z b k q 9 . w f L / g m y h v
Понять систему его построения нетрудно. В верхней строке мы видим наиболее встречаемые в английском языке буквы, которым даны цифровые обозначения от 0 до 7. В две оставшиеся строки выписаны по порядку остальные буквы из таблицы «SUBWAY» (то же сверху вниз). Они получают обозначения в виде двоичных чисел от 80 до 99. Как видно, в верхней строке конечные клетки под номерами 8 и 9 пустые. Эти цифры становятся номерами строк в ключевой таблице. Таким образом, здесь мы имеем воплощение идеи так называемого пропорционального шифра, позволяющее резко уменьшить количество входящих в шифрограмму знаков. В зависимости от размера текста это сокращение доходило до 30%. А это было очень важно для облегчения самого процесса шифровки, затруднения возможной дешифровки противником и уменьшения времени передачи радиограмм. Отделение же в тексте однозначных знаков от двузначных (конечно, при знании кодовой таблицы) не представляет никаких трудностей. Это была великолепная идея неизвестного нам советского криптолога, нашедшая затем в мировой криптографии широкое распространение.
Предположим, нужно зашифровать следующую телеграмму на немецком языке: «DAL. DER SOWJETISCHE FERNE OSTEN KANN ALS SICHER VOR EINEM ANGRIFF JAPANS ERACHTET WERDEN. RAMSAY» (DAL. Советский Дальний Восток может не опасаться нападения Японии. Рамзай.) Каждая радиограмма разведчиков начиналась их «обратным адресом»: DAL. Это были начальные буквы географического названия Дальний Восток. Заменяя буквы, знаки препинания и добавляя разделитель согласно квадратного шифра Зорге, получим:
DAL .DE R/SO WJE TISC HE/ FERN 83593 90833 49402 91843 61080 98394 92347 E/OS TEN/ KANN /AL S/SI CHE R/V 39420 63794 88577 94593 09401 80983 49499 OR/E INEM /ANG RIF F/J APA NS/E 24943 17396 94579 54192 92948 45855 70943 RACH TET/ WER DEN. RAM SAY . 45809 86369 49134 83379 04596 05979 0
Имея в виду, что шифротекст разведчики разбивали на 5-тизначные группы, последние цифры криптограммы или дополняли до полной «пятёрки» нулями, или просто удаляли.
Рихард Зорге
Здесь мы подошли к главному секрету Рамзая. Первоначальная шифровка текста далее перекодировалась методом наложения на него бесконечной одноразовой цифровой гаммы по модулю 10. Способ получения её мог быть абсолютно разным: начиная от использования так называемых одноразовых шифровальных блокнотов до преобразования букв определенного книжного текста в цифры. И тот, и другой способ имели в разведке самое широкое применение и мы это еще увидим. Но для Зорге задачу значительно упростили. В качестве шифровальной книги был выбран «Немецкий статистический ежегодник за 1935 год», состоящий из сотен числовых таблиц, из которых наугад и выбиралась требуемые гаммы.
Предполагалось, что наличие у разведчиков в Японии подобного справочника никак не могло навести на подозрения. Ведь Р. Зорге был известным немецким журналистом, а его главный помощник и радист М. Клаузен – бизнесменом. Конечно, цифровые последовательности, получаемые с помощью этих таблиц, не были достаточно равномерными. В них неизбежно преобладали некоторые цифры, что вело к их повторению. Тем не менее такие гаммы имели необходимое разнообразие, и никогда не были успешно преодолены вражескими криптоаналитиками.
Первая половина ежегодника на белой бумаге содержала статистические данные о Германии. Эта часть книги использовалась в качестве основы для кодирования шифрограмм непосредственно самой резидентурой Зорге. Во второй части справочника, на листах зеленого цвета, приводились международные статистические обзоры: ею уже пользовался московский Центр для шифровки ответных радиограмм. Это разделение делалось для предотвращения возможного наложения одинаковых гамм при шифровании текстов в Токио и Москве, что прямо могло привести к дешифровке радиограмм противником. Очевидно, что и сам Зорге и его помощник должны были делать в тексте своей кодовой книги какие-то пометки для недопущения всё того же повтора ключа. При аресте в 1941 году в домах Р. Зорге и М. Клаузена японской полицией были обнаружены совершенно одинаковые справочники с подозрительными отметками. Что сразу навело контрразведку на ключевую книгу пойманных шпионов.
Итак, цифры гаммы поочередно выбирались из справочника и выписывались под цифрами шифротекста, затем шло по-значковое сложение цифр клера и ключа по модулю 10. То есть, при сложении цифр во внимание принимались только единицы суммы, а десятки отбрасывались.
Клер: 83593 90833 49402 91843 61080 98394
Гамма:35635 51303 24932 10010 78191 12106
Шифр: 18128 41136 63334 01853 39171 00490
92347 39420 63794 88577 94593 09401 80983
21169 41861 76147 10589 66984 85249 50397
13406 70281 39831 98056 53477 84640 30270
49499 24943 17396 94579 54192 92948 45855
01471 03330 91929 56622 01806 15112 84112
40860 27273 08215 40191 55998 07050 29967
70943 45809 86369 49134 83379 04596 05979
13865 86318 09150 65213 43724 38399 27273
83708 21117 85419 04347 26093 32885 22142
"Statistischen Jahrbuchs fuer das deutsche Reich" Jahrgang 1935
(стр. 195, 7 строка таблицы, 5 колонка – подчёркнуты ключевые гаммы)
Место справочника, с которого начиналась выборка очередной гаммы, обозначалось пятизначной группой и добавлялось в текст шифрограммы. Первые три цифры являлись номером страницы, следующая цифра обозначала строку в таблице на этой странице, а последняя цифра – номер колонки на странице, где располагались нужные цифры (без учёта первого столбца).
Например, пусть разведчики начинали выборку гаммы с 193 страницы седьмой строки пятого столбца. Обозначалось это как 19375. Для еще большей надежности они никогда не брали первые цифры, а всегда начинали шифрование с последнего знака соответствующей колонки. Но в таком виде ключевая группа не оставлялась, а проходила определенную обработку. Для этого к ней опять же по модулю 10 прибавлялась четвертая «пятерка» с начала и третья «пятерка» с конца каждой новой шифровки. Получившуюся сумму помещали в начале криптограммы, как индикатор к расшифровке всего текста.
Здесь:
01853 – четвертая группа от начала криптограммы.
+ 26093 – третья группа от конца криптограммы.
+ 19375 – страница/строка/колонка.
———————