Выходит, Ричардс тоже относил себя к племени хакеров и занимался не только видеоиграми.
Звезды еще немного померцали, и картинка застыла. Музыка смолкла с завывающим звуком, словно в результате внезапной аварии остановилась катушка старого магнитофона. Машина наглухо "висела", не реагируя на клавиатуру. Трентон подождал еще немного, затем нажал кнопку перезапуска.
Система вновь загрузилась без проблем. Трентон тут же посмотрел протокол "шпиона". Так и есть! Программа lastwill записала в одну из системных областей памяти пару фраз в характерном хакерском стиле - с заменой "С" на "(", "О" на нули и т.п.:
"Охотимся за деньгами дядюшки Джимми? Боюсь, сосунок, ты недостаточно крут для этого"
"Ты меня недооцениваешь", - ответил Трентон. Поскольку перезапуск машины заново грузит системные области, только протокол "шпиона" и позволил установить, что там что-то было. Но Ричардс, видимо, считал такие уловки очевидным пустяком - как, впрочем, и Трентон.
Он просмотрел программу lastwill так, как будто это был текстовый файл, и, разумеется, не увидел там послания Ричардса. Конечно же, оно было зашифровано. Тогда Трентон просмотрел lastwill по командам и установил алгоритм шифрования - это был как раз тот, что вскрываются только полным перебором - а также ключ. Ключ зависел от конфигурации машины - на другом компьютере программа записала бы в память бессмыслицу. Но теперь Трентон знал, что он на верном пути. Раз Ричардс дал ему ключ, значит, решение существует и к нему можно прийти эвристическим путем. Очевидно, с помощью этих же алгоритма и ключа вскрывается и другое, более содержательное послание; вот только где его искать? Старый хакерский прием - помечать некоторые блоки диска как "плохие", непригодные к использованию, и именно там прятать информацию. Трентон протестировал диск на плохие блоки и быстро обнаружил их. "Ты не так-то крут, Джимми. Человек с твоими доходами не стал бы пользоваться диском, на котором есть непригодные блоки; любому ламеру понятно, что ты сделал их специально". Трентон натравил программу-декодировщик на первый плохой блок, и на экране появился результат ее работы:
"Я же говорил, что ты сосунок. По-твоему, я стану прятать информацию в плохих блоках? Не суди обо всех по себе."
Трентон хмыкнул. Емкость диска Ричардса составляла 10 гигабайт; перекодировка всего этого объема заняла бы много часов, но это было не самое худшее. Из перекодированных данных следовало выделить осмысленные, а сделать это с помощью программы, учитывая склонность Ричардса заменять буквы на похожие по написанию символы, было бы непросто. Значит, следовало как-то сузить область поиска.
Очевидно, важные данные не могли находиться в свободных областях диска, где их слишком легко было случайно затереть; значит, шифрованная информация хранится в каком-то файле. Для начала Трентон решил проверить файлы, созданные или измененные недавно. Конечно, Ричардсу ничего не стоило искусственно изменить дату модификации файла, но...
Получив огромный список файлов, отсортированных по дате, Трентон довольно хмыкнул. Список возглавляли два десятка файлов, различавшихся решительно всем - именем, размером, расположением на диске - кроме одного обстоятельства: если верить дате, все они были модифицированы 14 июля.
Ричардс покончил с собой тринадцатого.
Декодировщик обработал их все - и выдал полную бессмыслицу.
Но Трентон не сомневался, что его идея была правильной. Он отсортировал результаты по времени модификации исходных файлов и просмотрел сперва их начала, потом концы. Есть! Последние один-два символа каждого перекодированного файла образовывали следующее послание.