Между прочим, десятью годами ранее, французы подписали соглашение о военном сотрудничестве с Польшей. Поляки проявили горячий интерес ко всему, что связано с «Энигмой», поэтому в соответствии с этим соглашением десятилетней давности французы просто передали фотографии документов, полученных от Шмидта, своим союзникам, предоставив заниматься безнадежной задачей по взлому «Энигмы» польскому Бюро шифров. В Бюро быстро осознали, что эти документы являются всею лишь отправной точкой, но, в отличие от французов, их еще подгонял страх вторжения. Поляки посчитали, что должен существовать ускоренный способ поиска ключа к зашифрованному «Энигмой» сообщению, и что если они приложат достаточно усилий, изобретательности и ума, то смогут отыскать его.
В документах, полученных от Шмидта, наряду с расположением внутренней проводки в шифраторах, также подробно объяснялась структура шифровальных книг, используемых немцами. Ежемесячно операторы «Энигмы» получали новую шифровальную книгу, где указывалось, какой ключ должен применяться на каждый текущий день. К примеру, для первого дня месяца шифровальная книга могла задавать следующий ключ текущего дня:
Расположение шифраторов и их ориентация называются установками шифраторов. Чтобы использовать заданный ключ текущего дня, оператор «Энигмы» должен был установить свою «Энигму» следующим образом:
(1) Установка штепсельной коммутационной панели: Осуществить коммутацию букв А и L, соединив их проводом на штепсельной коммутационной панели, а затем проделать ту же самую процедуру для букв P и R, T и D, B и W, K и F, O и Y.
(2) Расположение шифраторов: Установить 2-ой шифратор в 1-ый паз шифровальной машины, 3-ий шифратор — во 2-ой паз, а 1-ый шифратор — в 3-ий паз.
(3) Ориентация шифраторов: У каждого шифратора на наружной части выгравированы буквы алфавита, с помощью которых оператор устанавливает этот шифратор в определенном положении. В нашем случае оператор должен вначале повернуть первый шифратор так, чтобы сверху оказалась буква O, затем второй шифратор, чтобы сверху оказалась буква C и, наконец, третий шифратор, установив его таким образом, чтобы сверху была буква W.
Один из способов зашифровывания сообщений состоит в том, что отправитель зашифровывает весь дневной поток информации в соответствии с ключом текущего дня. Это означает, что в течение всего дня перед началом зашифровывания каждого сообщения все операторы «Энигмы» должны будут устанавливать свои шифровальные машины по одному и тому же предписанному ключу текущего дня. Затем, всякий раз, как потребуется передать сообщение, его вначале вводят в машину с помощью клавиатуры, записывают результат зашифровывания и отдают радисту для отправки. На другом конце радист принимает радиограмму и передает ее оператору «Энигмы», а тот вводит ее в свою машину, которая к тому времени уже должна быть установлена в соответствии с заданным ключом текущего дня. В результате будет получено исходное сообщение.
Такой способ вполне безопасен, однако его стойкость снижается из-за многократного использования только одного ключа текущего дня для зашифровывания сотен сообщений, которые могут передаваться каждый день. Вообще-то, по правде говоря, если для зашифровывания огромного количества информации используется один-единственный ключ, то для криптоаналитика становится проще определить его. Большой объем идентичным образом зашифрованной информации дает криптоаналитику больше шансов отыскать этот ключ. Так, например, возвращаясь к простым шифрам, взломать одноалфавитный шифр с помощью частотного анализа гораздо легче, если имеется несколько страниц зашифрованного текста, а не лишь пара предложений.
Поэтому, в качестве дополнительной меры предосторожности, немцы сделали хитроумный ход: они использовали установки ключа текущего дня для передачи нового разового ключа для каждого сообщения. Для разовых ключей установки на штепсельной коммутационной панели и расположение шифраторов будут теми же, что и для ключа текущего дня; отличие состоит только в ориентации шифраторов. Поскольку новой ориентации шифраторов в шифровальной книге нет, отправитель должен сообщить о ней получателю. Вначале отправитель настраивает свою машину в соответствии с установленным ключом текущего дня, в котором указана и ориентация шифраторов, допустим, QSW. Затем для разового ключа он устанавливает новую, произвольно выбранную ориентацию шифраторов, скажем, PGH. Далее отправитель зашифровывает PGH в соответствии с ключом текущего дня. Разовый ключ вводится в «Энигму» дважды — для обеспечения двойного контроля получателем. К примеру, отправитель может зашифровать разовый ключ PGHPGH как KIVBJE. Обратите внимание, что два PGH зашифровываются по-разному (первое как KIV, а второе как BJE); это происходит из-за того, что шифраторы «Энигмы» поворачиваются после зашифровывания каждой буквы и меняют способ шифрования. После этого отправитель меняет ориентацию шифраторов на своей машине на PGH и зашифровывает основную часть сообщения с этим разовым ключом. У получателя машина первоначально установлена в соответствии с ключом текущего дня — QCW. В машину вводятся первые шесть букв пришедшего сообщения, KIVBJE, и в результате высвечивается PGHPGH. В результате получатель узнает, что он должен установить свои шифраторы в положение PGH, — это и есть разовый ключ, — и сможет после этого расшифровать основной текст сообщения.