— Всё идёт как по маслу. Твой совет оказался бесценным. Райнер спрятал фрагменты настоящего кода под слоем мусора. Ушло время, чтобы отделить зёрна от плевел. В какой-то момент я заметила, что через регулярные промежутки встречаются функции, начинающиеся с Eval[54]. Обычно это означает evaluate, то есть, «выполнить». Но если выпустить букву «l», то получится указание на Еву Вайзенберг. Догадавшись об этом, я разместила соответствующие фрагменты в правильном порядке и — вуаля! Получила исходный код! В своей основе он очень прост, как и код любого хорошего вируса. Но понять его непросто. Райнер использовал довольно изощрённые методы. Рекурсивные функции для работы со списками, самомодифицирующиеся участки кода и так далее. Почти как программа на Лиспе. В таком сразу и не разберёшься. Лисп — старый, но удивительно мощный язык программирования, вместе с тем, один из самых сложных для освоения. Из-за своей невероятной гибкости и способности программ на нём к самоизменению Лисп получил распространение в сфере разработок искусственного интеллекта. Марк видел программу на Лиспе на одной из лекций по информатике: она состояла, в основном, из непролазной чащи открывающих и закрывающих скобок. Простому смертному было не дано этого понять.
— Ты хочешь сказать, что теперь можешь написать вирус, который уничтожит Пандору? — спросил он Лизу.
Лиза вздохнула и вытянула вперёд руки.
— Посмотрим. Мне удалось выяснить, что экземпляры Пандоры используют закодированные ключи для обнаружения себе подобных. С помощью этих ключей они обмениваются информацией, как синапсы в мозгу. Возможно, они используют ключи ещё и для воспроизводства. Когда система поражена Пандорой, её новые части за счёт ключей без труда обходят все фильтры безопасности.
— Но как им удаётся взламывать новые и новые системы?
— Пока точно не знаю. Могу лишь предположить, что логика обхода систем защиты не запрограммирована человеком напрямую в исходном коде программы, а распределена по всей системе, код которой был сгенерирован самой программой как результат самообучения. Пандора знает бреши практически всех файерволов и залезает в них без зазрения совести. Но это даже хорошо. Если я напишу вирус, который с помощью кодовых ключей выдаст себя за часть Пандоры, она откроет ему все двери.
Марк положил руку на плечо Лизы.
— Я рад, что мы оба в этом участвуем.
Она откинулась назад, прижалась щекой к его руке.
— Я тоже, — сказала она. — Но мне надо продолжать. Если я сейчас отвлекусь и расслаблюсь, то почувствую усталость.
Три с половиной часа мучительного ожидания. Марк забился в спальню, чтобы как можно меньше отвлекать Лизу. Он смотрел в окно на серое море, ходил туда-сюда по маленькой комнатке, словно отец, ожидающий рождения первенца. Он ничем не мог помочь Лизе, и от этого ему было тошно. В половине второго он почувствовал голод и купил ещё парочку замечательных бутербродов с селёдкой. Вернувшись, он застал Лизу, недвижно сидящей перед монитором.