Читаем Криптономикон полностью

На основе этих успешных расшифровок Рэнди за несколько дней взламывает «Аретузу». Другими словами, он находит А(х) = К, такую, что для любой даты х может получить К — гамму данного дня. Просто чтобы доказать это, он поручает компьютеру рассчитать К для каждого дня 1944 и 1954 годов и с их помощью раскодировать соответствующие перехваты «Аретузы» (не выводя их на экран), просчитывает частоты встречаемости и убеждается, что все работает.

Теперь он расшифровал все сообщения, но не может их прочесть, не раскрыв содержание генералу Ину. И здесь в игру вступает неявный канал передачи данных.

На жаргоне криптографов неявный канал передачи данных — это такой трюк, при котором секретная информация хитроумно прячется в потоке чего-то другого. Например, вы меняете младшие биты в графическом файле так, чтобы они несли текстовое сообщение. Рэнди почерпнул вдохновение из своей работы в тюрьме. Да, он расшифровывал «Аретузу», то есть возился с огромным количеством файлов и писал бесконечные программы. За последние недели он, вероятно, открыл, создал или отредактировал несколько тысяч файлов. Ни у одного из них нет сверху полоски с именем; ребята, которые его прослушивают, вероятно, давно запутались. Рэнди может открыть файл, напечатав название в окне и нажав «ввод» — так быстро, что вряд ли они успеют уследить. Это дает некоторую свободу маневра. В промежутках между другой работой Рэнди подготовил неявный канал передачи данных: написал несколько программ, не связанных с расшифровкой «Аретузы».

Идея пришла, когда он, перелистывая «Криптономикон», наткнулся на приложение с азбукой Морзе. Рэнди учил морзянку дважды: в бытность бойскаутом и несколько лет назад, когда получал лицензию на любительский радиопередатчик; сейчас освежить ее в памяти — пара пустяков. Такое же плевое дело — написать программку, превращающую клавишу «пробел» в телеграфный ключ, чтобы разговаривать с компьютером, выстукивая большим пальцем точки и тире. Это могло бы вызвать подозрения, если бы Рэнди половину времени не читал файлы в текстовом окне. В UNIX’е страницы перелистываются нажатием клавиши «пробел». Надо только делать это в определенном ритме, что наверняка ускользнет от внимания наблюдателей. Результаты идут в буфер, который не выводится на экран, и записываются в файл с бессмысленным именем. Скажем, притворяясь, будто читает большой раздел «Криптономикона», Рэнди может выстучать:

тире точка точка (пауза) точка тире (пауза) тире точка (пауза) тире точка точка (пауза) тире тире тире (пауза) тире точка тире

что должно читаться «БАНДОК». Он не хочет открывать результирующий файл на экране, но потом, между двумя загадочными командами, может набрать:

grep ндо (бессмысленное имя файла) > (другое бессмысленное имя файла)

и grep откроет первый файл, проверит, есть ли в нем сочетание «ндо» и занесет результат во второй файл, который Рэнди сможет посмотреть позже. Он может также ввести «grep бан» и «grep док», и в результате всех этих grep’ов убедиться, что и впрямь записал в файл слово «БАНДОК». Таким же образом он может ввести «КООРДИНАТЫ» в другой файл, «ШИРОТА» в третий и различные цифры в четвертый, пятый и так далее, а потом с помощью команды «cat» медленно объединять однословные файлы в более длинные. Терпение требуется такое же идиотское, как на то, чтобы вырыть подземный ход чайной ложкой или перепилить решетку пилочкой для ногтей.

Примерно через месяц пребывания в тюрьме он может вывести на экран окно со следующим сообщением:

КООРДИНАТЫ ОСНОВНЫХ ХРАНИЛИЩ

УЧАСТОК БАНДОК: СОРОК ДВА ГРАДУСА ТРИДЦАТЬ ДВЕ МИНУТЫ… СЕВЕРНОЙ ШИРОТЫ, НОЛЬ ДВАДЦАТЬ ГРАДУСОВ ПЯТЬДЕСЯТ ШЕСТЬ МИНУТ… ВОСТОЧНОЙ ДОЛГОТЫ

УЧАСТОК МАКАТИ: (и т. д.)

УЧАСТОК ЭЛЬДОРАДО: (и т. д.)

Все это — полная лажа, которую он только что сочинил. Координаты участка «Макати» на самом деле относятся к шикарному отелю, стоящему на перекрестке, где прежде была японская военная база. Цифры сохранились в компьютере с тех пор, как Рэнди ходил по Маниле с джи-пи-эской, собирая данные для эпифитовских антенн. Координаты участка «Эльдорадо» — местоположение золотых слитков, которые они с Дугом Шафто ездили смотреть, плюс небольшая погрешность. А для участка «Бандок» он вывел настоящие координаты Голгофы с некоторой случайной погрешностью, благодаря которой генерал Ин выкопает глубокую яму примерно в двадцати километрах от нужного места.

Перейти на страницу:

Все книги серии Енох Роот

Криптономикон
Криптономикон

В период Второй мировой войны молодой математический гений Лоуренс Уотерхаус участвует во взломе немецких шифровальных систем. В наше время его внук Рэнди, компьютерный хакер, помогает построить автономную «гавань данных» в Юго-Восточной Азии. Судьба внука связана с работой деда, с международным заговором, который может принести миру кабалу нового тоталитаризма.Иногда веселый, плотно набитый информацией на самые разные темы, от криптоанализа и хакерства до поиска сокровищ, этот роман – настоящий современный эпос. С одной стороны – удивительный, совершенно оригинальный портрет эпохи военного времени. С другой – провокационное размышление о том, как наука и техника помогают формировать и изменять ход человеческой истории. Произведение большой эрудиции и столь же большой творческой силы, оно является и останется одним из значительных литературных достижений современной эпохи.

Нил Стивенсон

Современная русская и зарубежная проза

Похожие книги