Доктор Лофт
Зоя Дотс вышла из магазина аксессуаров, ничего не купив. Спустилась с крыльца, постояла, вдыхая майский вечерний воздух. Каждое время года имеет особенный образ, не имеющий ничего общего со средней температурой и цветом листвы на деревьях, если она на них есть. Этот образ нельзя увидеть и невозможно описать, его можно только почувствовать.
Но не здесь, в центре города.
Девушку окружали небоскребы, обвешанные рекламными щитами и визуальными баннерами. И те, и другие светились, сверкали, переливались. Девушку окружала толпа, каждый человек в которой ей был одинаково безразличен. По монорельсу над самой головой, безумно грохоча, промчался поезд.
Она пошла в сторону парка. Там тише и спокойнее, гораздо спокойнее.
Кернел завибрировал, и Зоя дотронулась до него, висящего, точно кулон, на груди. В воздухе перед ней появилась визуальная рамка с текстом. Сообщение предназначалось девушке, поэтому никто другой не видел его.
«Извини, сегодня не получится.
С любовью, Лиса».
Текстовая отписка — словно плевок. У Лисы нашлись более интересные планы на вечер, чем прогулка с Зоей по парку.
Ничего. Она сможет погулять и одна.
От западного выхода из парка до многоэтажки, где она снимала квартиру, было всего два квартала. Здесь, у решетчатых ворот было не так много скамеек, но девушка нашла свободную. Полчаса она просто отдыхала, мечтая и слушая музыку, которую кернел передавал на маленькие, почти незаметные спирали наушников.
Потом захотелось домой. Надо зайти в магазин, подумала девушка. Купить готовый обед. И вина. Нет, вино дома есть... Один бокал не повредит.
Взгляд Зои остановился на пластиковом заборе справа от длинных решетчатых ворот. Там было граффити, точнее картинка, нарисованная краской по трафарету: синие силуэты трех дельфинов, как будто выпрыгивающих из воды.
Похожий на эмблему рисунок заинтересовал ее. Она встала со скамейки, подошла и провела по картинке рукой. Красиво, подумала девушка. Интересно, что это значит?
Можно было тут же поискать ответ в сети. Но заниматься этим совершенно не хотелось. Пусть уж лучше дельфины останутся загадкой.
Она вышла из парка и направилась вдоль пустой дороги. Удивительно — прохожих тоже не было. Весь город словно замер. В наушниках играла подходящая моменту спокойная мелодия. Зоя повеселела. Это казалось странным, но чудесным — будто она была одна в целом мире!
Перекресток тоже оказался пуст. Светофор никак не желал переключаться на зеленый, и она зашагала по зебре. Кого ждать, если ты одна?
Автомобильный гудок прорвался даже сквозь громкую музыку из наушников. Зоя быстро посмотрела в ту сторону — но машины не было! Дорога оставалась пуста.
Тем сильнее было удивление, когда пустота очень грубо и больно толкнула ее, и девушка, закричав, поднялась в воздух.
Майя открыла жалюзи и распахнула окно. Янтарный свет залил комнату, ощутимо потянуло утренней прохладой.
— Спасибо, — сказал Дима, возящийся у кофебокса. — Налить кофе?
— Я уже выпила, — сказала Майя, возвращаясь за конференц-стол к своим утренним визуальным газетам.
— А тебе, Виталя?
— Не откажусь, — сказал я. — Майя, а не хочешь сходить на выставку на этих выходных?
Она бросила на меня взгляд исподлобья:
— Ты еще в зоопарк предложил бы сходить.
— Это выставка ультрасовременных девайсов, каких ты, наверное, и не видела. Сможешь себе что-нибудь прикупить. Например, новые стильные очки. Впрочем, я не хочу сказать, что эти очки у тебя недостаточно стильные...
Она бросила на меня еще один взгляд и ничего не сказала. Дима улыбнулся, наблюдая за нами вполоборота. Затем подошел к столу и поставил мне большую белую кружку с кофе. Визуальный термометр на боку горел красным: 92 С.
— Благодарю... — пробормотал я.
— Что-то Лофт сегодня задерживается, — отчетливо сказала Майя.
— Он каждый день задерживается, — сообщил я.
— Я знаю. Сегодня он задерживается больше обычного.
Я решил не развивать диалог. Осторожно отпил кофе. И продолжил читать блоги. Там все хотели пообщаться, причем в гораздо более дружелюбной манере.
Минут через пять стеклянная дверь в кабинет открылась.
— Доброе утро, — начал доктор Лофт с порога. — У меня для вас две хороших новости. У нас новое дело, и у нас новый член в команде.
Он вошел, ведя за собой на поводке здоровенного и, судя по всему, радостного сенбернара.
— Ого! — сказал Дима.
— Это ваша собака? — спросила Майя.
Лофт сделал вид, будто озадачен вопросом. Согнулся, как японский гражданин в глубоком поклоне, и уставился на жизнерадостную собачью морду.
— Лофт, вопрос в том, ваша ли это собака, а не в том, собака это или пес, — сообщил я. Мне почему-то показалось, что он высматривает, есть ли у сенбернара яйца.
— Вроде моя, — выпрямился Лофт.
— Я не знала, что у вас есть собака. — Майя подошла к ним и присела перед псом. Пес тоже сел. Она ласково погладила его по морде. — Какой милый!
— Смотри, как бы не цапнул! — сказал Лофт.
Майя отпрянула. Затем догадалась, что Лофт шутит, и смутилась. Спросила:
— А как зовут?
— Обычно «доктор Лофт».
— Нет, его.
— Он откликается на «Господин».
Майя покачала головой и вернулась за стол.
— Зачем вы его привели? — спросил я.
— Соседка заболела, выгуливать некому. Неважно. Почему еще никто не задал вопроса по поводу нового дела? — Он кинул папку на стол, которую держал в другой руке.
— У нас будет хоть день покоя? — задал вопрос я.
— Будет. Даже два. Суббота и воскресенье. — Он отстегнул карабин и потрепал сенбернара по загривку: — Гуляй, господин. — Посмотрел на нас. — А теперь впитывайте. Клиент: женщина, тридцать один год, официантка в кафе, родом из штатов. Имя: Зоя Дотс. Причина обращения: неопределенное поведение ядра. Все правильно? — с сарказмом спросил он Майю, углубившуюся в содержимое папки.
— Я верно понял, — начал Дима с противоположной стороны стола, — наш клиент не мэр, не член семьи мультимиллионера и даже не ваш знакомый?
— Не важничай. Мы простые специалисты простого диагностического центра. Все мы под одним богом ходим — свидетели называют его корпорацией «Макрософт». И каждый, у кого есть страховка, имеет право получить нашу квалифицированную помощь.
Причина их полемики была мне понятна. Ведь доктор Лофт весьма популярен в сети. Случилось страшное? Кернел испустил последнее дыхание и ваш кластер заблокирован? Техники «Макрософта» опускают руки, диагностируя фатальное разрушение структуры нанотранзисторов? Не переживайте. Доктор Лофт вам поможет. Разумеется, если он свободен и у вас есть страховка. Вот только, бывает ли доктор Лофт свободен — вопрос скорее философский. Тогда и пригодится старый русский способ — блат. Или социальные привилегии, о которых упомянул Дима.
— Почему мы занимаемся этим? — не унимался он. — Может, вам понравилась фамилия клиентки?
— Дотс? Ну конечно. Люди с фамилиями Слэш, Дот и Колон обслуживаются вне очереди. Равно как и русскоязычные: Косая-Черта, Точка, Двоеточие. Кстати, если вам попадутся в вестибюле братья-близнецы с никами Слэш и Бэк-Слэш, тут же ведите их ко мне! Только проверьте по паспорту, чтобы без обмана!
— «Неопределенное поведение ядра» — девяносто процентов жалоб, — напомнил я. — Какой комментарий?
— Флэйм, — сказал Лофт.
— Сейчас, — ответила Майя и перевернула страницу.
Сенбернар подошел ко мне и ткнулся мокро блестящим носом в колени. «Мой хороший», — произнес я, почесав ему за ухом. Сенбернар повернул голову, чтобы мне было удобнее чесать.
— «Комментарий: при определенных условиях исчезают все нестатичные материальные объекты — люди, машины и так далее», — прочитала Майя и добавила драматически: — Обращение поступило к нам из «скорой»...
— Теперь понятно, почему я выбрал это дело? — спросил Лофт Диму. — Ее сбила машина, которую она не увидела. Она лежит в госпитале через дорогу.
— Может, ею должны заниматься другие доктора? — поинтересовался Дима. — Те, что в белых халатах? Разве это не из области неврологии?
— Думаешь, они хотят свалить это дело на нас? Хорошее предположение, но маловероятное.
— С чего бы это?
— Она носит линзы.
Дима опустил взгляд и повел плечом. Он сдался.
— Минздрав не рекомендует, но тщетно, — принялся объяснять Лофт и снял очки. — Так — я могу убедиться, что термометр на кружке Октября и газеты Флэйм визуальные. В реальном мире их просто нет. — Он надел очки. — А так — могу лишь догадываться. В России не так много смельчаков с линзами, но и те, кто их носит, обычно используют усиленную подсветку визуальных объектов. В штатах все наоборот. Неудивительно, с их массовой травлей доморощенных крекеров обыватель чувствует себя поспокойнее.
Сенбернар пошел к Диме и ткнулся в колени к нему. Похоже, он знакомился. «Иди, иди», — произнес Дима. Майя спросила:
— Вы уже навещали девушку?
— Нет, мне-то зачем? Вы навестите ее. Снимете слепок и выясните обстоятельства. — Лофт положил на стол небольшой хромированный шар.
— Мы все? — уточнил я.
— Двое из вас. А третий будет выгуливать Господина. На заднем дворе, чтобы не было претензий.
— Кто?
— Тот, у кого самая большая грудь.
Все посмотрели на Майю.
— То есть Дима? — отчаянно спросила та, намекая на его былое увлечение культуризмом. — Нет, а почему я? Сами-то вы чем займетесь?
— Думаешь, не найду дела? У меня целый холл фанатов, у которых сломался кернел. У тебя фанатов нет. Когда они у тебя появятся, Господина буду выгуливать я.
Мы с Димой вышли из центра и направились к перекрестку. Шумная суетливая улица была заполнена ослепительным белым светом. Включив солнцезащитную функцию очков, я посмотрел в сторону одноэтажного кафе с неуклюжим колпаком визуальной рекламы.
— Хочу пончиков, — сказал я.
— На обратном пути зайдешь, — сказал Дима.
— С шоколадным наполнителем.
— Не сейчас!
Стоя на светофоре, я оглядывался назад. Впрочем, смотрел я не на кафе. А на многочисленные рекламные баннеры.
— Не могу понять, как это выглядит, — задумчиво произнес я. — Ведь визуально можно что-нибудь нарисовать. Но не стереть.
— Очевидно, именно это и заинтересовало Лофта.
В госпитале Дима выяснил у дежурной палату пациентки Дотс. Мы поднялись на третий этаж. В лифте Дима спросил меня:
— Почему ты позволяешь ей глумиться над собой?
— Кому? Майе? Она не глумится, просто ее не интересуют всякие там выставки.
— Кого ты обманываешь? — Дима покачал головой. — Так робко ты не добьешься ее внимания. Она на восемь лет младше тебя и слишком красива, чтобы согласиться на такую банальность. Придумай что-нибудь интересное, если она тебе настолько важна.
Мы вышли из лифта.
— Если и это не пробьет ее оборону, тогда ты, по крайней мере, будешь знать, что с ней тебе ничего не светит. Может, она видит в тебе бестолкового отца. В текущей ситуации ты просто надеешься на призрачные шансы и словно упиваешься ими.
— Деймос, не грузи меня, а?
— Как хочешь. Я просто даю совет. Для меня это давно пройденный этап. — С этими словами он открыл дверь в палату Зои Дотс.
Против ожидания, девушка не лежала в постели с отрешенным видом. Она была на ногах и стояла у окна, рядом с прикроватным столиком-консолью, который занимала большая ваза с букетом белых цветов. Левая рука девушки была в гелевом гипсе. Услышав шум из коридора, Зоя повернулась. Ее лицо было симпатичным, но, на мой взгляд, несколько грубоватым. К тому же, следы синяков еще не прошли.
Дима шагнул вперед.
— Зоя Дотс? Здравствуйте. Мы из диагностического центра, который вы видели через дорогу. Это мы занимаемся неопределенным поведением вашего кернела. Я — доктор Деймос. Это — доктор Корнельский. Мы... ну вы понимаете, хотели бы задать вам несколько вопросов.
— Я не подавала заявления в корпорацию, — сказала Зоя. Ее акцент был практически незаметен.
— Зоя, заявление подали врачи «скорой». Они были обязаны сделать это.
— Забрать его можно?
— Нет, — вступил в разговор я. — И пока мы не уничтожим вирус, кернел вы тоже не заберете.
— Какое вам дело до моих вирусов?
— Он должен быть добавлен в базу. Равно как и способ заражения, если он уникален. К сожалению или к счастью, но такова политика корпорации.
— Отлично! Как долго мне ждать?
— Около недели. Однако дело может затянуться. В худшем случае, вы получите новый кернел по страховке, но все не зарезервированные персональные данные на кластере будут потеряны. Впрочем, если хотите, можете потребовать новый кернел сегодня же. Если нет, помогите нам.
— Как?
— Чтобы решить проблему, нам надо ее увидеть. Чтобы ее увидеть, нам нужен полный доступ к вашему кернелу.
— Ядро у вас? Вы хотите, чтобы я прикоснулась к нему?
— Однократной авторизации недостаточно. Мы не рассчитываем, что вы согласитесь дежурить у нашего кабинета, ожидая очередного раза, когда понадобится ваше мягкое, нежное прикосновение. — Я достал скретч-капсулу и хромированный кернел девушки. — Мы хотим, чтобы вы оставили нам слепок.
Она засмеялась:
— Сотрудники корпорации используют нелегальное железо? Вы меня удивляете!
— Мы гарантируем, что слепок не выйдет за пределы нашего центра и после завершения дела будет уничтожен, — сказал Дима.
Девушка ненадолго задумалась. Потом протянула руку и улыбнулась.
Я поместил кернел в скретч-капсулу и вручил ей.
— Я в сети, — сообщила она. — И я вижу вас.
— Видите? — переспросил я. — Сколько пальцев я показываю?
— Ни одного. Вообще-то, когда меня доставили в госпиталь, я уже все видела.
Мы с Деймосом переглянулись. Если проблема не постоянна, значит дело становится сложнее.
Зоя повернулась и подошла к консоли. Вытащила букет из вазы.
— Странно, — сказала она. — Даже визуальной открытки нет.
— Не знаете, от кого цветы? — спросил я.
— Наверное, от коллег, — пожала она плечами.
— Хорошие коллеги. Заботятся.
Зоя с осторожностью поставила букет обратно и вернула мне кернел.
— Слепок готов? — уточнила она. Я кивнул. — Завтра меня выписывают, я могу зайти к вам?
— Так скоро? — удивился Дима.
— С переломом руки и тремя выбитыми зубами долго не держат.
— Вы можете зайти завтра, — сказал я. — А сейчас расскажите обо всех подозрительных историях за последнее время и очень подробно — о вашем вчерашнем дне.
Дима побежал отчитываться Лофту, а я не спеша направился в кафе. Проходя мимо главного входа в центр, я увидел встревоженного чернокожего джентльмена. Именно это слово — джентльмен — всплывало в голове при виде его стильного костюма и начищенных кожаных ботинок. Весь его образ производил впечатление опрятности — можно сказать, эталона опрятности. Так, лысая голова была обильно намазана воском, и любой собеседник мог запросто посмотреться в нее, как в зеркало.
Поймав мой взгляд, чернокожий джентльмен подошел ко мне:
— Гражданин, вы не видели собаку? Здесь не пробегала собака в ошейнике и с поводком?
Я покачал головой от удивления. Сказал:
— Зайдите в центр и найдите доктора Лофта. Он подскажет.
Чернокожий джентльмен обрадовано кивнул и зашагал к дверям. А я пошел дальше.
Лофт развалился на стуле за конференц-столом, небрежно подбрасывая круглый хромированный кернел. Визуальный провод, правдоподобно подпрыгивая, тянулся от него к реальной коробочке с готической буквой «F» на столе, а дальше шел еще один провод к кернелу Лофта — часам на запястье.
Лофт стал очень осторожен с того самого случая, когда подключился слэйвом к зараженному ядру без аппаратного файрволла — и тут же упал в эпилептическом припадке.
Майя сидела рядом с Лофтом, Дима стоял у окна и что-то рассказывал. Сенбернар, к моему удивлению, лежал в ногах у Майи, под столом.
Я поставил пластиковый стакан на угол стола и опустился на стул. Пончики я съел по дороге, а чай еще оставался.
— ...полагаю, фактором активации является некий заданный сектор, — закончил Дима.
— Или заданное время, — сказала Майя. — Неопределенное поведение имело место вечером. Сейчас полдень.
— Твой вариант? — спросил Лофт меня.
— Я... я не знаю, о чем речь, — смутился я.
— Тогда почему шляешься, где попало? И зачем привел ко мне кошатника?
— Может быть, собачника? Почему вы не отдали ему сенбернара?
— Он кошатник. Он искал своего тойтерьера.
Я представил чернокожего джентльмена с той-терьером на поводке и не сдержал улыбки. Маленький пес удачно дополнял бы его облик. Как аксессуар.
— Неужели сложно поверить, что это моя собака?
— Сложно, — признал я.
Лофт размахнулся, словно собирался бросить в меня ядром. Но конечно же, не бросил.
— Вы оба ошибаетесь, потому что убеждены в своих версиях. А фактор может быть совершенно произвольный. Гадать не имеет смысла. Флэйм, просканируй сеть на предмет сообщений о похожих проблемах. Уж очень случай характерный. Деймос, займись анализом логов системы. Октябрь, на тебе всё остальное. Понятно? — Он посмотрел на меня. Я нехотя кивнул. — И не забудь проверить антивирусом! Как в прошлый раз!
Флэйм засмеялась.
Антивирус, конечно же, ничего не нашел. Ни первый, аналогичный установленному на суперсервере, ни второй. Зато собственноручно написанный анализатор обнаружил несколько подозрительных сигнатур — на самом деле безобидных и хорошо мне известных. Их давно следовало добавить в исключения, да все руки не доходили.
Запущенные процессы, в том числе сервисные, и программы, сохраненные на кластере, тоже были безвредны. Официальные имели валидные сертификаты, неофициальные, распространяемые бесплатно — не модифицировались, и их контрольные суммы совпадали с заявленными.
Впрочем, все это ничего не означало. Моя работа была нужна для полноты картины, но едва ли могла продвинуть дело. Лофт назло нагрузил меня самым продолжительным и бесполезным занятием.
Ведь маловероятно, что настолько экзотический вирус обладает деструктивной активностью, а значит и обычные методы диагностики обнаружить его не могут. Что касается визуальных эффектов, «стирающих» действительность, то они, скорее всего, передаются через стандартный поток с кластера. Разумеется, не с персонального кластера Зои Дотс, а с публичного, называемого доменом, где в виде байтов хранится киберпространство города.
Вирус умело прятался, и в данный момент, возможно, вообще отсутствовал в оперативной памяти и на кластере. Но способа, как он туда мог бы попасть, я не видел.
Единственное, что меня насторожило — бесплатные программы. Чего тут только не было! Англо-русский разговорник «Yankee», музыкальный проигрыватель «Skybox», известный поддержкой нелицензионных песен, какой-то клон «Visual Paint» и многое другое. Сами по себе программы были безвредны, но какие ошибки и дыры оставили в них создатели — одному богу ведомо.
Закончил я позже всех и покинул центр перед самым его закрытием.
На следующее утро я вошел в кабинет за пять минут до начала рабочего дня. К моему удивлению, доктор Лофт уже сидел за конференц-столом, открыв перед собой в воздухе множество визуальных панелек. С обратной стороны панели были полупрозрачными, но их содержания все равно видно не было.
Сенбернар выскочил из-под стола и подошел ко мне.
— Привет, собака, — сказал я. Лофт нахмурился, но не стал уточнять, с кем я поздоровался. Взмахом ладони свернул все панели, убрал визуальную клавиатуру со стола и уставился на меня.
— Соседка все болеет? — поинтересовался я.
— Какая еще соседка?! — раздраженно спросил Лофт. Я усмехнулся. — Ах, соседка. Да, болеет.
Сенбернар подставил почесать ухо.
— Зачем вы пришли так рано? Чтобы никто не заметил вас с собакой?
— Надо все успеть обсудить. Но и поэтому тоже.
В кабинет вошел Дима — минута в минуту. Сенбернар повернул голову, но остался у моих ног. Дима удивленно посмотрел на Лофта и открыл было рот, однако начальник его опередил:
— Сегодня ты выгуливаешь Господина.
— Почему это? Разве опоздал я? Или у меня увеличилась грудь?
— Не хочу, чтобы Флэйм пожаловалась на меня в клубе феминисток или суфражисток. Но отчасти ты прав, стероидов бы тебе жрать поменьше.
— Не сижу я на стероидах! Уже давно. И вообще, я уверен, что ваша грудь даже больше.
Лофт замолчал. Дима, уверенный, что победил в споре, повесил пиджак на вешалку и сел за стол. Лофт сказал:
— Проверим?
Дима посмотрел на него. Пристально, раздумывая. И дернул узел галстука.
Я смотрел за ними, потешаясь. Деймос и Лофт разделись по пояс и встали рядом.
— Ты оцениваешь, Октябрь! — бросил Лофт.
Что тут было оценивать? Уже по ширине плеч Дима уверенно обыгрывал Лофта. Вдобавок, даже без стероидов он, по всей видимости, поддерживал себя в тонусе. Я отметил впечатляющий пресс с отчетливыми косыми мышцами, рельефные трицепсы и дельта-мыщцы, а также бицепсы, выделяющиеся безо всякого напряжения.
Волосатое туловище Лофта местами выглядело рыхловато, но для его возраста и он был в хорошей форме. Качается?
В кресле-качалке?
Я уже собирался объявить победителя, когда открылась дверь и вошла Майя. Сенбернар, замахав туда-сюда хвостом, двинулся к ней, но Флэйм не обратила на него внимания. Увидев Лофта и Диму с обнаженным торсом, поигрывающих грудными мышцами, она резко развернулась и сказала со вздохом:
— Я зайду позже!..
— Нет, постой! — сказал Лофт. Майя остановилась. — Я считаю, ты тоже должна поучаствовать. Вдруг ты была права вчера насчет Димы?
— Может быть, вы оденетесь? — попросила она.
— Октябрь, — сказал Лофт.
— У Димы больше.
— Вы чем мерялись?! — воскликнула Майя.
Лофт кивнул мне, не обращая на нее внимания, и подобрал рубашку со стола.
— Докладывайте о результатах.
— Поиск в сети практически ничего не дал, — неуверенно начала Майя. — Но такие случаи встречались. Я нашла два сообщения в форумах — без решения проблемы. Темы были закрыты авторами. И была одна удаленная запись в блоге, она сохранилась в кэше.
— Можно попробовать допросить этого блоггера, — сказал Лофт. — Если он согласится.
— Я уже проверила этот вариант. Блоггер сейчас находится в Индии и на попытки установить связь пока не отвечает.
— Сообщи, если ответит. Что-нибудь еще?
— Да. Все три случая зарегистрированы в русскоязычном сегменте сети. Поиск по шести другим языкам не дал абсолютно ничего.
— То есть ты не проверила тайский?! Ладно. Деймос?
— Логи ничего определенного не говорят, но дают простор для предположений. Клиентка родом из США и успела побывать в Англии и Германии. Везде она жила по несколько лет. Вполне возможно, вирус попал ей на кластер где-нибудь там и до поры до времени тихо прятался.
— Глупо, — сказал я. — Зачем нужен вирус с таким длинным латентным периодом?
— Может, он направлен против России, — парировал Дима, лихо завязывая галстук. — Пока что мы вообще не знаем, зачем может понадобиться такой вирус.
— Может и глупо, — сказала Майя, — но блоггер тоже, очевидно, любит путешествовать. Так что частично совпадает.
— Она работает официанткой в кафе, — продолжал Дима. — Там бывает множество самых разных людей. Под благовидным предлогом ей могли перекинуть вирус с кернела на кернел, минуя суперсервер, где, как известно, установлен антивирус. В логах такие соединения отражены.
— На ее кластере нет посторонних процессов, — сказал я. — Сигнатуры угроз оба антивируса не обнаружили. Как тогда вирус активируется?
— По логам сказать не могу. В тот момент, когда это произошло, система работала в штатном режиме. Никаких особых событий зафиксировано не было. Перед инцидентом клиентка получила текстовое сообщение, потом послушала музыку. Еще, по ее словам, она дотронулась до какой-то эмблемы, нарисованной на заборе, и в логах это отражается, как переход по ссылке. В общем-то, ничего особенного.
— Слушала музыку? — переспросил я. — У нее на кластере внушительная коллекция нелицензионных песен. Может, какой-нибудь из аудио-файлов и был фактором активации?
— Каким это образом? Тем более что ты не нашел сигнатур?
— Шанс небольшой, но имеется.
— А я вот думаю, — сказала Майя, — если она переезжала из страны в страну — это значит, что ее личный кластер переписывался с одного суперсервера в другой. Если бы она оставила свой кластер в Соединенных Штатах, при передаче персональных данных была бы значительная задержка. Я считаю, что при перемещении кластера произошла ошибка. Скажем, была скопирована область чужого кластера — такой случай у нас уже встречался.
— Шанс этого еще меньше, — сказал Деймос.
— Не важно, чьи шансы лучше! — оборвал Лофт. — В вашем диалоге прозвучала только одна хорошая мысль. Только одна! Кому и зачем нужен такой вирус? — вот главный вопрос! Ваши идеи?
Наступила тишина.
— Нет идей? Ни одной?
— Он может быть реальным оружием убийства, — сказал я. — Если активировать его в особых обстоятельствах.
— Вот именно. Это слишком сложно. Гораздо проще и надежнее убить человека из тау-пистолета.
— Что касается «проще», то не каждый способен убить человека из пистолета, — возразил я. — А что касается «надежнее» — почему бы не предположить, что мы поймали вирус в демо-версии. Или что он в режиме тестирования. Обычные пистолеты тоже не сразу стали убивать.
— Очки сводят на нет эффективность вируса. Их просто снять, а линзы далеко не у всех.
— Во-первых, Лофт, как знать, не изменится ли ситуация в будущем. Во-вторых, в штатах, по вашим же словам, значительная часть населения носит линзы. И в-третьих, уже сейчас присутствует элемент неожиданности. Как поступит водитель, если трафик на его глазах внезапно исчезнет?
— Вирусом могут воспользоваться террористы, — подхватил Дима. — Если запустить его для целого домена, множества мелких происшествий не избежать. Или не очень мелких.
— Если крекеры умеют стирать реальные объекты, — вставила Майя, — они сумеют и нарисовать вместо них что-нибудь. Например, что акции поползли вверх, и надо срочно вкладывать в них деньги. Вообще, это универсальный инструмент манипулирования обоими слоями мира. Новый уровень взлома.
— Страшноватая картина, — заключил Лофт и посмотрел на стеклянную дверь. — Я описался... Не улыбаться, — скомандовал он.
Дверь открылась, и на пороге появилась Зоя Дотс, уже без гипса и без синяков на лице. Она была в прозрачных очках, видимо, последовав моему совету.
— Здравствуйте, — Зоя увидела знакомых и улыбнулась. — Доктор Деймос, доктор Корнельский.
— Корнельский? — произнес Лофт. — Кто это? Если вы про него, то это доктор Ноябрь.
— Октябрь, — поправил я.
— Октябрь? Это ваш ник? — она посмотрела на меня. — Необычно. Простите, а вас как зовут?
— На двери написано. Впрочем, неважно, там написаны имя и отчество, я даже не знаю, чьи они. Я доктор Лофт. А это просто практикантка, не обращайте на нее внимания.
— Спасибо, — сказала Флэйм.
— Доктор Лофт? — повторила Зоя. — Вы — тот самый доктор Лофт? Рада познакомиться! — Она подошла и пожала ему руку. — Мне очень повезло, верно?
— Неверно. Мы не нашли на вашем кернеле вирусов. Вы солгали врачам госпиталя и нам, запудрили всем мозги. Наверное, просто хотели привлечь к себе внимание? Вы подлая обманщица, отнимающая время у квалифицированных специалистов. Вы заслуживаете крупного штрафа, но я вас отпущу. Не по доброте, а чтобы больше вас не видеть. Никогда.
Веселость Зои как рукой сняло. Она потухла, на лице появилась злость и обида. Лофт протянул ей хромированный кернел. Зоя схватила его и выбежала из кабинета.
На минуту установилось молчание.
— Зачем вы так? — чуть не плача, спросила Майя.
— Потому что я циничный нелюдимый ублюдок, — процедил Лофт. — Мне не понравилось то, что она так обрадовалась. И мне не нужны новые знакомства. — Он опустил руку и потрепал сенбернара по загривку. — Ну, а кроме того, это заставит ее вернуться в те условия, при которых сработал вирус. У нас нет времени заботливо и тактично выяснять эти условия и воссоздавать их. Она вернется обратно в свою жизнь, где никого не знает и никому не нужна, и опять сработает фактор одиночества, который активирует вирус. Майя и Октябрь, вы должны его отловить. Проследите за ней!
Изумрудный «Порше» выехал со стоянки и, сверкающий, остановился возле меня. Усевшись за руль, я открыл «Мегалинк» и вызвал Майю. Узнал, где она находится, и покатил к остановке общественного транспорта перед центром.
— Видишь автобус на перекрестке? — спросила Флэйм, опустившись на сиденье рядом со мной.
Найдя взглядом двухэтажный автобус с империалом, я кивнул и двинулся за ним.
Наконец-то Майя оказалась в моей машине — внезапно подумалось мне. Но разумеется, хотелось, чтобы обстоятельства были совершенно другими. Я не знал, что говорить, и поэтому мы молчали.
Через пять остановок Зоя вышла и дальше двинулась пешком. С такой скоростью ехать за ней было невозможно. Я припарковался.
— Куда она идет? — спросил я, когда мы выровняли дистанцию. — Домой?
— Не совсем. По-моему, она направляется в сектор, где произошла активация.
— Если дело в секторе, можно было обойтись без оскорблений. Она бы и так туда пошла.
— Лофт интересно себя охарактеризовал, — улыбнулась Майя. — Этими тремя словами назвать его, конечно, язык не повернется. Но если по отдельности, то вполне можно.
— Неудивительно, что он так хорошо понял ее. Он ведь тоже одиночка.
— Как и ты. Ты хорошо ее понял?
— Хочешь сказать, мы с Лофтом похожи?
— Вовсе нет. Хочу сказать, что вы не похожи. Лофт — одинокий волк. А ты — просто одиночка.
Я ничего не ответил. Наверное, можно было сказать, что я не хочу быть один. Что я хочу быть с ней. Но что толку? Деймос прав, это бесполезно.
Мы шли в тени кленов и каштанов, которые возносились из-за сплошного сине-зеленого пластикового забора по правую руку. В воздухе носились жуки и редкие шмели, стоял ядреный запах цветущей черемухи. Зоя была в сотне шагов впереди.
— Кого ты видишь во мне? — поинтересовался я. — Кроме как коллегу?
— Парня, который пытается ко мне подкатить. И, раз уж мы об этом заговорили, можно тебя попросить больше не делать мне неудобных предложений? Вроде приглашения в зоопарк?
— В зоопарк? Разве я мог пригласить тебя в зоопарк? Только в морг.
— Не обижайся, пожалуйста... — Она осеклась, и голос ее изменился: — Зоя остановилась.
— Мы в том самом секторе, — догадался я. — Сейчас что-то будет...
— Ее надо предупредить!
— Стой! — я схватил ее за локоть. Майя оглянулась на меня со странным, предельно удивленным выражением лица. — Пока что она просто остановилась, — сказал я. — Если окажется, что мы поторопились, Лофт нас убьет.
Неожиданно Зоя Дотс обернулась и посмотрела прямо на меня. Между нами было всего три-четыре человека, и не заметить нас с Майей было невозможно.
— Всё, — сказал я. — Приехали.
Она решительно зашагала к нам, но тут же перешла на бег. К чему так спешить? — удивился я, прикидывая, как лучше оправдаться.
Но ничего говорить не пришлось. Поравнявшись с нами, Зоя просто пробежала мимо.
Я заметил ее взгляд. Застывший, он был сфокусирован куда-то вдаль.
— Черт, — выпалил я. — Она нас не видит!
Мы развернулись и помчались следом. Майя на каблуках тотчас осталась позади. А Зоя в теннисных кроссовках резво и уверенно неслась вдоль ограды парка, заставляя прохожих расступаться.
— Зоя! — крикнул я.
Без эффекта.
Она завернула за угол забора, почти не снижая темпа.
— Зоя! — крикнул я вновь.
И вновь без эффекта.
Теннис, видимо, пошел ей впрок. Бежала она быстро, но тем не менее, я ее догонял.
— Зоя! Зоя, стойте! Снимите очки!
Я нагнал ее, схватил в охапку и с размаху прижал к забору.
— Стойте! Успокойтесь!
Она пыталась вырваться. Да что в ней за демон...
— Я доктор Корнельский! Успокойтесь! Вы видите ложное киберпространство!
Она вдруг затихла. И обессилено опустилась на корточки.
— Да я знаю... — прошептала она.
Я осторожно снял очки с ее лица, надел вместо своих и подсоединился к кернелу девушки.
...И мир преобразился. Все движение исчезло, растворилось в воздухе. Остался только ветер, слегка раскачивающий ветки деревьев.
Завороженный, я вызвал шелл — оболочку управления ядром, и запустил сниффер. Поток, поступающий с домена, и все его параметры теперь полностью записывались.
Я прислонился к забору и стоял, не двигаясь, минут пять, пытаясь поверить в то, что видят мои глаза. Затем пустота рядом со мной спросила голосом Майи:
— Что произошло? Что с вами? Зоя?
Я снял очки и посмотрел на сидящую на корточках девушку.
— Я только что была в пустом мире. И видела там человека.
Когда мы вернулись в центр, Дима уже закончил исследование характеристик киберпотока. И судя по его оживлению, он что-то обнаружил. Впрочем, взгляд его помрачнел, едва он посмотрел на свое место за конференц-столом.
— Ко мне!!! — с необычным раздражением закричал доктор Деймос.
Сенбернар, разумеется, не послушался, но все-таки убрал нос от аппетитного сэндвича, лежащего на столе. Что ж, Господина сложно было винить. Я бы и сам сейчас не отказался перекусить.
— У тебя десять минут, — сообщил Лофт. — Задержаться на работе похвально, но пробки еще никто не отменял... Когда уже изобретут летающие машины?
— Летающие машины существуют, — вставил я. — Они называются самолеты.
— Мне хватит одной минуты, — сказал Дима. — Поток действительно шел не с домена. Кернел клиентки считывал визуализацию с персонального кластера.
— Механизм? — спросил Лофт.
— Я почти уверен, что используется подмена адресов.
— Хорошее предположение, потому что я тоже так думаю. Но провернуть такой финт довольно непросто...
— Возможно, я смогу объяснить. На всякий случай, я проверил, не принадлежат ли вип-адреса к известному диапазону. И не зря. Это — суперсервер Секретного Исследовательского Агентства Лэнгли.
— Обалдеть, — сказала Майя. Я удивленно покачал головой.
Обычно суперсервер выделяется для города или региона. Он обслуживает домен и персональные кластеры. Но некоторые особенно привилегированные организации могут иметь свой собственный суперсервер. Как, например, СИЛА, символически основанная на месте упраздненного ЦРУ.
— Это и впрямь многое объясняет, — проговорил Лофт. — В Лэнгли специалистов полно. И смысл вируса понятен: они опять что-то исследуют, сукины дети. А вот обвинения предъявлять бессмысленно, против СИЛЫ не попрешь. Впрочем, для нас ситуация не меняется. Как они это делают, мы понять должны... Как можно стереть реальный мир?!
Мы молчали. Лофт посмотрел на часы.
— Подумайте над этим на выходных. — Он поднялся. — Адьос, амигос.
Лофт появился из-за цветущих кустов сирени, оглядываясь куда-то назад.
— Господин! Господин, сюда!..
Поймав взгляд проходившего мимо тинэйджера в бейсболке, Лофт, оскалившись, сказал:
— Я не вам!..
Из-за кустов вылетел сенбернар и, подпрыгивая, пронесся мимо хозяина. На бегу развернулся и намерился было рвануть обратно, но Лофту удалось его перехватить.
Ведя собаку на поводке, он подошел к длинным решетчатым воротам в сине-зеленом заборе. Внимательно посмотрел на рисунок, изображающий трех дельфинов, справа от ворот. И осторожно прикоснулся к нему.
Затем удивленно обернулся.
Я помахал ему со скамейки.
Только теперь он заметил меня. Я встал и не спеша подошел.
— Видно же, что это скрытая ссылка, — сказал я. — И она уже удалена, как не зарегистрированная.
— Ты тут что делаешь?
— Гуляю. А вы?
Лофт не ответил. Впрочем, нам обоим было очевидно, почему мы здесь.
— Нужно посмотреть в кэше домена, куда вела ссылка, — сказал он.
— Уже посмотрел. Она вела на портал клана «Дельфинарий» игры «Риддл мастер».
— Вряд ли это они, — сразу же сказал Лофт. — Конечно, в любом сообществе по интересам могут найтись практикующие крекеры, которые продвигают интересы этого сообщества... Но в данном случае их способностей хватило только на то, чтобы закрыть ссылку от стандартного анализатора.
— Согласен, скорее вирус создан СИЛА, чем школьниками, — сказал я. — Но есть и хорошие новости. Я выяснил, что ребята из «Дельфинария» набирают людей в команду. Не хотите присоединиться?
— Лучше ты, — огрызнулся Лофт. — Эти загадки тебе окажутся по плечу.
— Не расстраивайтесь вы так, — улыбнулся я. — Подумаешь, мы опять в тупике. Не первый и, надеюсь, не в последний раз... Ведь мы в тупике?
— Мы в тупике. Но это лишь значит, что завтра вы втроем наброситесь на записанный киберпоток, как медведи на малину, и пока не нароете еще что-нибудь, останетесь без еды.
Он потянул собаку за поводок и направился к воротам, давая понять, что диалог закончен. Но я догнал его, и мы вместе пошли вдоль дороги.
— Лофт, а можно вопрос? — произнес я и, зная, что он скажет, тут же продолжил: — Почему вы один по жизни?
— А ты?
Я замялся.
— Мне нужна только Майя.
Лофт загоготал. Потом сказал:
— Открою тебе маленький секрет. Я, и ты, и Зоя Дотс, и миллионы незнакомых нам людей одиноки не в силу каких-то там драматических причин. Просто другого им не дано. Может быть, человек слишком мелок для высокого чувства, или наоборот, думает, что слишком велик для него. Может, он слишком беден, чтобы предложить кому-нибудь хоть что-то, или наоборот, слишком богат и не хочет этим делиться. Может быть, он слишком труслив, или слишком вызывающ, или слишком глуп, или слишком умен. Кто его знает, этого человека?
— Во всех примерах есть кое-что общее, — заметил я. — Так или иначе, этот человек исключителен. Наверно, именно так вы и думаете о себе?
Лофт кивнул — почти незаметно.
— Раз уж мы разобрались со мной, давай посмотрим на тебя.
— Наверное, я слишком труслив.
— Не-ет, это не так. Или ты хитер, или глуп, потому что в трусости никто не признается.
Я замолчал. Похоже, я поспешил с ответом.
— А что вы скажете про Зою Дотс? — спросил я. Надо было замять паузу.
— Она одиночка по призванию, но не может смириться с этим. Она шатается по миру, раз за разом пытаясь начать все заново, но нигде у нее не получается выстроить крепких, удовлетворяющих ее отношений. В этом, возможно, даже нет ее вины.
— Складывается ощущение, что вы ее оправдываете.
— Какая разница, — Лофт пожал плечами. — Просто есть такие люди, которые автоматически вызывают симпатию, а есть и такие, что вызывают антипатию. Но это не заслуга первых, и не вина вторых. Я не оправдываю никого, просто излагаю факты, как обычно.
Он был частично прав — примерно такое впечатление и вызвала у меня Зоя, когда я впервые ее увидел. Но только частично.
— Вы, кажется, раньше упоминали, что она никого не знает и никому не нужна. Это не так. После аварии ей в больницу прислали цветы. Большой букет.
— Значит, «точки» превращаются в восклицательные знаки. А какие цветы?
— Вроде белые хризантемы. — Я остановился. — Знаете, мне в противоположную сторону. До завтра… Вячеслав Иванович.
— В противоположную? — прищурился Лофт. — Значит, сегодня ты не собираешься быть один?
Я не ответил. Только улыбнулся в ответ.
Перед дверью я ненадолго остановился, пытаясь унять волнение. В глубине души я понимал, что бояться нечего, но мне не давало покоя то обстоятельство, что я все еще не знал, как ответить на вопрос: «Зачем вы пришли?».
Сдвинув дверь в сторону, я шагнул за порог и оказался в маленькой голубой прихожей. Зоя Дотс вышла из комнаты мне навстречу. Она была в коротком черно-сером кимоно из атласного шелка, в домашних туфлях и без очков.
— Добрый день, доктор Корнельский — сказала Зоя. — Проходите, наверное, в гостиную.
Для съемного жилья квартира была неплохая. Не особенно просторная (далеко не лофт), но с дорогой мебелью и, в целом, с удачным, аккуратным интерьером.
Мы вошли в ярко освещенный зал с экраном в полстены напротив окна. На остальных двух стенах висели «живые картины» гораздо меньшего размера: в первой, между стеклами содержался настоящий снег, насыпанный тонким слоем, в другой зеленела газонная трава, растущая из невидимого слоя дерна, приклеенного к изнаночному стеклу.
Заметив направление моего взгляда, Зоя спросила:
— Какая больше нравится?
— Ни та, ни другая. Я люблю весну и осень. Одним словом, изменение.
— Интересная точка зрения... — Мы опустились на мягкий, обволакивающий диван. Перед диваном был небольшой черный столик, на котором стояла какая-то статуэтка, там же лежали очки и бейсбольная перчатка.
— Можно называть вас по нику? — спросила Зоя.
— Можно по имени, и можно на «ты». А зовут меня Виталий.
Я бросил взгляд на столик, где лежала перчатка.
— О"кей... Хотела уточнить, ты любишь наблюдать изменение или непосредственно участвовать в нем?
— О каком участии идет речь, когда мы говорим о временах года?
— За ними можно только наблюдать, так?
— Да.
— Тогда есть ли разница, за каким наблюдать? Чем листопад лучше снегопада?
— Дело не в листопаде.
Кому я вру? Сам себе? Дело именно в листопаде.
— Для тебя же есть разница? — сказал я. — Почему?
— Зимой и летом есть длинный период, когда на улице не меняется ничего. Время словно замирает. И можно забыть, что есть прошлое и что есть будущее. Что жизнь неумолимо проносится мимо, и все эти мгновения никогда не возвратятся... Только это мне и нравится.
У меня сбилось дыхание.
— Твоя точка зрения еще интереснее... — выдавил я.
— А можно тебя спросить?.. Расскажи о вашей команде, о себе? Вот ты — доктор каких наук?
— Разумеется, информационных. Докторскую я защищал по способам проникновения вирусов в ядро — дропперам, крипторам и подобной хитроумной дряни. А так, в общем-то, мы все вирусологи. Только Флэйм, девушка, которую Лофт назвал практиканткой, на самом деле не доктор. Она бывший крекер, попалась нам в одном из самых забавных случаев... Но она бог киберсети, поэтому Лофт пригласил ее работать с нами...
— А сам Лофт в какой области бог?
— Он просто бог, — сказал я. — Но докторской он не защищал и даже вуза не оканчивал. У него почетная степень.
— Я тоже не окончила. Кстати, я была студенткой по обмену. Училась в России.
— На кого?
— На психолога...
Я усмехнулся.
— Насчет Лофта, — сказала Зоя. — Раз у него почетная степень, значит он сделал что-то выдающееся в этом направлении?
— Да. Только он никогда не говорит, что. Наверное, стесняется.
— И у тебя нет даже предположений?
— Почему, есть. Скажем, я вполне допускаю, что он может быть автором антивируса, который установлен на суперсерверах по всему миру.
— Тогда бы он был мультимиллионером.
— Может, он перевел все деньги в благотворительный фонд, сделав мультимиллионером директора этого фонда?
— Видно, ты хорошо знаешь своего начальника, раз даже в этом не уверен.
— Доктора Лофта знает хорошо только доктор Лофт. Да и то не факт.
Я посмотрел на столик перед диваном.
— Так что, Виталий, у тебя ко мне какое-то дело? — спросила Зоя. — Зачем ты пришел?
Ну вот, подумал я. Тот самый вопрос.
— Я… что-то хотел спросить...
Она приподняла бровь.
— Ты играешь в бейсбол?
— Ты не это хотел спросить.
— Сначала не это. А теперь — именно это.
— Да, я играю в бейсбол.
Я выдержал паузу. Она молчала.
— И кем ты играешь? Питчером или кетчером? И я забыл, сколько иннингов в бейсболе?
— К чему все эти вопросы?
— Хочу подловить тебя. Если бы ты была в любительской бейсбольной команде, у тебя было бы достаточно знакомых, чтобы не сидеть дома одной воскресным вечером.
— По-твоему, я вру?!
— Да. Впрочем, согласен, это было косвенное доказательство. А вот прямое. — Я поднял перчатку со стола. — У нее есть визуальный порт. Едва ли ею играют в настоящий бейсбол. Разве только в сёркле.
Она поджала губы. Сказала:
— Ты тоже солгал мне. Не хочешь изложить правду? Насчет времен года?
— Ну ладно. Времена года? Я их все ненавижу. По... своим причинам.
— Я даже знаю, что это за причины. Ведь я говорила про тебя, а не про себя, когда рассказывала о зиме и о лете.
Я покачал головой.
— Круто... Считай, ты меня покорила.
— Значит, ты послушаешь меня, если я предложу сходить вместе куда-нибудь? Например, в кафе?
Я почувствовал себя так, словно опять стоял перед дверью в квартиру Зои Дотс.
— Мы не можем быть вместе. Мы слишком похожи.
— Ты слишком серьезно все воспринимаешь, — рассмеялась она. — Я всего лишь пошутила.
Она отвела взгляд в сторону и вниз. Не знаю, пошутила ли она. А вот обиделась — это точно.
— Так откуда перчатка? — спросил я.
— Мне прислали ее сегодня через службу доставки, и ты прав, это действительно какой-то девайс. К сожалению, без ядра, которое вы опять у меня забрали, я не смогла разобраться, что это такое.
Может, это и впрямь обычная геймерская перчатка для игры в бейсбол в серкле? Может, служба доставки просто ошиблась?
Тогда почему я раньше таких перчаток не видел?
Жаль, не сходил вчера на выставку. Возможно, нашел бы там что-нибудь подобное, и вопросов бы сейчас не было.
— У меня есть кернел, — сказал я. — Попробуем?
Она пожала плечами, мол, пожалуйста.
Было не очень-то безопасно подключаться к подозрительному девайсу с банальным программным файрволлом, но я решил рискнуть. Не трусить же перед девушкой. Я соединился с перчаткой, и тут же в воздухе появилась панель ввода логина.
— «Устройство персонифицировано. Введите ваше имя для доступа. Посторонний доступ категорически запрещен», — прочитал я.
— Вы… — она оговорилась. — Ты знаешь, как меня зовут. Вводи.
Я кивнул. Вызвал визуальную клавиатуру, спроецировав ее на стол для удобства, и, стуча по нему пальцами, набрал «Зоя Дотс».
— Не подходит, — сообщил я. — Зоя — ведь не настоящее имя? Правильно — Зой?
Она кивнула. Я попробовал «Зой Дотс», потом только имя в двух вариантах, а затем фамилию. Безрезультатно.
— А если по-английски? — догадалась Зоя.
— Снова «Доступ запрещен», — вздохнул я. — Тут что-то не так. Ты не возражаешь, если мы посмотрим эту перчатку в центре?
— Как скажешь.
Понедельник — день тяжелый. Очень хочется сладкого. Я вошел в кабинет с пончиком и картонным стаканом чая в руках. Команда уже была в сборе — все четверо, включая сенбернара Господина и доктора Лофта. Похоже, новое дело заинтересовало Лофта так сильно, что он больше решил не опаздывать.
Я достал бейсбольную перчатку, кинул ее на конференц-стол и, предупреждая очевидные вопросы, изложил, откуда она взялась.
Все принялись заинтересованно ее рассматривать. Даже сенбернар с любопытством обнюхал ее. Когда очередь дошла до Лофта, он спросил:
— Октябрь, с чего ты взял, что эта штука связана с нашим делом?
— Она отправлена анонимно нашей клиентке через два дня после инцидента. Едва ли это случайность. Хотя явной взаимосвязи я, понятное дело, не вижу.
— Почему ее имя не подходит для авторизации?
— Этого я сказать не могу.
Лофт посмотрел на остальных.
— Возможно, перчатка предназначается не клиентке, — предположил Дима.
— Или это не ее настоящее имя, — сказала Майя.
— Ладно, — махнул рукой Лофт. — Передадим ее техникам. Если не смогут взломать пароль, хотя бы скажут, что это такое.
Я сел за стол и с удовольствием отпил чаю. То, что сейчас скажет Лофт, меня очень порадует.
— Флэйм и Деймос, займитесь записанным киберпотоком. Прогоните его на эмуляторе, повторно проверьте характеристики. До тех пор, пока не выдадите нормального рабочего предположения, домой не пойдете. Октябрь, ты займешься Господином.
Через минуту кабинет опустел, и мы остались с сенбернаром один на один.
— Ну что смотришь? — спросил я. — Дай лапу?
К моему удивлению, он дал лапу. А затем вторую. Смотря при этом на стол. Но, к сожалению, пончик я уже съел, там оставалась только салфетка.
Я откинулся на спинку стула и стал размышлять.
Как стирается реальный мир? Вопрос, по всей видимости, неправильно поставленный, потому что реальный мир стереть нельзя, однако я своими глазами видел это.
Можно, конечно, пофантазировать, предположить, что какой-то гений открыл параллельную реальность и решил таким образом продемонстрировать это остальным. Или он открыл, что весь наш мир — киберпространство, а дальше то же самое.
Но это все чепуха. Есть вопросы и поважнее.
Кто убегал от Зои в пустом мире? Автор вируса? Зачем он показался ей на глаза, почему не исчез, как остальные люди?
Причем тут бейсбольная перчатка? Связана ли она вообще с нашим делом? И если да, то каким невероятным образом? Зачем ее прислали Зое Дотс?
И значит ли последнее, что все события — не случайны? Что ее кернел целенаправленно заразили вирусом? С какой целью? Ее хотели убить? Кто и зачем?
Сенбернар выбрался из-под стола и заходил по комнате кругами. Интересно, Лофт его не выгуливает с утра?
— Все ясно, дружище, — сказал я. — Пойдем.
Мы вышли на задний двор, с фонтаном, монументом Аарона Гербера, и множеством газонов, окруженных живой изгородью.
Народу было немного, и я решил позволить Господину пробежаться. В конце концов, Лофт же его отпускал.
Сенбернар, едва почувствовав свободу, радостно гавкнул и помчался к фонтану. Я заторопился следом, не прекращая раздумий.
Причастна ли к вирусу СИЛА? Почему СИЛА выбрала Зою Дотс? Потому что она — гражданка США?
Я обошел фонтан. Собаки не было.
Все-таки не думаю, что всему виной СИЛА, и этому есть простое основание. Поток, записанный сниффером, был довольно объемный — настолько, что его невозможно передать с другого континента без задержки. А никаких лагов я не увидел, вот в чем штука.
Обойдя фонтан повторно, я так и не нашел сенбернара. Черт... Где теперь его искать? Если он потеряется, не видать мне головы...
Я пошел по дорожкам, заглядывая за каждый угол живой изгороди, и зычно кричал:
— Господин! Господин!
На меня оглядывались. Ну и кличка у собаки! Хорошо еще не Повелитель...
Потом я сдался. Вызвал Лофта и виновато сообщил о проблеме.
— Идиот. Как ты умудрился?
Я промолчал.
— Сейчас включу ошейник и передам тебе картинку.
А почему он раньше был выключен? — подумалось мне. Но я опять промолчал.
— Готово.
Передо мной появилась трехмерная картинка заднего двора диагностического центра с фигуркой человека в центре. Это, видимо, была моя персона.
— Ничего себе ошейник, — восхитился я. — Мой автомобильный навигатор так не рисует.
В стороне от фигурки появилась красная точка.
— Он позади тебя! — воскликнул Лофт. — Идиот!..
— Может, хватит меня оскорблять?! — возмутился я, подходя к живой изгороди. За ней, на газоне, действительно обнаружился Господин, весело игравший с болонкой.
— Да нет, — сказал Лофт, — это я идиот. Я все понял. Флэйм, Деймос... — Он помолчал. — База вызывает Пламя!
— Что случилось, Лофт? — услышал я голос Майи.
— Уже установили эмулятор?
— Еще нет. Мы возимся с настройками...
— Закругляйтесь. Вы, кажется, хотели день покоя? Получайте. Вы трое свободны на сегодня. Приходите завтра утром.
На этом Лофт отключился, и пропала конференц-связь с остальными.
Несколько растерянный, я вернулся в кабинет, обсудил с Майей и Димой поведение Лофта, но что же он понял, мы так и не догадались.
Уже в десять часов утра мы покидали центр. На улице я заметил старого знакомого, чернокожего джентльмена, который обходил здание с торца, явно куда-то спеша.
Кивнув в его сторону, я спросил:
— Когда он говорил с Лофтом, он видел сенбернара?
— Нет, — сказала Майя. — Они пересеклись в коридоре.
— О чем они говорили, вы тоже не слышали?
— Не слышали. Думаешь, Господин — собака этого человека?
— Я уверен, что это не собака Лофта, — сказал Деймос. — Возможно, этого человека, возможно, соседки Лофта, которая действительно заболела и попросила за ней присмотреть. Но это точно не собака Лофта.
— По-моему, никакой соседки не существует, — сказал я.
Возможно, стоило догнать чернокожего джентльмена и спросить породу его собаки. Но мы уже дошли до выезда с автостоянки. К тому же, воевать с Лофтом больше не хотелось. Пускай он сам разбирается. Поэтому я просто вызвал «Порше».
Это утро я провел в приподнятом настроении. Неудивительно — сегодня нас ожидала развязка. Правда, меня не покидало ощущение, что я и сам мог бы догадаться до решения. Хотя бы выстроить гипотезу, чтобы посмотреть, подтвердиться ли она.
Но, наверное, я боялся, что не вспомню всех деталей и не сумею повторить дедуктивную цепочку Лофта.
И кроме того, гораздо приятнее, когда тебе все выкладывают на блюдечке, не правда ли? Зачем тогда напрягать извилины?
Успокаивая себя тем, что так поступило бы большинство на моем месте, я бросил самоанализ и отправился на работу.
Перед дверью в кабинет меня перехватил Лофт.
— Когда я выйду, предложи обсудить меня, — шепнул он.
Мы вошли вместе.
— Доброе утро, — сказал я, посмотрев на Деймоса и Флэйм. И на Зою Дотс.
Я опустился на стул напротив Майи. Зоя сидела рядом с ней. Господин, как всегда, лежал под столом.
— Вы скоро начнете? — спросил Деймос. — Вроде все в сборе?
— Еще нет, — ответил Лофт. Едва он это сказал, как дверь открылась, и вошла девушка. С пышной гривой рыжих вьющихся волос и безумно красивая. — А теперь да... — произнес Лофт.
— Извините... — сказала рыжая девушка. — Мне было сказано...
— Да-да! — кивнул Лофт. — Конечно! Проходите! Просто поучаствуйте в нашем небольшом представлении.
Она пересекла комнату и села рядом со мной. Я посмотрел на Зою Дотс. Та не сводила расширившихся глаз с новоприбывшей. Они знают друг друга, понял я.
— Дамы и господа, подключайтесь к моему кернелу, — велел Лофт. — Даю гарантии, что это полностью безопасно. Мне — вы можете верить.
Мы выполнили требование. Рыжая и красивая — с явной неохотой. А Зоя, дотронулась до хромированного шарика, висевшего у нее на шее, быстро и без колебаний.
— Я сейчас вернусь, — сказал Лофт и оставил нас.
Раздалась таинственная и громкая мелодия, издаваемая микродинамиками на концах дужек очков. Но уже через несколько секунд музыка пропала, и установилась тишина.
У меня появилось ощущение, как будто что-то было не так. Я посмотрел по сторонам. Глянул за голову Майи, на кружку, стоящую рядом с кофебоксом. Только что там горел визуальный термометр, показывая двадцать один градус. Теперь — нет. Лофт отключил киберпространство? Кстати, о Лофте...
— Давайте обсудим Лофта, — сказал я.
— Что его обсуждать? — удивился Дима. — Подождем, сейчас выкинет какую-нибудь шутку, только и всего.
— Вы как к нему относитесь?
— Уважаем, — сказал Дима.
— Безмерно, — кивнула Майя.
Похоже, все чувствовали какой-то подвох в происходящем.
— Я тоже его очень-очень уважаю, — произнес я.
— Хватит подлизываться! — сказала пустота передо мной голосом доктора Лофта.
Я чуть не вскрикнул. Мы повскакивали со своих мест, срывая очки с глаз. Только рыжая девушка осталась сидеть.
Доктор Лофт лежал на столе, задумчиво смотря в потолок.
— Как вы это сделали? — воскликнул я.
— Фокусник не раскрывает своих секретов, — сказал Лофт, спускаясь на пол. — Хорошо, что я не фокусник. Можете отключиться. Больше сюрпризов не будет.
Мы все уселись обратно. Лофт остановился за стулом во главе стола, положив руки на спинку. И начал свой рассказ:
— Сеть объединяет людей. Подчас — людей с совершенно произвольной общностью интересов. Романтиков, любящих молча посмотреть на закат, клептоманов, соревнующихся, кто больше утащит из супермаркета, пикаперов, каждый день цепляющих себе девушек на ночь. Сообщества бывают самые разные, в том числе, как это ни парадоксально, — сообщество одиночек. Назовем его сообществом светлячков, мне нравится, как это звучит. Попасть в него не так просто. Для этого нужно иметь хотя бы одного знакомого, причем такого, чтобы он уже был светлячком. И вас по его просьбе включат в сообщество. Но как отличить светлячка от обычных насекомых? В мегаполисе миллионы пчел и муравьев, которым не известны такие проблемы. Есть отличное решение. Исключить остальных из этого мира, оставив только своих. Мы долгое время не могли понять, как это происходит, но если уж начистоту, до этого следовало догадаться сразу же. Эту загадку решил новый член нашей команды. Как только я увидел трехмерную карту с отметкой потерявшегося сенбернара, до меня дошло. Достаточно сканировать пространство, какой-нибудь сектор, куда любят слетаться светлячки. Создать его полную визуальную модель и передавать на кернелы членов сообщества. То есть — нарисовать все заново. Современные технологии это позволяют. Правда, получается квазистатичная картина: если ветер в модели остается, то динамические объекты не фиксируются. Это считалось не существенным — никто не предполагал, что новенького собьет невидимая машина... Ну, и разумеется, можно запрограммировать киберпоток так, чтобы светлячков он не зарисовывал. Также несложно сделать несколько моделей сектора в разное время, чтобы программа выбирала вариант, наиболее похожий на реальный мир в данный момент. Если похожего не найдется, наверное, визуализация просто не запустится. Но как подменить стандартный поток с домена? Нельзя же просто установить новенькому программу, объяснив, что случится дальше! Ведь таинство посвящения — это так важно! Приглашенный крекер или, что вероятнее, крекер-светлячок поможет это осуществить. Удачно, когда новенький пользуется программами, не сертифицированными «Макрософтом». В них всегда есть дыры. Например, в бесплатном мессенджере «Abyss» при передаче текстового сообщения в первых байтах указывается его длина, которую, зная устройство вип-протокола, легко изменить. Точнее, уменьшить. Что вызовет на стороне получателя переполнение буфера. Старый термин, который сохраняется актуальным, потому что за сто пятьдесят лет человечество не выдумало ничего лучше представления информации байтами и обработки байтов регистрами процессора. Всего лишь увеличилась разрядность... При переполнении буфера правильно подготовленный хвост сообщения, невидимый получателю, попадает в регистры и производит все то, что нужно крекеру. В результате киберпоток в определенных секторах поступает не с домена, а с чьего-то персонального кластера, где подготовлена полная визуальная модель. Но наш крекер — шутник, пошел еще дальше: он решил подставить СИЛУ и добавил в служебную информацию подменного киберпотока ее вип-адреса... Кстати, для благозвучности, я не называю СИЛУ оригинальным, английским наименованием... А вот бейсбольную перчатку, сканер, о котором я уже говорил, программировал, очевидно, другой человек. Потому что панель ввода логина снимается из диспетчера процессов, и сканер становится полностью функциональным. Сразу становится понятно, для чего он нужен. А микрокамеры на поверхности невидимы человеческому глазу, так что горе-кодер помог мне определить назначение этой штуки. Полагаю, она присылается всем новоиспеченным светлячкам, чтобы они могли добавить свое любимое место в общую модель и найти собратьев, не вылезая из кокона... Возможно, я в чем-то ошибаюсь. Если это так, надеюсь, меня поправят.
Лофт замолчал, и некоторое время молчали все. Тишину нарушила Зоя.
— Получается, во всем виновата ты? — спросила она рыжую девушку. — Лиса?
Та посмотрела на Зою. В красивых глазах блестели слезы.
— Прости... — шепотом ответила она.
— Лофт, как вы определили дроппер? — спросил я.
— Меня подтолкнула к разгадке твоя подсказка про белые хризантемы. — Он посмотрел на остальных. — За что мне нравится Октябрь? Не только за созревающую «Антоновку». Он отлично подмечает детали, хотя и совершенно не умеет делать из них выводы. Большой букет означал, что кто-то чувствует себя виноватым. Кто-то из знакомых пострадавшей. Я просмотрел все события на кернеле после инцидента, а затем перед инцидентом. Текстовое сообщение, о котором несколько дней назад говорил Деймос, почти не вызывало подозрений. Но оно было слишком уж большого размера для своего короткого содержания.
— Что теперь станет с нами? — спросила рыжая девушка с ником Лиса.
— Ничего, — ответил Лофт. — Ловить крекера — не наша забота, хотя сейчас ему лучше поостеречься. И мессенджер будет заблокирован, пока автор не закроет уязвимость или не предоставит нам исходный код. А вы, светлячки, свободны... Летите.
Зоя Дотс поднялась и подошла к нему.
— Вы знаете, это даже хорошо, что все так получилось, — тихо сказала она. — Мне жаль лишь того, что мы с вами не познакомились. Мне кажется было бы правильно хотя бы попытаться. Но в мире нет ни верных путей, ни правильных поступков, не правда ли? — слабо улыбнулась она. — Таков ваш девиз, да?.. Наверное, больше вы не скажете мне ни слова, потому что я перестала быть вашей клиенткой и вы потеряли ко мне интерес... Мы больше никогда не увидимся, Вячеслав. Это был недолгий путь, но я была рада встретить вас.
Лофт внимательно выслушал ее.
И лишь кивнул в ответ.
Ведя сенбернара на поводке, Лофт подошел к фонтану. Оглянулся на здание диагностического центра. Проверил «Биноклем» окна, но похоже, за ним никто не следил. Тогда он присел перед собакой и разомкнул карабин.
— Ну вот и все, — сказал Лофт. — Пора прощаться. Спасибо за компанию.
Сенбернар не сводил с него взгляда. Словно он понимал.
Мы все нужны друг другу. Даже когда не замечаем или стараемся не признавать этого. Одиночки несчастны в этом мире.
— Больше он тебя не потеряет, — пообещал Лофт. Включил ошейник и, не оборачиваясь, пошел к стоянке. Если бы он обернулся, то увидел бы, что Господин идет следом.
Но Лофт не обернулся.
Дома его ждала бейсбольная перчатка. Ни Дотс, ни Лиса не напомнили о ней, и она осталась у Лофта. Перчатка хранила последний секрет: почему имя бывшей клиентки не подходит для авторизации?
Он мог узнать у Лисы ответ, но не стал. Возможно, он догадывался?
Ведь перчатка была прислана в воскресенье. А уже в пятницу Дотс могла рассказать всем светлячкам о том, кто занимается ее проблемой.
Лофт подключился к перчатке. Разумеется, он мог использовать ее и без авторизации. Но он решил проверить догадку — и ввел два слова в качестве логина.
«Доктор Лофт».
«Доступ разрешен», — высветилось в ответ.
Взгляд Лофта остекленел. Перчатка предназначалась ему.
Я стоял на террасе со стаканом коньяка в руке. Внизу сиял тысячами звезд накрытый тьмой город. А вверху звезд не было. Небо заволокло плотными черными тучами, в которых змеились молнии. Но дождь еще не начался.
Где-то за спиной, внутри квартиры послышался шум. Сделав еще глоток, я вернулся в комнату. На первый взгляд все было в порядке, но секунду спустя я опять услышал тот же шум из прихожей.
Смех.
Свет в коридоре я забыл выключить и поэтому сразу увидел Майю, стоящую с этой стороны входной двери. Она явно была навеселе.
Перед тем, как я что-то спросил, пространство сотряс отдаленный, но сильный дробный грохот. Одним словом, гром.
— Как ты вошла? — задал вопрос я.
— Открыла дверь и вошла, — ответила Майя. — Я же пришла к тебе.
— Зачем ты пришла?
— Я поняла, что не могу без тебя. Не смотри так. Иди ко мне.
Это было странно. Очень странно. Но я поверил. Сделал шаг к ней.
И она засмеялась. Гулко. Раскатисто. Невозможно — так, как не может смеяться любимая мной девушка.
Меня прошиб холодный пот. В одно движение я сбросил очки на пол.
Но даже с высоты своего роста слышал, как снизу доносится противный, незнакомый смех.
Я прислонился к стене, закрыв глаза. Кажется, я знаю, кто будет следующим клиентом доктора Лофта...
Мой кернел взломан.