Великая Теорема Ферма
Шрифт:
Шифровальная машина «Энигма» состояла из клавиатуры, соединенной с шифровальным узлом. Шифровальный узел содержал три отдельных ротора. Положения роторов определяли, как шифруется каждая литера на клавиатуре. Раскрыть код «Энигма» было так трудно потому, что число внутренних состояний, в которых могла находиться машина, было необычайно велико. Во-первых, три ротора в машине можно было выбирать из пяти, заменять и переставлять, чтобы сбить с толку тех, кто попытается раскрыть код. Во-вторых, каждый ротор мог находиться в одном из двадцати шести. различных положений. Все это означало, что машина может находиться более чем в миллионе различных состояний. Кроме перестановок букв, производимых роторами, соединения на плате в тыльной стороне машины можно было менять вручную, что позволяло устанавливать машину более чем в 1,5·1020
Машины «Энигма» были взяты на вооружение германской армией, военно-морским флотом и военно-воздушными силами, а также использовались на железных дорогах и в других правительственных учреждениях. Подобно всем системам кодов того времени, «Энигма» имела слабое место: получатель должен был знать, как установлена машина отправителя. Для обеспечения безопасности установку «Энигмы» требовалось менять ежедневно. Один из способов, позволявших отправителю ежедневно менять код и сообщать его получателю, заключался в публикации установок машины на каждый день в секретной кодовой книге. Риск при такой системе состоял в том, что англичане могут захватить какую-нибудь немецкую подводную лодку и захватить кодовую книгу с ежедневными установками машины на следующий месяц. Альтернативный подход, который использовался на протяжении большей части войны, состоял в том, чтобы установка машины на текущий день сообщалась в преамбуле к сообщению и декодировалась с помощью кода на предыдущий день.
Когда разразилась вторая мировая война, штат Правительственной школы кодов и шифров в основном состоял из специалистов по древним языкам и лингвистов. Но вскоре британское министерство иностранных дел осознало, что специалисты по теории чисел имеют более высокие шансы подобрать ключ к немецким кодам, и тогда самые лучшие английские специалисты по теории чисел были собраны в новом здании Правительственной школы кодов и шифров в Бличли парке — викторианском здании в Бличли, в графстве Бакингхэмпшир. Тьюрингу пришлось оставить свои воображаемые машины с бесконечной лентой, разделенной на клетки, и бесконечным временем на обработку информации и заняться практической проблемой с конечными ресурсами и весьма сжатыми сроками.
Криптография представляет собой борьбу умов между составителем кода и тем, кто пытается этот код разгадать. Составитель кода видит свою задачу в том, чтобы каждое исходящее от отправителя сообщение было закодировано настолько надежно, чтобы раскодировать его было невозможно даже в том случае, если оно будет перехвачено противником. Однако существует верхний предел для количества возможных математических манипуляций, поскольку сообщения должны доходить до получателя быстро и эффективно. Сила германского кода «Энигма» заключалась в том, что кодируемое сообщение подвергалось кодировке на нескольких уровнях с очень высокой скоростью. Тот, кто стремился раскрыть, или «взломать», код, видел свою задачу, в том, чтобы взять перехваченное сообщение и разгадать код, причем скорость расшифровки была весьма существенна: германское сообщение, содержащее приказ потопить британский корабль, должно было быть декодировано до того, как корабль потонет.
Тьюринг возглавил группу математиков, в задачу которых входило воссоздать точную копию машины «Энигма». Все свои абстрактные идеи предвоенной поры Тьюринг воплотил в устройстве, которое теоретически могло методично, одну за другой, перебирать все возможные установки машины «Энигма» до тех пор, пока код не окажется раскрытым. Для проверки всех потенциально возможных состояний машины «Энигма» математики из Бличли парка использовали британские машины около двух метров в высоту и примерно столько же в ширину, работавшие на электромеханических реле. Непрестанное тиканье реле стало причиной, по которой эти машины получили свое прозвище — их стали называть бомбами. Несмотря на максимальное по тем временам быстродействие, «бомбы» не могли перебрать за разумное время все гигантское количество возможных вариантов установки «Энигма», поэтому группе Тьюринга предстояло найти способы, позволяющие существенно сократить число перестановок, по крохам собирая любую информацию, которую можно было извлечь из перехваченных сообщений.
Одно из существенных достижений группы из Бличли парка стало осознание того, что машина «Энигма» никогда не кодировала букву самой буквой, т. е. если отправитель набирал на клавиатуре литеру «R», то машина потенциально могла отправить любую другую букву (в зависимости от установки машины), кроме буквы «R». Это, на первый взгляд незначительное, обстоятельство позволило резко сократить время, необходимое для того, чтобы декодировать сообщение. Немцы нанесли ответный удар, ограничив длину предаваемых сообщений. Все сообщения неизбежно содержат в себе какие-то зацепки, позволяющие «взломщикам кодов» декодировать сообщения. Чем длиннее сообщение, тем больше зацепок оно содержит. Установив предельный объем для всех сообщений — не более 250 знаков, немцы надеялись компенсировать «нежелание» машины «Энигма» кодировать букву той же буквой.
Чтобы взломать германские коды, Тьюринг часто пытался отгадать в сообщениях ключевые слова. Если ему это удавалось, то декодирование остальной части сообщения многократно ускорялось. Например, если взломщики кода подозревали, что сообщение содержит сводку погоды (метеоданные часто передавались в кодированных сообщениях), то они могли предположить, что в сообщении содержатся такие слова, как «туман» или «скорость ветра». Если их догадка оправдывалась, то они быстро декодировали остальное сообщение и тем самым могли судить об установке «Энигмы» на день передачи сообщения. Тогда в этот день и другие, более ценные, сообщения декодировались без труда.
Если же слова о состоянии погоды не удавалось отгадать, то англичане пытались представить себя на месте немецких операторов, работавших с «Энигма», и отгадать какие-то другие ключевые слова. Оператор по рассеянности мог назвать получателя по имени или обладать какими-то известными взламывателю кода любимыми словечками. Если все попытки декодировать сообщения оказывались безуспешными, и германский радиообмен протекал бесконтрольно, Правительственная школа кодов и шифров прибегала, как рассказывают, даже к такой экстравагантной мере, как обращение к командованию Королевскими ВВС с просьбой произвести минирование какого-нибудь германского порта. Комендант порта немедленно посылал кодированное сообщение, которое англичане перехватывали. В подобных случаях взломщики кодов могли быть уверены, что в сообщении непременно содержатся такие слова, как «мины», «опасность для захода кораблей», «пеленгация мест падения мин». Декодировав такое послание, Тьюринг устанавливал установку «Энигма» на тот день, и дальнейший радиообмен немцев уже легко поддавался декодированию.
1 февраля 1942 года немцы установили дополнительный, четвертый, ротор на машине «Энигма», предназначенный для передачи особо секретной информации. Это было самое большое повышение уровня кодирования за время войны, но группа Тьюринга сумела парировать этот ход немцев, увеличив эффективность своих «бомб». Благодаря усилиям сотрудников Школы кодов и шифров, союзники знали о противнике больше, чем могли подозревать немцы. Эффективность операций германских подводных лодок сильно уменьшилась, и британцам удалось предупредить налеты германских ВВС. Взломщикам кодов из Бличли парка также удалось перехватить и декодировать сообщения, содержавшие точные координаты вспомогательных кораблей германского ВМФ, что позволило послать британские бомбардировщики и потопить эти корабли.
Союзникам приходилось принимать особые меры предосторожности для того, чтобы неожиданные атаки не выдали их осведомленности и чтобы немцы не догадались о том, что их сообщения могут быть декодированы. Если бы немцы заподозрили, что система «Энигма» поддается декодированию, то они могли бы повысить уровень кодирования, и англичане оказались бы на исходных позициях. Поэтому в ряде случаев Школа кодов и шифров информировала военных о планируемой атаке, но командование предпочитало не принимать особых контрмер. Ходили даже слухи, что Черчиллю было известно о готовящемся опустошительном налете на Ковентри, но он предпочел не принимать особых мер предосторожности, чтобы немцы ничего не заподозрили. Стюарт Милнер-Барри, работавший вместе с Тьюрингом, опровергает эти слухи и утверждает, что сообщение о готовящемся налете на Ковентри удалось декодировать, когда уже было поздно.