5348 1375 0210 с помощью модулярного суммирования.
Чтобы это можно было как-то использовать, законный получатель должен был знать ключ, чтобы вычесть его и получить «открытый текст». Таким образом, должна была существовать система, с помощью которой отправитель и получатель заранее согласовывали ключ.
Одним из способов сделать это стал принцип «одноразовости». Это была одна из немногих рациональных идей, рожденных в области криптографии в 1930-х годах, она же являлась одной из самых простых. Принцип требовал, чтобы ключ был точно в два приема, одна копия передавалась отправителю, вторая — получателю сообщения. Аргумент в пользу безопасности данной системы заключался в том, что она работала абсолютно случайным образом, как при перетасовке карт или бросании костей, и вражескому криптоаналитику было не за что зацепиться.
Предположим, что зашифрованный текст выглядит как «5673», тогда дешифровщик может подумать, что открытый текст будет «6743», а ключ — «9930», или открытый текст будет «8442», а ключ — «7231». Однако проверить эту догадку будет невозможно, также нет причин предпочесть одну догадку другой. Аргумент в пользу системы базировался на полной бессистемности выбора ключа, который мог в равной степени состоять из всех возможных цифр, в противном случае криптоаналитик имел бы причину предпочесть одну догадку другой. И в самом деле, поиск системы в абсолютном хаосе — это работа как для криптоаналитика, так и для ученого.
По британской системе были изготовлены шифровальные блокноты для одноразового использования. Помимо случайного выбора ключа, ни одна из станиц не использовалась дважды, и к блокнотам не имели доступа посторонние, поэтому система была защищена от случайных ошибок и безопасна. Однако она была построена на создании колоссального количества ключей, равного по объему максимуму того, что мог потребовать канал связи. Предположительно, выполнение этой неблагодарной задачи было возложено на женщин из Строительной секции (Construction Section) GC&CS, которую с началом войны эвакуировали не в Блетчли, а в Мэнсфилд Колледж в Оксфорде. Что касается использования системы, то и оно не доставляло большого удовольствия. Малькольм Маггеридж, который работал в секретной службе, считал ее «трудоемкой работой, в которой я всегда был слаб. Во-первых, нужно было вычитать из групп чисел в телеграмме соответствующие группы из так называемого одноразового шифровального блокнота; затем смотреть в книге шифров, что означают получившиеся группы. Любая ошибка в вычитании или, что еще хуже, в вычтенных группах, и все можно выбрасывать. Я пахал до потери пульса, ужасно путался, и если надо было начитать все сначала….»
В качестве альтернативы можно было использовать систему шифрования, основанную на идее «замещения». В простейшем виде она применялась для головоломок-криптограмм, которые решали любители «Принстонской охоты за сокровищами». По этой системе одна буква алфавита заменялась другой по заранее определенному принципу, например:
так что слово TURING превращается в VNQOPA. Такой простой или «моноалфавитный» шифр можно было легко разгадать, проверив частоту использования букв, общих слов и т. Фактически проблема при решении таких головоломок возникала лишь тогда, когда составитель включал в нее необычные слова вроде XERXES (Ксеркс), чтобы затруднить разгадку. Такая система была слишком примитивной для использования в военных целях. Однако в 1939 г. использовались системы, которые были немногим сложнее. Сложность их заключалась в применении нескольких алфавитных замещений, используемых по принципу ротации или в соответствии с другими несложными схемами. Немногие существовавшие инструкции и учебники по криптологии были, в основном, посвящены таким «полиалфавитным» шифрам.
Немного более сложной была система, в которой шло замещение не отдельных букв, а 676 возможных пар букв. Одна британская шифровальная система тех лет была основана на этом принципе. Она сочетала использование этого принципа и книги шифров. Система использовалась британским Торговым флотом.
Сначала шифровальщик должен был закодировать сообщение кодом торгового флота, например:
Следующим шагом было дополнение до четного числа строк, поэтому шифровальщик добавлял слово, не несущее никакого смысла, например,
После этого сообщение нужно было зашифровать. Шифровальщик брал первую вертикальную пару букв, т. е. VC, и искал ее соответствие в таблице буквенных пар. В таблице значилась другая буквенная пара, например, ХХ. Подобным образом шифровальщик заменял все остальные пары букв сообщения.
Добавить здесь особо нечего, за исключением того, что, как и в системе шифрования «с суммированием», процесс был бесполезен в случае, если законный получатель не знал, какая таблица замещения используется. Если, скажем, предварить передачу информацией «Таблица номер 8», то это может позволить криптоаналитику противника собрать и систематизировать сообщения, зашифрованные с использованием той же самой таблицы, и попробовать взломать шифр. Поэтому здесь также использовались некоторые способы сокрытия информации. С таблицами печатался список последовательностей из восьми букв, например, «B M T V K Z M D». Шифровальщик выбирал одну из этих последовательностей и добавлял ее к началу сообщения. Получатель, имевший такой же список, мог видеть, какая таблица используется.
Этот простой пример показывает самый общий принцип. В практической криптографии (что отличает ее от составления отдельных головоломок) часть передаваемого сообщения обычно содержит не сам текст, а инструкции по дешифровке. Такие элементы передачи, которые скрыты в ней, называются индикаторами. В системе с одноразовыми шифровальными блокнотами могут применяться индикаторы, указывающие, какую страницу блокнота следует использовать. Фактически, если все «не разжевано» в полном объеме заранее, детально, если существует малейшая вероятность двусмысленности или ошибки, что в сообщение должен быть какой-нибудь индикатор.
Это, бесспорно, пришло на ум Алану, который, по меньшей мере, с 1936 года размышлял о «самом общем виде кода или шифра». Такая смесь инструкций и данных внутри одной передачи напоминала о его «универсальной машине», которая сначала расшифровывает «номер описания» в инструкцию, а затем применяет эту инструкцию к содержанию ленты-накопителя. На самом деле, любая шифровальная система может рассматриваться как «сложный механический процесс» или машина Тьюринга, используя не просто правила сложения и замещения, но и правила того, как найти, применить и передать сам метод шифрования. Хорошая криптография базируется на создании целого свода правил, а не того или иного сообщения. И серьезный криптоанализ предполагает работу по их раскрытию, воссозданию всего механического процесса, проделанного шифровальщиками, с помощью анализа всей массы сигналов.
Возможно, шифровальная система торгового флота и не являлась последним словом с точки зрения сложности, но хорошо функционировала на обычных суда и находилась почти на пределе возможностей ручного метода. Кто угодно мог мечтать о создании более безопасной системы, но если процедура шифрования становилась слишком длинной и сложной, это приводило только к дополнительным задержкам и ошибкам. Однако если использовались шифровальные машины, которые перенимали часть «механической работы» шифровальщика, то ситуация начинала выглядеть совсем по-другому.
В этом отношении Британия и Германия вели симметричную войну, используя очень похожие машины. Фактически каждая немецкая официальная радиопередача была зашифрована с помощью машины «Энигма». Британцы использовали машину «Тайпекс», правда, не настолько широко. Она применялась в сухопутных войсках и в большей части королевских ВВС. Министерство иностранных дел и Адмиралтейство сохранили собственные ручные шифровальные системы, основанные на книгах. «Энигма» и «Тайпекс» в равной степени позволили механизировать базовые операции замещения и суммирования таким образом, что появилась возможность начать практическое применение более сложных систем. Они не делали ничего сверх того, что можно было делать с помощью таблиц в книгах шифров, но дали возможность выполнять эту работу быстрее и точнее.
В существовании таких машин не было никакого секрета. О них знали все — по меньшей мере все, кто получил в качестве школьного подарка книгу Роуза Болла «Математические развлечения и опыты» (Mathematical Recreations and Essays) издания 1938 г. В исправленной главе, написанной криптоаналитиком вооруженных сил США Абрахамом Синковым, говорилось о старых металлических решетках, шифрах Плейфера и тому подобных вещах, а также упоминалось, что «относительно недавно были проведены серьезные исследования в области изобретения машин для автоматической шифровки и расшифровки сообщений. Большая их часть использует периодические полиалфавитные системы».
«Периодический» полиалфавитный шифр использует некую последовательность алфавитных замещений и затем повторяет ее.
«Новейшие машины приводятся в действие электричеством и во многих случаях период представляет собой огромное число… Эти машинные системы намного более быстры и точны, чем ручные методы. Они могут даже объединяться с печатными и передающими устройствами таким образом, что при шифровке сохраняется запись зашифрованного сообщения и идет его передача; при дешифровке секретное сообщение принимается и переводится, все автоматически. Что касается существующих криптоаналитических методов, то шифровальные системы, полученные из некоторых из этих машин, очень близки к практической неразрешимости».
В базовой машине «Энигма» также не было никаких секретов. Она была представлена на конгрессе Международного почтового союза в 1923 г., вскоре после изобретения. Ее покупали и использовали банки. В 1935 г. британцы создали «Тайпекс», внеся некоторые изменения в конструкцию «Энигмы». Немецкие криптологи, в свою очередь, несколькими годами ранее модифицировали ее несколько другим способом, получив машину, которая, сохранив название «Энигма», оказалась намного более эффективной по сравнению с коммерческим аналогом.