Криптономикон, часть 2 - Стивенсон Нил Таун. Страница 108
КОДОВОЕ НАЗВАНИЕ ОСНОВНОГО ХРАНИЛИЩА ГОЛГОФА. КООРДИНАТЫ УСТЬЯ ОСНОВНОЙ ШТОЛЬНИ (и т.д.)
Подвал
В данный исторический момент (апрель 1945 года) людей, которые сидят и выполняют арифметические действия, принято называть вычислителями. Уотерхауз только что нашел целую комнату мертвых вычислителей. Любой вменяемый человек (кроме Уотерхауза и некоторых его старых друзей по Блетчли-парку вроде Алана Тьюринга) взглянул бы на этих вычислителей и заключил, что здесь была бухгалтерия и каждый раб самостоятельно щелкал на счетах. Уотерхауз не вправе отбросить это предположение, поскольку оно очевидно. Однако с самого начала у него возникла другая гипотеза, куда более интересная и необычная: что рабы коллективно действовали как шестеренки в большой вычислительной машине и каждый выполнял лишь небольшую долю общей работы — получал числа от другого вычислителя, производил над ними какие-то арифметические действия и передавал результат следующему.
Центральное бюро смогло установить личность нескольких мертвых рабов. Они оказались уроженцами Сайгона, Сингапура, Манилы и Явы, но имели то общее, что все были этническими китайцами и лавочниками по профессии. Очевидно, японцы собрали опытных счетоводов со всей зоны Совместного Процветания.
Лоуренс Уотерхауз отыскивает на развалинах Манилы собственного вычислителя, мистера Гу, чей маленький экспортно-импортный бизнес совсем захирел в войну (трудно торговать, когда каждый корабль, вышедший в море или подходящий к порту, топят американцы). Уотерхауз показывает мистеру Гу фотографии счётов, оставшихся после мертвых вычислителей. Мистер Гу объясняет, какие числа зашифрованы положением костяшек, и два дня обучает его основным навыкам работы на счётах. Главное, что выносит Уотерхауз из краткого курса, — не столько умение щелкать костяшками, сколько понимание, с какой удивительной скоростью и точностью вычислитель вроде мистера Гу способен производить арифметические действия.
Теперь Уотерхауз свел задачу к чисто математическим данным. Половина данных у него в голове, вторая половина разложена на столе — черновики, оставшиеся от вычислителей. Сопоставить числа на листках с числами на счётах и получить моментальный снимок вычислений, шедших в комнате на момент апокалипсиса, не так трудно, во всяком случае, по меркам военного времени, когда, например, доставить на отдаленный остров несколько тысяч людей, тонны снаряжения и ценою лишь в несколько десятков жизней отбить его у вооруженных до зубов, озверелых японцев-смертников считается легкой задачей.
Далее возможно (хотя и не совсем просто) перейти к обобщению и определить алгоритм, по которому получились числа на счетах. Уотерхауз узнает почерк отдельных вычислителей и устанавливает, как путешествовали листки. Рядом с некоторыми рабами лежали логарифмические таблицы — это важная подсказка. В итоге он может нарисовать схему, на которой вычислители отмечены цифрами, а множество пересекающихся стрелок показывают, как двигались листки. Теперь он может представить коллективные вычисления в целом и восстановить, что считали в бункере.
Поначалу это обрывочные намеки, потом что-то щелкает в голове у Лоуренса Уотерхауза и возникает подсознательное чувство, что решение близко. Он работает двадцать четыре часа кряду, получает множество подтверждений и ни одного опровержения гипотезы, что эти расчеты — вариант дзета-функции. Спит часов шесть, встает и работает еще тридцать. Теперь он уже точно определил, что это дзета-функция, вычислил некоторые ее коэффициенты и члены. Все почти готово. Он спит двенадцать часов, выходит погулять по Маниле, чтобы проветрить голову, возвращается и вкалывает еще полтора суток без перерыва. Это самое упоительное, когда большие куски головоломки, мучительно воссозданные по фрагментам, внезапно начинают складываться, и проступает общая картина.
Итоговое уравнение записывается в одну строчку. Один его вид пробуждает ностальгию: очень похожие они писали в Принстоне с Аланом и Руди.
Еще один перерыв на сон, и Уотерхауз готов к заключительному рывку.
Заключительный рывок таков: он идет в подвал некоего здания в Маниле. Теперь там штаб радиоразведки армии США. Уотерхауз — один из шести людей на планете, у которых есть допуск в это конкретное помещение. Оно занимает чуть больше четверти подвала в здании, где есть кабинеты побольше, а есть и такие, в которых сидят офицеры рангом повыше Уотерхауза. Однако у его комнаты есть несколько отличительных черт:
(1) В любой момент у входа торчат не меньше трех морских пехотинцев с помповыми ружьями и прочими вещицами, полезными для уничтожения противника в ближнем бою.
(2) В нее тянется множество силовых кабелей и есть собственный распределительный щит, отдельный от энергосистемы всего здания.
(3) Из комнаты доносятся невнятные, хотя и оглушительные квазимузыкальные звуки.
(4) О ней говорят «Подвал», хотя она занимает лишь часть подвала. На бумаге это слово пишется с большой буквы. Когда кто-то (например, подполковник Эрл Комсток) собирается его произнести, он тормозит на середине фразы, так что все предыдущие слова налетают друг на друга, как вагоны. Собственно, он выделяет слово «Подвал» двумя паузами по целой секунде каждая — перед и после. Во время первой паузы он одновременно поднимает брови и вытягивает губы, изменяя все пропорции лица — оно удлиняется по вертикали, — и косит по сторонам на случай, если какие-то японские лазутчики избегли недавнего апокалипсиса и прячутся на краю его периферического зрения. Потом он наконец произносит слово «Подвал», сильно растягивая «а». Засим следует вторая пауза, во время которой Комсток подается вперед и устремляет на собеседника трезвый, пытливый взгляд, словно спрашивая, оценил ли тот оказанное доверие. После чего продолжает говорить, что говорил.
Уотерхауз кивает морским пехотинцам, один из которых распахивает ему дверь. Забавный случай произошел в самом начале, когда в Подвале не было ничего, кроме нескольких деревянных ящиков и штабеля тридцатидвухфутовых канализационных труб, а электрики только тянули туда провода. Эрл Комсток решил проинспектировать Подвал. По небрежности какого-то писаря его имени не оказалось в списке. Мнения разделились. В итоге один из морпехов достал кольт сорок пятого калибра, снял с предохранителя, приставил дуло к правой ляжке Комстока и пустился в воспоминания об особо впечатляющих огнестрельных ранах бедренной кости, которые видел на таких островах, как Тарава, всячески стараясь объяснить, какой будет жизнь подполковника в ближней и дальней перспективе, если большой кусок свинца раздробит ему вышеупомянутую кость. Удивительное дело: Комсток пришел от этой истории в полный восторг и без устали ее пересказывал. Теперь, разумеется, его имя в списке.
В Подвале стоят перфораторы и перфосчитыватели «ЭТК», а также некие агрегаты без фирменных логотипов, поскольку они придуманы и практически собственноручно построены Лоуренсом Притчардом Уотерхаузом. Если соединить их в правильной последовательности, получается Цифровой Вычислитель. Как и орган, Цифровой Вычислитель не столько машина, сколько метамашина, которая превращается в другие машины, стоит изменить ее внутреннюю конфигурацию. Пока во всем мире это умеет делать только Лоуренс Притчард Уотерхауз, хотя он пытается научить тому же двух сотрудников «ЭТК» из команды Комстока. Сегодня он превращает Цифровой Вычислитель в машину для расчета дзета-функции, на которой, по его предположению, строятся шифры «Лазурь» и «Рыба-еж».
Функции требуется много входных данных. Одно из них — дата. «Лазурь» — система для генерации одноразовых шифрблокнотов на каждый день. По косвенными свидетельствам, найденным в комнате с мертвыми рабами, Уотерхауз установил, что на момент смерти они рассчитывали блокнот для шестого августа 1945 года, то есть на четыре месяца вперед. Уотерхауз записывает дату, как принято в Европе (день, потом месяц) — 06081945, отбрасывает ноль и получает 6081945 — чистое количество, число без всякой десятичной запятой или погрешностей округления, столь ненавистных математикам. Уотерхауз вводит его в качестве одного из входных параметров функции. Требуется еще несколько исходных чисел, которые автор криптосистемы (вероятно, Руди) мог выбрать по своему усмотрению. Последнюю неделю Уотерхауз пытался установить, в частности, какие именно числа Руди использовал. Он вводит предполагаемые параметры, для чего их надо просто перевести в двоичную форму и физически воплотить в нули и единицы на выстроенных в ряд стальных тумблерах: вниз — ноль, вверх — единица.