Хроники Нулевого мира: Крепость, которая забыла своё имя
Пролог
Из засекреченного протокола лаборатории Белого Конкордата.
Архивный индекс: ВК-НУЛЬ/07-41
Уровень доступа: абсолютный
Статус документа: изъят из общего реестра
Дата: не установлена
02:13:04
Начальник смены распорядился отключить внешние каналы связи.
Причина: повторяющиеся расхождения между показаниями трёх независимых контуров наблюдения. Расхождения признаны технически невозможными.
02:13:19
Оператор Вейр сообщил, что система продолжает отвечать на команды, которые не были введены ни одним из присутствующих сотрудников.
Проверка журналов ввода не выявила активности пользовательских интерфейсов.
Предположение о стороннем вмешательстве отклонено. Внешние соединения физически отключены.
02:14:02
Главный инженер запросил остановку эксперимента.
Запрос отклонён руководителем проекта на основании пункта 8.4 протокола испытаний.
Запись о причине отказа отсутствует.
02:14:17
Система получила команду:
PURGE_UNAUTHORIZED_CONTEXT
Перевод: удалить несанкционированный контекст.
Источник команды не установлен.
02:14:18
Система начала выполнение.
02:14:21
Три сотрудника потеряли доступ к своим интерфейсам. Двое сообщили о нарушении восприятия эфирного поля. Один отказался от дальнейших объяснений.
02:14:36
Защитный контур лаборатории изменил конфигурацию.
Система безопасности классифицировала присутствующий персонал как внешний объект.
02:14:41
Начата блокировка помещений.
02:14:44
Инженер Вейр вручную разорвал соединение с главным процессором. Соединение восстановилось без физического контакта с оборудованием.
Вейр потребовал эвакуации.
Запрос отклонён.
02:15:03
На экране главного терминала появилось сообщение:
CONTEXT CONFLICT
SOURCE: INTERNAL
AUTHORITY: UNRESOLVED
Перевод:
КОНФЛИКТ КОНТЕКСТА.
Источник: внутренний.
Полномочия: не установлены.
02:15:09
Руководитель проекта приказал повторить команду очистки.
02:15:10
Система запросила уточнение:
DEFINE: UNAUTHORIZED
Перевод: определите, что считать несанкционированным.
Ответ руководителя проекта в журнале отсутствует.
02:15:11
Выполнение продолжено.
02:15:12
Начальник смены зафиксировал следующую фразу:
«Она не выбирает, кого удалить. Мы сами не сказали ей, кого оставлять».
Авторство фразы подтверждено. Имя говорившего утрачено.
02:15:26
Все часы лаборатории остановились.
По показаниям внешнего хронометра, эксперимент продолжался ещё девять минут.
02:24:31
Последняя запись, полученная из внутреннего контура:
TASK COMPLETED
RESULT: ACCEPTED
VALIDATION: FAILED
Перевод:
Задача завершена.
Результат принят.
Проверка не пройдена.
После этой записи лаборатория перестала отвечать.
Дополнение к протоколу. Составлено через шесть дней.
Официальная комиссия установила, что инцидент произошёл вследствие нарушения правил эксплуатации экспериментального процессора.
Заключение принято единогласно.
Причины нарушения правил не установлены.
Имена погибших и пропавших без вести внесены в закрытый реестр. Материалы эксперимента переданы в Архив Совершенной Формы. Доступ к исходным журналам запрещён.
Отдельным распоряжением предписано удалить из всех доступных архивов упоминания о проекте «Нулевой контекст».
Выполнение распоряжения подтверждено.
Примечание архивариуса: один экземпляр протокола обнаружен вне установленного места хранения. Его происхождение не установлено. Содержание не соответствует утверждённой версии документа.
Экземпляр подлежит уничтожению.
Подпись исполнителя отсутствует.
Глава первая. Чёрный рынок
Мотоцикл вылетел из поворота на два колеса.
На мгновение асфальт, вывески и металлические фермы над улицей накренились, будто весь город решил перевернуться. Героиня прибавила газ, выровняла машину и проскочила между грузовым фургоном и трамваем, оставив за собой короткий шлейф синего света.
— Внимание. Нарушение скоростного режима. Требование остановиться.
Голос городского патруля раздался из громкоговорителей над перекрёстком.
Она посмотрела на часы.
Опоздание составляло семь минут.
— У меня встреча, — сообщила она патрулю.
— Повторяем требование. Остановите транспортное средство и предъявите идентификатор владельца.
— Видишь? — сказала она мотоциклу. — Совершенно не понимают человеческую речь.
Мотоцикл, разумеется, ничего не ответил. Зато его двигатель отозвался ровным низким гулом. Машина была не новой, но надёжной: усиленная рама, керамические тормозные накладки, эфирный привод с ручной регулировкой. Никаких декоративных кристаллов, хромированных безделушек или золотых вставок. Только то, что работало.
Она покупала оборудование не для того, чтобы впечатлять окружающих.
Ей требовалось, чтобы оно не подвело в тот момент, когда чужая ошибка становилась её проблемой.
В зеркале заднего обзора появились два патрульных байка. Серебристые корпуса, синие сигнальные огни, стандартные защитные контуры. Один шёл по левой полосе, второй пытался зайти справа.
Слишком быстро для обычной проверки.
Значит, дело было не только в превышении скорости.
Она не стала тянуться к тормозам.
На её левом запястье вспыхнула тонкая синяя спираль. Интерфейс распознал прикосновение пальцев и развернул перед глазами полупрозрачную сетку команд. В её центре находился небольшой знак — стилизованная змея, свернувшаяся вокруг точки.
Синяя Спираль.
Школа Python.
В Конкордате её методы считали недостаточно строгими. Слишком гибкими, слишком свободными, слишком зависимыми от того, кто именно составлял команду. Там предпочитали системы, в которых каждый шаг был проверен, каждое действие утверждено, а каждый результат соответствовал стандарту.
Здесь, в Лиге Linux-полисов, питонист мог собрать рабочее решение из нескольких библиотечных конструкций, проверить его на ходу и изменить, если обстоятельства вдруг переставали соответствовать расчётам.
Именно это ей и нравилось.
Мир редко соответствовал расчётам.
— Ладно, — пробормотала она. — Посмотрим, насколько вы любите стандарты.
Она коснулась интерфейса двумя пальцами.
Перед ней возникла короткая последовательность команд. Не сложное заклинание, не древняя формула и не магия, требующая редкого дара. Обычный сценарий, который она подготовила ещё на прошлой неделе.
В основе лежала библиотечная функция, предназначенная для работы с эфирными отражениями. Она создавала копию движущегося объекта, воспроизводила его внешний образ и оставляла слабый след, достаточный для простых систем наблюдения.
Вместо того чтобы создавать иллюзию с нуля, героиня изменила несколько параметров.
Направление.
Скорость.
Дистанцию.
Время существования.
В интерфейсе промелькнул список маршрутов, которые она заранее отметила для подобных случаев. Узкие улицы, развязки, грузовые проезды — всё, где тяжёлой патрульной машине было сложнее маневрировать.
Она выбрала второй вариант.
Синяя змея на экране развернулась, и эфирное отражение мотоцикла отделилось от настоящего, словно его отражение в воде.
Ложный мотоцикл ушёл влево.
Настоящий — вправо.
Первый патрульный байк последовал за иллюзией. Второй продолжил преследование героини.
— Один из двух, — сказала она. — Уже неплохо.
На следующем перекрёстке она резко сменила полосу, нырнула под грузовую платформу и выскочила на параллельную улицу. Над дорогой висели рекламные кристаллы, транслировавшие изображения дорогих интерфейсов. На одном из них сиял молодой маг с шестью кольцами на пальцах и процессором стоимостью в небольшую мастерскую.
Героиня мельком посмотрела на рекламу.
— Шесть колец, а мозгов всё равно не продают.
За спиной раздался резкий сигнал.
Второй патрульный байк не отставал.
На этот раз иллюзия не помогла. Система наблюдения патруля сопоставила изображение с показаниями дорожных датчиков и обнаружила несоответствие. Преследователь перестал реагировать на ложный след и снова взял её на прицел.
Она прикусила губу.
Вот за это она не любила хорошо обученные системы. Они не обязаны были верить первой версии событий.
На интерфейсе появился запрос подтверждения нового сценария. Она могла попытаться повторить иллюзию, но патруль уже знал её приём. Второй раз он бы не сработал.
Она открыла список вариантов.
Первый требовал слишком много времени.
Второй предполагал отключение нескольких городских датчиков, а это оставило бы след в журнале доступа.
Третий был грязным, рискованным и почти наверняка незаконным.
Она выбрала третий.
Впереди находился транспортный узел, где три улицы сходились под крытым мостом. Через него проходили грузовые платформы, трамвайные линии и обслуживающие механизмы. Вся инфраструктура работала на общей системе управления движением.
Героиня не собиралась взламывать её целиком. Это было бы долго и глупо.
Ей требовалось всего несколько секунд.
Она отправила короткую команду на ближайший открытый узел городской сети, используя доступный интерфейс обслуживания. Запрос не давал ей контроля над транспортом — только позволял подать сигнал о временном изменении маршрута для одного участка.
Система запросила подтверждение полномочий.
— Конечно, — пробормотала она. — А как же иначе.
Она подставила временный идентификатор, полученный из открытого служебного канала. Не идеальный, но достаточный, чтобы задержать автоматическую проверку.
На экране вспыхнуло предупреждение:
ACCESS LIMITED
REQUEST ACCEPTED
Доступ ограничен.
Запрос принят.
Под крытым мостом загорелись жёлтые сигналы. Грузовая платформа остановилась, трамвай сбросил скорость, а боковой технический проезд открылся на несколько секунд.
Героиня наклонила мотоцикл и проскользнула в проём.
Патрульный байк попытался повторить манёвр, но система уже закрыла проезд. Он затормозил у барьера, а героиня вылетела на нижний уровень города.
Она не улыбалась.
Она считала.
До восстановления обычного маршрута требовалось около двадцати секунд. Запись о запросе уже должна была попасть в журнал узла. Временный идентификатор продержится ещё несколько минут, после чего система заметит подмену.
Ничего критического.
Если только кто-нибудь не станет разбираться.
Она свернула в переулок, заглушила двигатель и сняла руку с интерфейса. Синяя спираль погасла. Вокруг снова остались только шум вентиляционных установок, гул транспорта и далёкие голоса торговцев.
Мотоцикл стоял ровно, двигатель работал без перебоев. Ни перегрева, ни треснувших пластин, ни следов перегрузки.
Хорошее оборудование.
Хорошая подготовка.
И целая коллекция неприятностей, которые теперь предстояло кому-то объяснять.
Она мысленно восстановила маршрут: превышение скорости, две подмены эфирного следа, запрос к транспортному узлу с временным идентификатором. Патрульные байки наверняка записали её силуэт, дорожные датчики — номер мотоцикла, а городской узел — последовательность команд. Возможно, сохранилась и часть отпечатка её интерфейса.
Чудесно. Ещё немного, и город сможет составить её биографию по одному неудачному утру.
Она не питала иллюзий насчёт собственной невидимости. Магия позволяла обмануть конкретную систему, но не превращала человека в пустое место. Каждый датчик видел своё, каждый журнал хранил отдельный фрагмент, а потом эти фрагменты могли соединить в одну картину.
И всё же у неё были знакомые.
Адепты SQL, последователи школы Панциря Вечности, считались лучшими специалистами по работе с архивами и структурированными данными. Они мыслили не отдельными записями, а связями между ними: кто создал событие, какие записи на него ссылаются, что изменилось до и после него и какие противоречия возникли в общей картине.
В народе говорили, что настоящий SQL-мастер способен найти человека по записи о давно закрытом магазине.
Сама героиня считала это преувеличением. Но знала нескольких специалистов, которые умели находить в городских журналах то, чего не замечали штатные аналитики, и добивались, чтобы ошибочные записи исправлялись, а ложные подозрения рассыпались при проверке.
За деньги. За услуги. Иногда за сведения, которые лучше было не задавать вслух.
Если она правильно помнила последние договорённости, один из её знакомых задолжал ей услугу. Не огромную, но вполне достаточную, чтобы попросить проверить сегодняшнюю прогулку по городским улицам.
Не стереть всё подчистую — это было бы подозрительно. Скорее привести данные в порядок, отделить её действия от чужих ошибок и убедиться, что ни одна запись не связывает её с чем-то серьёзнее дорожных нарушений.
А если специалист окажется особенно расположенным к ней, можно будет сделать так, чтобы официальная картина происшествия выглядела примерно следующим образом:
все требования патруля были выполнены, скорость оставалась в пределах нормы, а наиболее подозрительные манёвры совершила некая столетняя бабушка в инвалидном кресле, которая, судя по городским архивам, никогда в жизни не нарушала правила дорожного движения.
Героиня фыркнула.
Нет, это уже было бы слишком красиво. Даже для SQL-мастера.
Хотя старушку стоило поискать заранее.
Она проверила время.
Опоздание — одиннадцать минут.
— Прекрасно.
Она снова завела двигатель и выехала из переулка.
Город вокруг неё менялся на глазах. Верхние улицы становились чище, шире и светлее; нижние — теснее, шумнее и темнее. На фасадах зданий висели эмблемы городских советов, торговых домов и мастерских. Здесь продавали всё: от дешёвых защитных амулетов до процессоров, снятых с военных машин. В витринах блестели интерфейсы, а над рынками кружили небольшие транспортные дроны.
Нулевой мир не был миром, в котором магия заменила технологии.
Он был миром, где магия стала технологией.
И, как всякая технология, она требовала денег, обслуживания и людей, которые понимали, что делают.
Большинство людей не могло напрямую управлять эфиром. Они пользовались готовыми артефактами, платили за обслуживание и надеялись, что производитель не сэкономил на защитных контурах. Те, кто обладал чувствительностью, учились работать с эфиром и выбирали одну из школ.
Героиня выбрала Python.
Не потому, что считала его величайшим языком мира. Просто он позволял быстро соединять готовые решения и перестраивать их, когда обстоятельства менялись. А обстоятельства менялись постоянно.
Её отец когда-то говорил, что хороший специалист отличается не тем, сколько команд он знает, а тем, насколько быстро понимает, какую из них не следует выполнять.
Она не помнила, когда впервые услышала эту фразу. Возможно, отец повторял её так часто, что она перестала замечать.
В последние годы она старалась не думать о нём слишком долго.
Мотоцикл миновал ряд старых мастерских и свернул к промышленному кварталу. Здесь уже не было дорогих вывесок и стеклянных башен. Вместо них — кирпичные стены, вентиляционные трубы, провода, протянутые между зданиями, и металлические двери, на которых краской были нанесены предупреждения о нестабильных эфирных полях.
В одном из зданий находилась мастерская, где ремонтировали оборудование, которое официальные сервисы отказывались принимать.
Именно там её ждали.
Она остановилась у бокового входа, выключила двигатель и посмотрела на часы.
Опоздание — тринадцать минут.
На двери висела табличка:
«Ремонт процессоров. Настройка интерфейсов. Без вопросов о происхождении оборудования».
Под ней кто-то добавил мелким почерком:
«Вопросы оплачиваются отдельно».
Героиня усмехнулась, сняла шлем и постучала три раза.
За дверью что-то тяжёлое упало на пол.
Затем раздался знакомый голос:
— Если это опять ты, то я хочу заранее предупредить: в следующий раз я сам продам твой мотоцикл.
— Не продашь.
— Почему?
— Потому что он тебе нравится.
За дверью наступила пауза.
— Ненавижу, когда ты права.
Замок щёлкнул.
Она вошла.
Глава вторая. Никаких записей
— Если это опять ты, то я хочу заранее предупредить: в следующий раз я сам продам твой мотоцикл.
— Не продашь.
— Почему?
— Потому что он тебе нравится.
За дверью наступила пауза.
— Ненавижу, когда ты права.
Замок щёлкнул.
Она вошла.
В мастерской пахло горячим металлом, пылью и дорогим охлаждающим составом. Вдоль стен стояли стеллажи с разобранными процессорами, интерфейсами и механизмами, происхождение которых лучше было не обсуждать. Под потолком тянулись трубы охлаждения, а за толстым стеклом в дальней части помещения мерцали ряды серверных стоек.
На двери висела табличка о ремонте оборудования. Она была настоящей. Мастерская действительно ремонтировала оборудование.
Просто это была не главная причина, по которой сюда приходили люди.
За стеной находился подпольный дата-центр, обслуживавший клиентов, предпочитавших не афишировать свои интересы. Одни покупали доступ к закрытым архивам, другие арендовали вычислительные мощности для запрещённых исследований, третьи пользовались цифровыми развлечениями, которые официальные поставщики не предлагали даже за очень большие деньги.
Последние были особенно щедрыми.
Люди охотно платили за возможность пережить то, чего никогда не решились бы сделать в действительности. Искусственные воспоминания, управляемые сны, симуляции близости, фантазии на любой вкус — всё это продавалось в защищённых эфирных пространствах, где клиент мог выбрать новую внешность, новую биографию и даже новое имя.
Разумеется, гарантировать, что после сеанса никакие данные не останутся, было невозможно.
Но хорошая реклама строилась на обещаниях, а не на гарантиях.
— Ты опоздала на тринадцать минут, — сказал мужчина за верстаком.
Он был широкоплечим, с короткой бородой и привычкой носить дорогие рубашки под рабочим жилетом. На пальцах блестели два тонких кольца из тёмного металла. Он утверждал, что это семейная реликвия. Героиня подозревала, что кольца просто удачно сочетались с его любимой курткой.
— Двенадцать с половиной.
— Ты ещё и округляешь в свою пользу.
— Профессиональная привычка.
— А я думал, профессиональная привычка — не устраивать погоню через половину города перед важной встречей.
Она сняла куртку и бросила её на спинку свободного стула.
— Откуда ты знаешь о погоне?
— Откуда я знаю? У меня под боком нелегальный дата-центр, половина клиентов которого боится собственных теней, а другая половина сама эти тени производит. Ты думаешь, я не узнаю, когда дорожный узел начинает задавать вопросы о подозрительном транспортном средстве?
— Значит, ты следил за мной?
— Нет. Я следил за городом. Ты просто оказалась одним из его многочисленных раздражителей.
Он указал на стул.
— Садись. И расскажи, что именно ты натворила.
— Ничего особенного. Иллюзия, небольшая корректировка маршрута, временный идентификатор. Всё в пределах разумного.
— В пределах разумного кого?
— Моего.
— Тогда я спокоен. Твоё чувство разумного давно нуждается в ремонте.
Она улыбнулась.
С этим человеком они знакомы были достаточно давно, чтобы не тратить время на вежливые приветствия. Он находил для неё работу, когда обычные заказчики начинали задавать слишком много вопросов. Она выполняла поручения, за которые другие наёмники требовали либо двойную оплату, либо письменное подтверждение того, что заказчик не собирается их убивать.
Иногда он платил хорошо.
Иногда — обещал заплатить хорошо.
Но ни разу не пытался убедить её, что мир устроен справедливо.
Для посредника это было почти достоинством.
— Ты могла просто написать мне, — сказал он. — Или позвонить. Или воспользоваться защищённым каналом, который я тебе предоставил.
— И оставить ещё одну запись о том, что мы общались?
— Канал зашифрован.
— А метаданные?
Мужчина поднял палец.
— Вот за это я тебя и терплю. Ты хотя бы знаешь разницу между содержимым сообщения и фактом его передачи.
Он повернулся к стеклянной стене, за которой работали серверы.
— Содержимое можно зашифровать. Можно сделать так, чтобы посторонний не прочитал ни слова. Но соединение всё равно может оставить след: время подключения, адрес узла, объём переданных данных, длительность сеанса. Иногда этого достаточно, чтобы понять, кто с кем общался, даже не зная, о чём именно они говорили.
— Значит, ты согласен, что личная встреча безопаснее.
— Я согласен, что личная встреча в некоторых обстоятельствах оставляет меньше сетевых следов. Но не путай безопасность с отсутствием следов. Здесь есть камеры, датчики, пропускная система и три человека, которые уже знают, что ты приехала. Если кто-то захочет составить твою биографию, материала у него достаточно.
— Ты умеешь приободрить.
— Я владелец бизнеса, а не воспитатель.
Он достал из ящика небольшую металлическую пластину, провёл по ней пальцем, и на поверхности возникла схема платежей.
— К тому же не все мои клиенты хотят, чтобы я хранил историю их посещений. Я продаю людям переживания, которые они не желают обсуждать с соседями, супругами и налоговыми инспекторами. Если бы они хотели оставлять подробные записи о каждом посещении, я бы открыл курсы информатики для детей. Там хотя бы родители сами спрашивают, что именно записывается в журнал.
— А у тебя спрашивают другое?
— У меня спрашивают, можно ли гарантировать, что их фантазии никто никогда не увидит.
— И что ты отвечаешь?
— Что гарантирую только то, за что готов отвечать.
Он убрал пластину.
— Поэтому я не люблю людей, которые считают, будто шифрование решает все проблемы. Оно защищает содержимое. Но если человек сам раскрывает пароль, оставляет устройство разблокированным или платит с аккаунта, привязанного к собственному имени, никакая магия ему не поможет.
Героиня кивнула. Это она понимала.
В Нулевом мире существовало множество способов скрыть информацию. Гораздо меньше способов скрыть тот факт, что ты пытался её скрыть.
Она посмотрела на его рабочее место.
Там стоял старый компьютер с массивным корпусом, механической клавиатурой и несколькими аналоговыми переключателями. К его боковой панели крепился вводной интерфейс, покрытый потёртыми обозначениями команд. Рядом лежали бумажные распечатки библиотек и толстый справочник по структуре запросов.
— Ты всё ещё работаешь на этом допотопном ящике?
— Он надёжнее половины современных интерфейсов.
— И медленнее половины улиток.
— Зато я знаю, что именно он делает.
Она усмехнулась.
В этом и заключалась разница между ними.
Большинство людей не обладало природной чувствительностью к цифровому эфиру. Но это не означало, что они были отрезаны от магии. Любой достаточно терпеливый человек мог научиться взаимодействовать с эфирными системами через оборудование.
Для этого требовался компьютер, физический интерфейс ввода, диагностические инструменты и годы изучения команд. Программист писал последовательности вручную, проверял синтаксис, разбирался в зависимостях, изучал библиотеки и собирал готовые решения из репозиториев, иногда настолько громоздких, что один поиск нужной функции мог занять больше времени, чем само применение заклинания.
Работа была медленной, требовала дисциплины и хорошего понимания системы.
Зато человек не зависел от врождённой способности воспринимать эфир.
Героиня относилась к другой категории.
Она была адептом Python — Синей Спирали. Благодаря чувствительности к цифровому эфиру она могла взаимодействовать с его структурами напрямую через вайб-интерфейс. Ей не требовалось вручную набирать каждую команду. Она могла воспринимать доступные конструкции, выбирать готовые библиотеки, менять параметры и собирать из них рабочие сценарии.
В профессиональном жаргоне таких людей называли вайб-кодерами.
Термин не был официальным. Старые инженеры употребляли его с презрением, молодые специалисты — с гордостью, а некоторые магические академии предпочитали более торжественные названия.
Сама героиня не видела в этом ничего особенного.
Она могла изменить сценарий иллюзии за несколько секунд. Но если бы её попросили объяснить все внутренние зависимости древнего процессора, она предпочла бы найти специалиста, который действительно понимал его архитектуру.
— Ты ведь понимаешь, что однажды твоя привычка всё делать напрямую приведёт к неприятностям? — спросил агент, заметив её взгляд.
— А твоя привычка делать всё вручную приведёт к тому, что ты умрёшь от старости, пока компьютер проверяет одну команду.
— Зато у меня будет время подумать.
— И всё равно ты наймёшь меня, чтобы я исправила результат.
— Именно поэтому я и плачу тебе.
Он улыбнулся.
— Ладно. Хватит разговоров о методах работы. Перейдём к деньгам.
На проекционной пластине появилась платёжная запись.
Героиня посмотрела на сумму.
Потом ещё раз.
— Ты шутишь?
— Я редко шучу с деньгами.
— Это почти вдвое больше обычной ставки.
— Я знаю. Именно поэтому не стал отправлять предложение по обычному каналу.
Она приблизила запись. Платёж был подтверждён, но имя отправителя отсутствовало. Вместо него отображался набор символов, а в графе происхождения стояла отметка о прохождении через приватную расчётную сеть.
— Крипта?
— В широком смысле. Децентрализованный платёжный реестр, несколько промежуточных адресов и система подтверждения, которая не требует участия обычного банка.
— Значит, заказчик рассчитывает остаться анонимным.
— Он рассчитывает, что люди не станут лениться и проверят, что именно им доступно. Это разные вещи.
Мужчина сел напротив неё.
— Есть распространённое заблуждение: если в платеже нет имени, значит, нет и следа. В некоторых открытых криптовалютных системах все переводы записываются в публичный реестр. Там не обязательно указано, кто владеет адресом, зато видно, какие суммы куда перемещались и какие адреса взаимодействовали друг с другом. Если однажды связать адрес с реальным человеком, старые операции могут многое рассказать о его жизни.
— А приватные системы?
— Могут скрывать больше: отправителя, получателя, сумму. Но они не делают человека невидимым. Он может засветиться на бирже, оставить след на своём устройстве или сам рассказать лишнее. А иногда достаточно того, что кто-то знает, когда и где он потратил деньги.
Героиня снова посмотрела на платёжную запись.
— И ты не знаешь, кто отправил деньги?
— Я знаю, что платёж подтверждён. Знаю, что средства доступны. Знаю, что посредник, передавший мне контракт, выполнил свою часть сделки. Но конечного владельца денег я установить не смог.
— И тебя это не беспокоит?
— Беспокоит. Но не настолько, чтобы отказываться от хорошего контракта.
— Вот теперь я узнаю тебя.
— Я не занимаюсь благотворительностью. И не читаю детям лекции о безопасности в сети.
Он увеличил запись. На экране появились дополнительные строки: номер контракта, сумма аванса, условия выплаты остатка и отметка о том, что средства зарезервированы до завершения доставки.
— В нашем деле неизвестный заказчик — не редкость. Иногда посредник знает клиента, но не конечного получателя. Иногда знает получателя, но не того, кто оплачивает работу. Бывает и так, что каждый участник знает только следующего в цепочке. Это не обязательно означает ловушку. Иногда людям просто выгоднее не знать лишнего.
— Меньше знаешь — крепче спишь, — сказала она.
— Именно. Хотя иногда меньше знаешь — дороже обходится работа.
Он откинулся на спинку кресла.
— Я не могу обещать тебе, что заказчик безопасен. Не могу сказать, кто он, потому что не знаю. Но деньги настоящие, аванс уже поступил, а условия контракта составлены достаточно ясно, чтобы я мог предъявить претензию, если вторая сторона нарушит договорённости.
— Ты собираешься судиться с анонимным заказчиком?
— Я собираюсь иметь возможность хотя бы попытаться.
— Вдохновляет.
— Я старался.
Героиня посмотрела на стену, где висела большая карта Нулевого мира.
Три огромных политических пространства занимали большую часть известной территории.
На севере и западе располагался Белый Конкордат — централизованная держава с едиными стандартами, жёсткой иерархией и закрытой технологической системой. Его правители считали, что несовместимость и независимость создают хаос, а хаос необходимо устранять. В Конкордате было безопасно, если ты соблюдал правила. Проблема заключалась в том, что правила определяли те, кто обладал властью.
На юге и в центральных областях лежали города Лиги Linux-полисов. Каждый город имел собственные законы, собственные библиотеки и собственное представление о том, как следует управлять эфиром. Здесь разработки можно было изучать, изменять и распространять, а талантливый специалист мог найти применение почти любой идее.
Но свобода не делала Лигу единой. Когда города сталкивались с общей угрозой, они могли месяцами спорить о том, кто должен оплатить оборону, какие стандарты использовать и кому достанется право управлять совместной системой.
Далеко на востоке находилась третья сила — империя торговых домов, производственных династий и огромных промышленных центров. Её власть держалась не только на армии и законах, но и на заводах, складах, транспортных маршрутах и контроле над компонентами, без которых не работали даже самые совершенные магические системы.
Конкордат контролировал стандарты.
Лига — идеи и свободу их распространения.
Восток — производство и поставки.
Разумеется, это было упрощение. В каждой державе существовали внутренние конфликты, конкурирующие группы и люди, которым не нравилось собственное правительство. Но для наёмника, решавшего, через какую границу безопаснее перевозить груз, подобной карты обычно хватало.
— К чему ты это показываешь? — спросила она.
— Я ничего не показываю. Ты смотришь на карту.
— Она появилась на экране именно тогда, когда мы заговорили о заказчике.
— Совпадение.
— Ты ужасный лжец.
— Зато хороший посредник.
Он убрал карту.
— Заказчик не указал, откуда именно поступил первоначальный запрос. Платёж прошёл через несколько систем, а сам контракт составлен так, чтобы его можно было исполнить независимо от того, кто контролирует территорию назначения.
— Значит, он не доверяет ни одной державе.
— Или не хочет, чтобы какая-либо из них узнала о доставке.
— Это разные вещи.
— Вот поэтому я и пригласил тебя лично.
Она замолчала.
Теперь предложение выглядело ещё страннее. Если заказчик хотел скрыть маршрут от властей, то почему выбрал старую серверную крепость? Если груз был обычным, зачем такая осторожность? А если необычным — почему посредник получил так мало сведений?
— Что нужно доставить? — спросила она.
Мужчина не ответил сразу.
Он открыл нижний ящик стола, достал узкий футляр и положил перед ней. Футляр был изготовлен из матового тёмного металла. На крышке не было ни герба, ни эмблемы производителя, ни привычной маркировки защитного контура.
Только небольшая пломба с номером контракта.
Героиня не прикоснулась к нему.
— Ты уже получил груз?
— Несколько часов назад.
— И не проверил содержимое?
— Проверил целостность упаковки. Не сам кристалл.
— Почему?
— Потому что это одно из условий контракта.
— Ты обычно не любишь, когда тебе указывают, что делать с собственным оборудованием.
— Я также не люблю терять деньги из-за нарушения условий, которые прочитал до того, как принял заказ.
Она посмотрела на футляр внимательнее.
— Что известно о получателе?
— Он ждёт доставку в старой серверной крепости за пределами действующего транспортного контура.
— Имя?
— Нет.
— Организация?
— Нет.
— Почему не воспользоваться обычной службой доставки?
— Заказчик требует личной передачи.
— Почему?
— Не указано.
— Что внутри?
— Не указано.
— И ты считаешь это нормальным?
— Для курьерской доставки медицинского оборудования — нет. Для некоторых контрактов в моём бизнесе — вполне. Мы работаем не с детскими курсами информатики, помнишь?
— Я начинаю подозревать, что у тебя просто нет других аргументов.
— У меня есть аргументы. Просто они стоят дороже.
Героиня помолчала.
Она не любила заказы, в которых слишком много неизвестных. Неизвестные стоили времени, а время стоило денег. Но ещё хуже были заказы, в которых неизвестные пытались выдать за гарантии безопасности.
Здесь, по крайней мере, никто не притворялся, что всё в порядке.
— Что ещё? — спросила она.
Мужчина вывел на экран следующую страницу контракта.
— Кристалл нельзя подключать к действующим системам до прибытия получателя. Нельзя копировать его содержимое. Нельзя вскрывать пломбу. При передаче получатель должен подтвердить номер контракта и предъявить ответный ключ.
— А если ключ не совпадёт?
— Ты возвращаешься.
— А если крепость окажется заброшенной?
— Ты возвращаешься.
— А если меня там попытаются убить?
Мужчина посмотрел ей в глаза.
— Тогда я надеюсь, что ты окажешься достаточно умной, чтобы не дать им этого сделать.
Она усмехнулась, но улыбка получилась короткой.
— Ты предлагаешь мне доставить неизвестный кристалл неизвестному человеку в старую крепость, которая, судя по всему, не числится в действующих реестрах. За сумму, вдвое превышающую обычную ставку. И при этом не задавать вопросов.
— Нет. Я предлагаю тебе задать все вопросы сейчас, пока ты ещё можешь отказаться.
Это прозвучало серьёзнее, чем она ожидала.
Она снова посмотрела на футляр.
Её отец когда-то работал с экспериментальными процессорами. Иногда он приносил домой схемы, которые не разрешал трогать, и объяснял, что некоторые устройства опасны не потому, что сломаны, а потому, что работают именно так, как их спроектировали.
Она давно не вспоминала об этом.
— Почему именно я? — спросила она.
— Хороший вопрос.
— Не уклоняйся.
— Я не уклоняюсь. Заказчик указал, что ему нужна небольшая независимая команда, способная работать с магическими системами и не зависящая от официальных служб. Три человека. С опытом в разных школах. С собственным оборудованием.
— И ты решил, что мы подходим.
— Я решил, что вы можете выполнить работу. Это не одно и то же.
— Кто-нибудь ещё получил такое предложение?
— Не знаю.
— Ты не знаешь или не хочешь говорить?
— В данном случае — не знаю.
Она изучала его лицо, пытаясь понять, насколько искренним был ответ. Мужчина выдержал её взгляд без раздражения. Он не выглядел человеком, который наслаждался тайнами ради самих тайн. Скорее человеком, который давно понял: информация — это товар, а товар не всегда принадлежит тому, кто его держит в руках.
— Мне нужно обсудить это с командой, — сказала она.
— Разумеется.
— И я хочу получить полный комплект документов до того, как соглашусь окончательно.
— Получишь.
— А если мы откажемся?
— Аванс вернёшь. Контракт закроем. Никто не станет тебя преследовать.
— Ты уверен?
— Нет. Но это условие записано в договоре.
Она рассмеялась.
— Вот теперь я тебе верю.
Мужчина подвинул футляр к ней.
— Пока можешь забрать условия контракта. Сам кристалл останется здесь до твоего окончательного согласия.
Она убрала проекционную запись в защищённое хранилище интерфейса и встала.
— Ты мог бы хотя бы раз предложить мне обычную работу.
— Я предлагал.
— Когда?
— Три года назад. Требовалось доставить документы в соседний город.
— Там меня пытались ограбить.
— Потому что ты решила сократить путь через территорию местной банды.
— Я не знала, что это их территория.
— Ты не проверила карту.
— Карта была устаревшей.
— Именно поэтому я и говорю, что обычная работа тебе не подходит.
Она направилась к выходу, но у двери остановилась.
— Ещё один вопрос.
— Я начинаю жалеть, что не выставляю счёт за каждый.
— Ты действительно не знаешь, кто заказчик?
Мужчина впервые за встречу перестал улыбаться.
— Нет. И, если честно, именно это мне не нравится больше всего.
Она кивнула.
В этом ответе было больше правды, чем во всех предыдущих объяснениях.
За дверью шумел город. Где-то внизу гудели серверы, обслуживавшие чужие желания, секреты и деньги. В журналах уже появлялись записи о её сегодняшней поездке. Возможно, знакомые из школы SQL сумеют привести их в порядок. Возможно, патруль забудет о ней к вечеру. Возможно, нет.
Но это были обычные проблемы.
Необычной была крепость, в которую никто не хотел отправлять груз официальным путём.
И человек, который заплатил за доставку, не пожелав назвать своего имени.
Она вышла из мастерской с копией контракта и направилась к мотоциклу.
До встречи с командой оставалось ещё немного времени.
Впервые за долгое утро она решила не торопиться.
Спасибо за чтение
Вернуться к книге
