Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:
25–26 июля 1939 г., за пять недель до начала Второй мировой войны, разработки польских учёных и копия шифровальной машины «Энигма» были переданы делегации французских и британских учёных. Встреча состоялась в Бюро шифров в Варшаве [402] . Британцы считали, что польские учёные встретились с большими трудностями дешифровки из-за увеличения числа роторов машины и именно поэтому обратились за помощью к английским коллегам, но Реевский позже отрицал это, заявив, что разработки были переданы в знак дружбы и солидарности между странами-союзниками в борьбе против нацистской Германии.
402
Rejewski M. (1981). How Polish Mathematicians Deciphered the Enigma / IEEE Annals of the History of Computing. Vol. 3. Iss. 3 // http://chc60.fgcu.edu/images/articles/rejewski.pdf
Впрочем, сам Реевский, по всей видимости, не участвовал в процессе принятия решения.
403
Stengers J. (2004). Enigma, the French, the Poles and the British 1931–1940. Revue belge de Philologie et d'Histoire, 82-1-2 // https://www.persee.fr/doc/rbph_0035-0818_2004_num_82_1_4836
Дальнейшая судьба польских криптографов напоминает вычурный шпионский роман, сюжет которого достоин отдельной книги. Мы же мысленно перенесёмся в Блетчли-парк, также известный как Station X, — особняк второй половины XIX в., расположенный около станции Блетчли в городе Милтон-Кинс в графстве Бакингемшир в центре Англии. В период Второй мировой войны в Блетчли-парке располагалось главное шифровальное подразделение Великобритании — Правительственная школа кодов и шифров (Government Code and Cypher School, GC&CS). Здесь и была спланирована операция «Ультра», нацеленная на дешифровку сообщений «Энигмы» [404] .
404
Hinsley F. H. (1996). The Influence of ULTRA in the Second World War // https://web.archive.org/web/20120417052645/http://www.cl.cam.ac.uk/research/security/Historical/hinsley.html
Изучив реплику «Энигмы», Тьюринг и его коллега Гордон Уэлчман, работавшие в Блетчли-парке, заметили, что машина никогда не будет кодировать букву как саму себя. Опираясь на предположения о часто повторяющихся словах и словосочетаниях, которые немцы должны были бы использовать в сообщениях, Тьюринг разработал переборную схему, позволяющую ограничить количество рассматриваемых комбинаций роторов «Энигмы». Однако даже с учётом этого проверка всех вариантов была слишком медленной. Очевидным ответом было устройство, подобное «Бомбе» Реевского. Оригинальная «Бомба» основывалась на повторяющемся дважды зашифрованном ключе в начале каждого сообщения, однако Тьюринг опасался, что немцы скоро обнаружат эту уязвимость и изменят процедуру шифрования. Кроме того, он хотел увеличить скорость перебора. «Бомбы» Реевского могли взломать за пару часов код трёхроторной версии «Энигмы», но теперь роторов было пять, и перебор занимал почти целый день. Хотя у Тьюринга и был некоторый опыт в создании электрического умножителя, он всё же был математиком, а не инженером. К счастью, недалеко от Летчуэрта находилась Британская компания по производству табуляторов (British Tabulating Machine Company, BTM), и её главный инженер Гарольд Кин смог превратить эскизы Тьюринга в работающую машину.
10 марта 1940 г., незадолго до того, как немецкая армия вошла в Голландию, Бельгию и Люксембург, произошло то, чего опасался Тьюринг: немцы прекратили посылать удвоенный текст ключа в начале сообщения, поэтому польский метод взлома перестал работать. Первая «Бомба» Тьюринга, получившая название Victory, прибыла в Блетчли-парк спустя восемь дней. Её изготовление обошлось в 6300 фунтов стерлингов (примерно 100 000 современных фунтов стерлингов), что составляло примерно одну десятую стоимости бомбардировщика Lancaster. Victory была примерно в 300 000 раз быстрее машины Реевского, весила более тонны и включала в себя 36 «скремблеров», каждый из которых эмулировал машину Enigma, и 108 барабанов, выбирающих возможные значения ключей [405] .
405
Cawthorne N. (2014). Alan Turing: The Enigma Man. Arcturus Publishing // https://books.google.ru/books?id=6qmJBAAAQBAJ
Существует несколько забавных версий относительно выбора названия «Бомба». Если по-польски bomba означает «бомба», то слово bombe, выбранное в Блетчли, отличается от слова bomb (бомба) и намекает скорее на название популярного десерта bombe glacee, или просто bombe, — мороженого, имеющего округлую форму и напоминающего внешне пушечное ядро.
C 1930
406
Budiansky S. (2000). Battle of Wits: The Complete Story of Codebreaking in World War II. Free Press // https://books.google.ru/books?id=uccLlgJDk4gC
В течение 1940 г. на двух машинах выполнялся взлом 178 сообщений, почти все из них были успешно дешифрованы. Из-за угрозы потери машин в случае бомбардировки было создано несколько дополнительных станций дешифровки. В июне — августе 1941 г. в Блетчли-парке было от четырёх до шести «Бомб», а после завершения работ по созданию станции в Уэйвендоне (Wavendon) суммарное количество работающих машин в Блетчли, Адстоке (Adstock) и Уэйвендоне составляло уже не менее 24 штук. Это количество возросло примерно вдвое после запуска станции в Гайхорсте (Gayhurst), и ожидалось, что общее количество «Бомб» вскоре увеличится примерно до 70, а их обслуживанием будут заниматься около 700 «ренов» [407] , то есть сотрудниц Женской вспомогательной службы ВМС (Women’s Royal Naval Service, WRNS; слово wrens в английском языке означает птичек семейства крапивниковых, так что из-за созвучия этому слову «птичье» прозвище накрепко приклеилось к названию службы, женщины из которой работали офисными служащими, кладовщицами, связистками, шифровальщицами, операторами радиолокационных станций, электриками, авиамеханиками и т. д.).
407
Toms S. (2005). Enigma and the Eastcote connection // https://web.archive.org/web/20081204105055/http://www.ruislip.co.uk/eastcotemod/enigma.htm
В 1942 г. с появлением военно-морской версии «Энигмы» с четырьмя роторами стало ясно, что дешифровщикам потребуется куда более 70 «Бомб», в итоге к маю 1945 г. было построено 155 трёхроторных и 180 четырёхроторных машин [408] .
Однако «Энигма» не была единственной шифровальной машиной, которую использовали немцы. В конце 1930-х гг. верховное командование немецкой армии обратилось к компании C. Lorenz AG с просьбой изготовить для них аппарат шифрования с высокой степенью защиты, совмещённый с телетайпом, позволяющий передавать сообщения по радио в условиях полной секретности. С. Lorenz AG разработала шифровальные машины SZ40 и SZ42, основанные на аддитивном методе шифрования сообщений телетайпа. С 1940 г. «Энигма» обычно применялась полевыми подразделениями, а машина Лоренца использовалась для связи на самом высоком уровне (в том числе для передачи приказов Гитлера). В основе работы SZ40 и SZ42 лежала схема, запатентованная в 1918 г. американским инженером Гилбертом Вернамом, сотрудником Bell Laboratories. Идея Вернама заключалась в том, чтобы взять случайную ключевую последовательность символов и наложить её на шифруемое сообщение при помощи операции, сегодня известной под названием XOR, или «исключающее или». Наложение той же самой последовательности чисел на зашифрованное сообщение приводило к его расшифровке. Вернам предложил наносить символы ключевой последовательности на бумажную ленту при помощи перфораций, чтобы затем символ за символом использовать их синхронно с символами входного сообщения.
408
Alexander C. H. O'D. (c. 1945). Cryptographic History of Work on the German Naval Enigma / The National Archives, Kew, Reference HW 25/1 // http://www.ellsbury.com/gne/gne-000.htm
Основная трудность применения этого подхода заключалась в том, что в военное время нужно было обеспечить наличие одинаковых лент со случайными символами на каждом конце линии связи и добиться того, чтобы они были установлены в одну и ту же начальную позицию. Компания Lorenz решила, что с точки зрения удобства эксплуатации будет проще сконструировать машину для генерации последовательности символов ключей. Однако из-за технической сложности генерации истинно случайных последовательностей был использован генератор псевдослучайных чисел, то есть алгоритм, порождающий последовательность чисел, элементы которой почти независимы друг от друга и подчиняются заданному распределению. К сожалению немецкой армии, эти числа были в большей мере псевдо, чем случайными, что и сделало возможной атаку на используемый алгоритм шифрования. Удивительно, что британским специалистам удалось взломать код, несмотря на то что они так и не увидели вживую ни одного из экземпляров машин SZ до самого конца войны.