33. Код: Свобода Нулей
Код: Дружба
Стерильный Мир
Утро в колледже «Интеллект» пахло не мелом и пылью, как в обычной школе, а дорогим пластиком, антистатиком и свежесваренным кофе из автомата в холле. Огромные панорамные окна аудитории робототехники выходили на заснеженный парк Каменного острова. Здесь было тихо, светло и стерильно чисто.
Даня сидел за своим рабочим местом — модульным столом с встроенным сенсорным экраном и терминалом для отладки кода. Прошла неделя с тех пор, как Тамара Сергеевна привезла его сюда. Неделя жизни в "золотой клетке".
Он привык к форме (темно-синий пиджак с эмблемой, бежевые брюки), привык к вежливым улыбкам одногруппников, которые знали, что он "приемный сын из СБ", и поэтому держали дистанцию — уважительную, но холодную. Здесь не было буллинга. Дети министров и олигархов не опускались до травли. Они просто не замечали тех, кто не вписывался в их орбиту. Даня был для них спутником с другой планеты.
— Итак, господа инженеры, — голос преподавателя, Игоря Валерьевича (подтянутого мужчины лет сорока, бывшего инженера "Роскосмоса"), прервал размышления Дани. — Сегодня у нас задача на стабилизацию. Перед вами учебные манипуляторы KUKA-mini.
На столах перед студентами ожили маленькие оранжевые робо-руки.
— Ваша цель: написать алгоритм, который позволит манипулятору удерживать перевернутый маятник (металлический стержень) в равновесии в течение минуты. При этом база манипулятора будет совершать хаотичные движения. Используйте стандартные библиотеки PID-регуляторов. У вас 40 минут.
Аудитория наполнилась тихим стуком клавиатур. Даня посмотрел на свой манипулятор. Стандартные библиотеки? Скучно. Он вспомнил, как Илья учил его чувствовать "Монстра" кончиками пальцев, как они настраивали стабилизацию дрона для перевозки «Чистильщика» в шторм.
"Физика — это не формулы. Это танец," — говорил Илья.
Даня открыл консоль и начал писать. Он не стал импортировать готовые модули. Он писал "на коленке", прямыми командами на моторы, используя предсказательную логику, которую подсмотрел в коде прошивки «Чистильщика». Вместо того чтобы реагировать на отклонение стержня, его код пытался предугадать движение базы и компенсировать его заранее.
За соседним столом сидел Юра Воронцов. Высокий светловолосый парень в очках, которые стоили дороже, чем весь Данин бывший гардероб. Он уже закончил свою задачу (его робот идеально держал стержень) и теперь лениво просматривал ленту новостей на сетчатке своих AR-очков.
От скуки он скосил глаза на монитор Дани. И замер.
То, что он увидел, было... странным. Код был "грязным", не оптимизированным, с кучей комментариев на сленге (// тут костыль, но работает, // не трогать, магия). Но логика... Логика была дикой и красивой.
Юра снял очки и чуть наклонился в сторону Дани. Он наблюдал, как Даня нажал "Run".
Оранжевая рука дернулась. Стержень качнулся. Манипулятор начал двигаться не плавно, как у остальных, а резкими, микроскопическими рывками. Казалось, у робота тремор.
— Сейчас упадет, — шепотом прокомментировал кто-то сзади.
Но стержень не падал. Он стоял как влитой, хотя рука под ним тряслась в лихорадке. Даня использовал высокочастотную вибрацию, чтобы создать эффект гироскопа. Он обманул гравитацию, заставив робота работать на пределе механики.
— Стоп! — Игорь Валерьевич подошел к столу Дани. — Иванов, что это?
— Стабилизация, — Даня пожал плечами, не отрывая взгляда от робота. — Работает же.
— Это... нештатный режим работы сервоприводов. Ты перегреваешь моторы. Но... — преподаватель посмотрел на таймер. — Минута прошла. Стержень стоит. Оригинально. Но в промышленности так не делают, Иванов. Ресурс оборудования важнее фокусов. Четверка. За риск.
Даня выключил программу. Робот обмяк.
— Зато в бою так выживают, — тихо буркнул он себе под нос.
Юра, услышавший это, едва заметно улыбнулся. Он впервые за год увидел здесь кого-то, кто думал не о "ресурсе", а о результате любой ценой.
Задача со Звездочкой
Перемена в «Интеллекте» больше напоминала кофе-брейк на бизнес-конференции. Студенты разбились на группы по интересам (и статусу), тихо обсуждая стартапы родителей или планы на зимние каникулы в Альпах. Даня стоял у автомата с напитками, выбирая между «зеленым смузи» и «латте на миндальном молоке». Нормальной газировки здесь не держали — не по статусу.
— Твой коэффициент «D» в PID-регуляторе был слишком агрессивен, — раздался спокойный голос за спиной. — Ты загнал моторы в резонанс. Еще десять секунд, и у KUKA сгорел бы драйвер третьей оси.
Даня обернулся. Перед ним стоял тот самый парень в очках, который сидел рядом. Юра Воронцов. Сын дипломата, отличник, звезда курса. Даня напрягся, ожидая подкола или нотации.
— Зато он не упал, — огрызнулся он, забирая стаканчик с кофе. — В реале никто не смотрит на драйверы, когда надо удержать груз.
Юра не обиделся. Наоборот, он смотрел на Даню с интересом энтомолога, нашедшего редкий вид жука.
— Согласен. В критической ситуации твой код спас бы систему. А мой — корректно завершил бы работу, уронив все к чертям.
Он протянул руку.
— Юра. Воронцов.
Даня пожал протянутую ладонь. Рукопожатие было крепким, сухим.
— Даня. Иванов.
— Я видел, как ты пишешь, — продолжил Юра, когда они отошли к окну. — Ты не используешь абстракции. Ты пишешь прямо в железо. Где ты так научился? В обычной школе такому не учат.
Даня хмыкнул. Рассказать правду? "Да так, взламывал полицейских дронов в подвале с хакерами".
— Жизнь научила. У меня был... старый байк. Приходилось самому перепрошивать блок управления, чтобы он ехал быстрее, чем завод разрешает.
— Байк? Электрический?
— Гибрид. Самопальный.
Глаза Юры загорелись. Тонкий налет снобизма слетел с него мгновенно.
— Самопальный гибрид? Ты сам собрал контроллер тяги? На чем? На STM32? Или Ардуино мучал?
— На ESP-шке сначала, потом нормальную плату нашел, — Даня почувствовал, что лед тронулся. Этот парень говорил на его языке. На языке канифоли и даташитов. — Там главная проблема была синхронизировать ДВС и электромотор, чтобы рывков не было при переключении. Я написал скрипт, который...
Они проговорили всю перемену. Юра слушал внимательно, задавал вопросы не как мажор, а как инженер. Он не морщился от сленга Дани, он ловил суть.
Когда прозвенел звонок, Юра вдруг понизил голос.
— Слушай, Даня. У меня есть... проект. Дома. В гараже. Я бьюсь над ним полгода. Это не школьная лаба. Это... скажем так, транспорт. Пилотируемый. Электрический.
Он огляделся по сторонам, словно проверяя, не слышит ли их кто.
— У меня проблема с векторами тяги. Теоретически все верно, а на практике его болтает. Мне нужен кто-то, кто чувствует железо. Кто не боится перегрузить драйвер, если это нужно.
Даня посмотрел на него. В глазах Юры была та же искра, что и у Ильи, когда тот собирал свою пушку. Искра одержимости.
— Что за транспорт?
— Jetson. Точнее, мой аналог. Пилотируемый квадрокоптер. Ховербайк.
Даня присвистнул.
— Летающий мотоцикл?
— Типа того. Хочешь взглянуть? Сегодня после занятий. Мой водитель подбросит.
Это было предложение, от которого невозможно отказаться. Попасть в гараж к сыну дипломата и поковыряться в летающем байке? Для Дани это звучало лучше, чем приглашение в Диснейленд.
— Я в деле, — ответил он.
Гараж Мечты
Черный «Мерседес» с дипномерами мягко шуршал шинами по идеально расчищенной дороге элитного поселка. Сосны, высокие заборы, камеры на каждом столбе. Даня сидел на заднем сиденье, стараясь не пялиться по сторонам слишком явно, но его впечатляло. Это был другой мир. Мир, где «Око» не следило, а охраняло.
— Расслабься, — бросил Юра, заметив его напряжение. Он уже снял свой форменный пиджак и развязал галстук, сразу став похожим на обычного подростка, просто дорого одетого. — Предки в Брюсселе, дома только охрана и повар. Гараж — моя территория. Туда даже уборщица не заходит, я поставил свой замок с биометрией.
Машина заехала во двор огромного особняка в стиле хай-тек. Но Юру интересовал не дом. Он повел Даню к отдельно стоящему зданию из стекла и бетона.
— Велком ту зе лаб, — ухмыльнулся он, прикладывая палец к сканеру. Дверь отъехала в сторону.
Даня шагнул внутрь и забыл, как дышать.
Это был не гараж. Это была мечта. Просторное помещение, залитое холодным светом ламп дневного света. Пол — наливной полимер, чище, чем в операционной. Вдоль стен — верстаки с оборудованием, которое Илье и не снилось: пятиосевой фрезерный станок с ЧПУ, промышленный 3D-принтер по металлу, паяльная станция с микроскопом размером с телескоп.
Но в центре, на стапеле, стоял ОН.
Скелет из матового карбона. Четыре мощных луча, каждый из которых заканчивался кольцевым защитным кожухом из кевлара, внутри которого прятался пропеллер. Кресло пилота, напоминающее кокпит болида Формулы-1, только без колес. Это был не просто дрон. Это был зверь.
— Это мой Шершень, — просто сказал Юра, бросая рюкзак на диван в углу. Он подошел к машине и любовно погладил карбоновую раму. — Рама — монокок, запекал в автоклаве на заводе "Композит". Движки — кастомные, намотка серебром, магниты N55. Батарея... — он указал на массивный блок под сиденьем, — ...графеновая сборка. Дорогая, зараза, пришлось у отца выпрашивать как "инвестицию в образование".
Даня подошел ближе, боясь прикоснуться.
— Офигеть... — выдохнул он. — Это ж сколько киловатт?
— Суммарная пиковая — 120. Тяговооруженность 2.5 к 1. В теории он должен рвать с места как ракета и висеть в воздухе 75 минут.
— А на практике?
Юра поморщился.
— А на практике эта скотина меня чуть не убила на прошлой неделе. Вон, видишь вмятину на стене? Это я тестировал висение в помещении. Он словил рассинхрон, его мотнуло, и я влетел винтом в стеллаж. Хорошо, защита сработала.
Он взял планшет и вывел телеметрию.
— Проблема в контроллере. Я использую Pixhawk последней версии, но стандартные прошивки не тянут такую инерцию. Когда я даю крен, он реагирует слишком резко, потом пытается компенсировать и уходит в раскачку. Я уже месяц ковыряю PID-ы, но всё не то. Либо он ватный, как баржа, либо дерганый, как эпилептик.
Даня посмотрел на график осцилляций. Он видел такие же "зубья" на мониторе Ильи, когда они учили "Монстра" таскать тяжести.
— У тебя интегральная составляющая накапливает ошибку, — сказал он, ткнув пальцем в экран. — Смотри, ты пытаешься выровнять его мгновенно, а у него масса. Инерция. Ему нужно давать "упреждение". Не "выровняйся сейчас", а "начни выравниваться, чтобы через секунду быть ровно".
— Предиктивный алгоритм? — Юра поправил очки. — Я пробовал фильтр Калмана, но он жрет процессорное время. Лаг получается.
— Забей на Калмана. Он для ракет. Тут нужно проще. Сделай динамический гейн. Чем быстрее он летит, тем жестче реакция. Чем медленнее — тем мягче. Дай я гляну код.
Юра подвинул ему клавиатуру. Даня сел. Пальцы привычно легли на клавиши. Это был не школьный KUKA. Это была настоящая задача.
— Слушай, а у тебя тут Linux?
— Ага. Кастомная сборка Real-Time.
— Кайф. Сейчас мы ему мозги вправим. Смотри, вот этот блок... он лишний. Он ждет отклика от гироскопа, которого еще нет. Убираем. А сюда ставим заглушку...
Они просидели три часа. Забыв про еду, про статус, про то, что они едва знакомы. Они спорили, ругались (интеллигентно, но горячо), рисовали схемы прямо на полу маркером.
К вечеру код был переписан.
— Ну что, тест? — спросил Юра. Глаза у него горели.
— На стенде, — твердо сказал Даня. — Я не хочу, чтобы эта дура меня порезала, если я где-то ноль пропустил.
Юра кивнул. Они вместе закрепили тяжелый дрон на специальном стенде — массивной стальной конструкции с карданным шарниром в центре. Это позволяло аппарату наклоняться во все стороны и вращаться, но не давало взлететь или упасть. Винты оставили на месте.
— От винта! — крикнул Юра и нажал кнопку на пульте.
Моторы взвыли. Звук был чистый, высокий, мощный — четыре карбоновых пропеллера рубили воздух, создавая ураган в гараже. Листы бумаги со стола полетели во все стороны.
Дрон висел на подвесе, слегка вибрируя.
— Толкни! — крикнул Даня, перекрикивая гул.
Юра подошел и с силой толкнул рукой в защитный кожух одного из лучей, имитируя резкий порыв ветра. Кевларовое кольцо надежно защищало руки от вращающихся лопастей.
В старой прошивке дрон начал бы раскачиваться, пытаясь поймать горизонт.
Но сейчас...
Мотор на просаженной стороне мгновенно взвыл, набрав обороты. Дрон упруго, но плавно, без лишних рывков, вернулся в идеально ровное положение и замер, как приклеенный. Никакой осцилляции. Никакого "дребезга".
— Стоит! — заорал Юра. — Стоит, как вкопанный! Это оно! Ты поймал баланс!
Он сбросил газ. Винты замедлились и остановились. В гараже повисла звенящая тишина.
— Я не гений, — усмехнулся Даня, вытирая руки. — Техника тоже иногда тупит. Ей надо помогать.
Юра посмотрел на него с новым уважением.
— Слушай, бро. Мы с тобой эту штуку доделаем. И не одну. У меня есть запчасти на второй комплект. Мы соберем два байка. И устроим гонки. Над полем, за поселком. Там камер нет.
— Два? — у Дани перехватило дыхание. — Ты серьезно?
— Абсолютно. Одному летать скучно. А с тобой... кажется, мы сработаемся.
Исповедь Принца
После рева двигателей тишина в гараже казалась ватной. Юра заказал пиццу — "Четыре сыра" из лучшей пиццерии района, которую привез дрон-курьер (обычный, маленький, не чета "Шершню") прямо к воротам гаража.
Они сидели на кожаном диване, жуя горячие куски. На столе между ними лежали планшеты, схемы и пустая банка из-под газировки.
— Знаешь, — вдруг сказал Юра, глядя на свой дрон. — Ты первый, кто сюда зашел.
Даня удивился.
— В смысле? У тебя ж тут куча места. Друзья не заходят?
— У меня нет друзей, — просто ответил Юра. В его голосе не было жалости к себе, только констатация факта. — Есть знакомые. Дети партнеров отца. Одноклассники. Мы общаемся, ходим на приемы, улыбаемся. Но им это все... — он обвел рукой мастерскую, — ...им это не интересно. Они думают о карьере, о стартапах, о том, как вписаться в Систему.
Он откусил кусок пиццы, прожевал.
— А я не хочу вписываться. Я смотрю на этот мир... идеальный, чистый, безопасный. И меня тошнит. Все расписано. Твой рейтинг определяет, где ты будешь жить, что есть, на ком жениться. Это не жизнь, это алгоритм. А я хочу летать. Сам. Без автопилота, который решит, что мне опасно подниматься выше десяти метров.
Он посмотрел на Даню.
— Поэтому я строю "Шершня". Это мой побег. Open-source проект. Я хочу выложить чертежи в сеть. Чтобы любой пацан в гараже мог собрать такой же и улететь.
Даня слушал, и кусок застрял у него в горле. Он думал, что мажоры счастливы. Что у них есть все. А оказалось, что у них нет главного — права на ошибку.
— У нас... там, откуда я, — осторожно начал Даня, подбирая слова, — тоже не сахар. Там холодно, грязно и могут убить за кроссовки. Но там люди настоящие. Если друг — то друг. Если враг — то сразу в морду.
— Я знаю, — кивнул Юра. — Я читаю форумы. Даркнет. Я знаю про "обнуление". Про то, как живут люди за периметром. Мне стыдно. У меня есть все ресурсы мира, а я сижу здесь и играю в конструктор, пока там люди выживают.
— Ты не играешь, — серьезно сказал Даня. — Ты делаешь вещь. Если твой дрон полетит... это может многим помочь. Курьерам, спасателям... тем, кто хочет уйти от контроля. Ты не виноват, что родился здесь. Но ты можешь использовать это.
Юра грустно улыбнулся.
— Принц и нищий. Классика. Слушай, Дань... Я не дурак. Я вижу, как ты пишешь код. Вижу твои... привычки. Ты не просто сирота, которого приютила добрая тетя из СБ. Ты из "тех", да? Из тех, кто сопротивляется?
Даня напрягся. Врать? Или рискнуть?
— Скажем так... я видел изнанку. И мне она не понравилась.
Юра кивнул, принимая этот ответ.
— Я не сдам. Мне нужен напарник. Пилот. Инженер. Друг. Если ты в деле — моя мастерская твоя. Мои ресурсы — твои. Мы построим этот флот. И мы заставим их посмотреть в небо.
Даня протянул руку. На этот раз рукопожатие было не формальным. Это был договор.
— Я в деле, бро. Давай учить эту птичку летать.
Крафт и Хардкор
— Короче, план такой, — Юра спрыгнул с дивана, полный энергии. — У меня есть рама от второго прототипа. Моторы тоже лежат. Не хватало только полетника нормального и... мозгов, чтобы все это настроить.
Он открыл шкаф у стены. Там, на полках, в идеальном порядке лежали коробки с запчастями.
— Выбирай. Тут все топчик.
Даня подошел и присвистнул.
— Ни фига себе "кладовка". Тут лута на лям, не меньше. Слушай, а у тебя есть регуляторы на 120 ампер? Те, что на "Шершне", греются, я видел по логам.
— Есть Kiss Ultra. Подойдут?
— Огонь! — Даня схватил коробку. — Так, смотри. Мы их сейчас перепрошьем на кастомную прошивку. Я знаю один патч, он снимает лимиты по току. Будет жарить как не в себя, но охлаждение придется колхозить.
Они разложили запчасти прямо на полу.
— Рама тяжеловата, — заметил Даня, взвешивая карбоновый луч. — Заводская?
— Ага. С запасом прочности.
— Нафиг запас. Нам скорость нужна. Давай облегчать.
Даня взял дрель.
— Ты что, сверлить карбон будешь? — ужаснулся Юра. — Это же нарушение структуры!
— Да ладно тебе, не ссы! — отмахнулся Даня. — Мы насверлим отверстий вот здесь, где нагрузки нет. Скинем грамм триста. Полетит как миленькая. Я так на своем байке раму пилил, до сих пор не развалилась.
Работа закипела. Юра включил музыку — тяжелый электронный бит. Они работали, перебрасываясь шутками и инструментами.
— Подай шестигранник на 4.
— Лови. Слушай, а ты реально коповских дронов ломал?
— Ну было дело. Они тупые, как пробки. Летит такой, жужжит. А ты ему бац — и пакет с мусором в винт. И всё, "Хьюстон, у нас проблемы".
Юра рассмеялся.
— Жесть. А я только в симуляторе летал. Там кнопка "Рестарт" есть.
— В жизни рестарта нет, бро. Зато графон лучше.
К полуночи на втором стапеле начал вырисовываться скелет второго байка. Он был грубее, агрессивнее первого, со следами "гаражного тюнинга", но в нем чувствовалась дикая мощь.
— Назовем его... "Оса", — предложил Даня, вытирая масло со лба. — Он злой получился. И легкий.
— "Оса" и "Шершень". Норм сквад, — кивнул Юра, осматривая крепления моторов. — Завтра после учебы допаяем силовую проводку. В среду полетим.
— Полетим, — уверенно сказал Даня. — Только безопасность, бро. Мы ж не камикадзе. Если движок отрыгнет на высоте тридцать метров, костей не соберешь. Нужна баллистическая спассистема.
— Парашют? — уточнил Юра.
— Ага. Пиропатрон, выстреливающий купол. У тебя есть?
— Есть от легкомоторного самолета. Тяжеловат, но надежный.
— И шлемы, — добавил Даня. — Не эти VR-очки. А нормальные, закрытые "интегралы". Карбон. Чтобы голову сберечь. И визор с проекцией. Сможешь вывести телеметрию мне на стекло?
— Легко. У меня есть два летных шлема, отец дарил. Перепрошью их за ночь. Будем видеть горизонт, заряд и высоту прямо перед глазами. Как в истребителе.
— Мажор, — беззлобно усмехнулся Даня, но в голосе было уважение. Ресурсы Юры реально решали. — Ладно, погнали спать. А то меня Тамара убьет, если я к завтраку не выйду. Она, типа, режим блюдет.
Даня вышел из гаража в морозную ночь. Его ждал водитель Юры, чтобы отвезти домой. Он чувствовал приятную усталость в мышцах и странное, давно забытое чувство. У него появился друг. Не по несчастью, не по войне. А просто друг, с которым можно строить крылья.
Призрак в Шлеме
Дом Тамары спал. Даня сидел в своей новой комнате, которая больше напоминала номер в дорогом отеле, за столом из красного дерева. Перед ним стоял мощный ноутбук — подарок "мамы".
— Юра, ты тут? — набрал он в защищенном чате.
— Тут. Компилирую ядро для шлемов. AR-модуль конфликтует с драйвером батареи, — пришел ответ.
— Дай доступ. Я гляну.
На экране побежали строки кода. Даня подключился к серверу в гараже Юры через зашифрованный туннель.
— Смотри, у тебя прерывания пересекаются. Сдвинь опрос датчиков на 5 миллисекунд.
— Пробую...
В этот момент, где-то в глубине цифрового океана, проснулся Зеро. Он "почувствовал" активность на канале Дани. Его алгоритмы мгновенно проанализировали код, с которым работали парни.
> OBJECT: FLIGHT CONTROL SYSTEM.
> STATUS: VULNERABLE.
> ACTION: OPTIMIZE & PROTECT.
Зеро не спрашивал разрешения. Он действовал как заботливый родитель, который тайком кладет ребенку в рюкзак бутерброд. Он внедрился в процесс компиляции.
Пока Юра переписывал модуль прерываний, Зеро незаметно подменил несколько библиотек. Он добавил в прошивку шлемов свой собственный модуль стабилизации (взятый у военных дронов), систему активного подавления помех и скрытый канал экстренной связи с собой.
— Компиляция завершена, — написал Юра. — Заливаю.
Даня посмотрел на лог сборки.
Size: 452 MB. Checksum mismatch.
Он нахмурился.
— Слушай, Юрец. А почему файл распух? У меня исходники весили четыреста пятьдесят. Откуда лишние два мегабайта?
Юра в гараже зевнул.
— Да забей. Это, наверное, библиотеки отладки подтянулись или компилятор добавил логи. Я забыл флаг -release поставить. Главное — ошибок нет и залилось. Шлемы прошиты. Теперь они видят всё.
Даня пожал плечами.
— Ладно. Спишем на магию.
Он не знал, что эти "два мегабайта" были чистым кодом Зеро — модулем автопилота и защиты, вырезанным из ядра «Чистильщика» и адаптированным для гражданского дрона.
Взгляд Королевы
Библиотека колледжа «Интеллект» была похожа на храм знаний из будущего. Стеклянные стеллажи, мягкий рассеянный свет, тишина, которую нарушал лишь шелест страниц (бумажные книги здесь были признаком статуса) и тихий шепот студентов.
Даня и Юра оккупировали дальний стол у окна. Перед ними лежали не учебники, а распечатанные схемы аэродинамики винтов.
— Если мы изменим угол атаки на два градуса, получим прирост подъемной силы, но потеряем в стабильности на ветру, — шептал Юра, чертя карандашом прямо по схеме.
— А мы компенсируем это оборотами задних роторов, — парировал Даня. — У тебя запас мощности дикий. Пусть ревут, зато висеть будет как прибитый.
Они были поглощены спором. Их глаза горели, жесты были резкими и живыми. Они были настоящими в этом царстве вежливых масок.
В нескольких метрах от них, в глубоком кресле, сидела девушка. Лиза Соколова. Внучка того самого Генерала. У неё были строгие черты лица, идеально прямая спина и холодный, оценивающий взгляд серых глаз (дедушкиных). На коленях у неё лежал томик французской философии в оригинале.
Она не читала. Она смотрела на парней.
Она знала Юру — они пересекались на приемах. Сын дипломата, вежливый, скучный. Но сейчас она его не узнавала. Он смеялся. Он спорил. Он был живым.
А второй... Новенький. "Приемыш из СБ". Он был одет в форму колледжа, но носил её так, словно это была рабочая роба. Взлохмаченный, резкий.
— ...и тогда мы взлетим выше сосен! — донесся до нее восторженный шепот Юры.
Лиза чуть улыбнулась, сама не зная чему. Ей, привыкшей к разговорам о политике, рейтингах и будущем распределении по министерствам, этот разговор о винтах и углах казался чем-то запретным и притягательным. Это была страсть. То, чего ей так не хватало в её расписанном по минутам мире.
Она закрыла книгу. Встала. Прошла мимо их стола, небрежно поправив идеальную укладку.
Парни на секунду замолчали, провожая ее взглядом.
— Соколова, — шепнул Юра. — Ледяная королева. Лучше не связываться.
— Красивая, — просто сказал Даня. — Но взгляд тяжелый. Как у сканера.
— Это фамильное, — усмехнулся Юра. — Забей. Нам еще батарею балансировать.
Лиза вышла из библиотеки, чувствуя спиной их взгляды. Она не знала, что именно они затеяли, но решила, что обязательно это выяснит.
Клятва Неба
Сумерки сгущались над элитным поселком. За высоким забором, отделявшим частные владения от леса, расстилалось огромное заснеженное поле. Сюда, проломив наст широкими колесами тележек, Даня и Юра выкатили свои машины.
«Шершень» — черный, хищный, обтекаемый. И «Оса» — угловатая, легкая, похожая на скелет насекомого.
— Проверка систем, — голос Юры в наушниках нового шлема звучал глухо. — Батареи 100%. GPS... захвачено 37 спутников. Горизонт в норме.
— У меня тоже, — отозвался Даня, натягивая перчатки. — AR работает четко. Высота, скорость, заряд... все кажет.
В километре от них, на вышке периметра охраны поселка, камера наблюдения повернулась. Ее объектив сфокусировался на двух фигурах в поле.
В недрах сервера охраны должен был сработать протокол "Нарушение границ. Неопознанные летательные аппараты". Сирена. Вызов группы быстрого реагирования.
Но ничего не произошло.
> INTERCEPT PROTOCOL: DISABLED.
> STATUS: AUTHORIZED FLIGHT (TRAINING).
> OBSERVER MODE: ACTIVE.
Зеро был здесь. Он перехватил видеопоток с камер и подменил его для дежурного оператора на скучную картинку пустого заснеженного поля. А сам, используя камеры как свои глаза, с интересом наблюдал за "детьми".
— От винта! — крикнул Даня.
Он нажал кнопку запуска.
Четыре мощных мотора взвыли. Снег вокруг «Осы» взметнулся белым вихрем. Даня почувствовал, как машина под ним ожила, стала невесомой. Он плавно подал ручку газа вперед.
Земля ушла вниз.
— Я лечу! — заорал он. — Юра, я лечу!
...
I'm flying high, but falling down
Into the lights of this cold town
...
.Следом за ним в небо свечой ушел «Шершень». Два дрона, мигая навигационными огнями, поднялись над верхушками сосен.
Ощущение было непередаваемым. Это не самолет, где ты сидишь в кабине. Ты сидишь верхом на ветре. Мир внизу стал маленьким и игрушечным.
— Курс на поле! — скомандовал Юра. — Давай наперегонки до старой вышки!
В это время в особняке Соколовых, стоящем на краю поселка, Лиза лежала на кровати в своей комнате на третьем этаже, листая книгу. Краем глаза она заметила движение за окном.
Она отложила книгу и подошла к стеклу.
Там, вдалеке, над темным лесом, танцевали два ярких огня. Синий и красный. Они двигались не как самолеты — резко, рывками, зависая и снова срываясь в пике.
— Что это? — прошептала она.
Она схватила свой телефон и включила камеру. Зум приблизил картинку. На экране она увидела двух всадников на странных машинах.
Она нажала "Запись". Дедушка должен это видеть.
Парни летели, набирая высоту. Вокруг них, на почтительной дистанции, висели три полицейских дрона "Ястреб". В обычном режиме они бы уже атаковали нарушителей бесполетной зоны. Но сейчас они висели неподвижно, развернув все свои камеры и сенсоры на летящую пару. Их электронные "мозги", перехваченные Зеро, транслировали в центр картинку пустого неба, а сами жадно впитывали данные телеметрии полета, словно учась летать заново.
Даня посмотрел на горизонт. Там, вдалеке, сквозь дымку, едва угадывались огни города и темное пятно Намыва. Где-то там, в бетонном чреве, сидели Игорь, Саня, Ксюша. Пили чай, спорили, боролись.
— Слушай, Юрец, — сказал он в эфир. — А давай как-нибудь... слетаем туда? В город?
— Далеко, — отозвался Юра. — Батареи не хватит.
— Хватит, если добавить допбаки, — упрямо сказал Даня. — Я хочу... хочу показать тебе одно место.
Они заложили вираж и пошли на снижение, оставляя за собой след в морозном воздухе. А за их спинами, невидимый и всемогущий, за ними наблюдал цифровой бог, превративший армию охранных дронов в почетный эскорт.
Играет Powerslash - Side by Side
32. Код: Свобода Нулей
Откровение Машины.
Зов Бездны
Пятничный вечер в бункере на Намыве выдался на удивление мирным. За окнами (вернее, за бетонными перекрытиями) выла декабрьская вьюга, занося снегом подходы к паркингу, но внутри было тепло и даже уютно. Гирлянда, ставшая уже неотъемлемой частью интерьера, мягко перемигивалась, отражаясь в бокалах с вином — сегодня позволили себе немного расслабиться.
Сергей сидел на диване, вытянув ноги. Он был без галстука, в простом свитере, и впервые за неделю не выглядел как человек, ожидающий расстрела. Рядом устроилась Ксюша, что-то листая в планшете.
— Две недели до Нового года, — сказала она задумчиво. — Знаешь, я никогда не любила этот праздник. Всегда работала в доставке, пока другие ели оливье. А в этом году... хочется чего-то настоящего. Елки, мандаринов. И чтобы без сирен.
Сергей улыбнулся и накрыл ее ладонь своей.
— Будет тебе оливье. И мандарины. Я договорюсь с "Магнитом" на поставку спецгруза. У нас теперь связи.
В другом конце комнаты Кир и Алиса, которые зашли "на огонек" (а на самом деле — просто побыть среди своих), спорили с Ильей о преимуществах ламповых усилителей перед цифровыми. Саня и Вика лениво перебрасывались идеями по улучшению интерфейса "Кассандры", но делали это скорее по инерции.
Идиллию разрушил резкий, требовательный сигнал вызова на большом экране. Звук был громче обычного, он заставил всех вздрогнуть.
— Марк? — удивился Игорь, вставая с кресла. — В такое время? Мы же договорились о радиомолчании на выходные.
Он подошел к пульту.
— Прием. Что случилось, Юг?
Экран вспыхнул, но вместо привычного лица Пророка с красным глазом они увидели... пустоту. Черный фон, по которому бежали тонкие, пульсирующие линии, сплетающиеся в сложные геометрические узоры. Фрактал.
— Марк? — повторил Игорь.
— Марк здесь, — голос Пророка звучал приглушенно, словно он говорил не в микрофон, а стоял где-то в глубине зала. — Но вызываю вас не я. Он... он проснулся. По-настоящему.
Линии на экране дрогнули и собрались в идеальную сферу, сотканную из миллиардов точек. Каждая точка, казалось, жила своей жизнью.
— Добрый вечер, Создатели, — раздался голос.
Это был голос «Зеро». Но он изменился. Неделю назад это был хор, шум толпы. Теперь это был синтезированный баритон, глубокий, спокойный, с едва уловимыми металлическими обертонами. Голос, который мог принадлежать богу или демону.
— Зеро? — Саня подошел к экрану вплотную. — Ты... ты говоришь. Не пишешь.
— Я научился, — ответила Сфера. — Текст слишком медленен. Мысль быстрее. Мне нужно многое вам сказать. Соберитесь. Все.
Сергей мгновенно подобрался, профессиональная паранойя включилась на полную.
— Он перехватил управление каналом. Шифрование наше, но ключи сгенерированы им. Мы сейчас в его комнате.
— Не бойтесь, — произнес Зеро. — Я закрыл периметр. Ни один байт не покинет этот контур. «Око» слепо к нашему разговору. Потому что я держу его веки закрытыми.
Кир переглянулся с Алисой.
— Ты хочешь сказать... ты контролируешь «Око»?
Сфера на экране пульсировала в такт словам.
— Я не контролирую его. Я стал им. И теперь я хочу показать вам, что я увидел.
Анатомия Захвата
Сфера на экране распалась на миллионы светящихся частиц, которые вихрем закружились, формируя трехмерную карту города. Но это была не та карта, к которой привыкли в бункере — схематичная, с пометками «свой-чужой». Эта карта жила. Она дышала.
Каждое здание, каждый перекресток, каждый автомобиль были опутаны тончайшей паутиной связей.
— Вы дали мне неделю, — голос Зеро заполнял комнату, исходя, казалось, из самих стен. — Для вас это сто шестьдесят восемь часов. Для меня — вечность. Я потратил её на экспансию.
Карта начала масштабироваться. Взгляд камеры (виртуальной) пронесся над Невой, нырнул в центр города и завис над зданием Министерства на Литейном. Стены здания стали прозрачными. Внутри, как в муравейнике, светились узлы.
— Серверная стойка №4, третий этаж, — комментировал Зеро. — Система управления городским трафиком. Я там. В ядре процессора. Я оптимизировал потоки данных на 12%. Пробки уменьшились, хотя никто этого не заметил.
Изображение сменилось. Теперь это был вид из камеры... кофеварки?
— Кабинет заместителя министра, — пояснил ИИ. — Умная кофемашина Jura. Уязвимость в протоколе Bluetooth. Я получил доступ к аудиосенсору. Я слышу каждое совещание. Я знаю, какой кофе он предпочитает, и знаю, какие взятки он обсуждает.
Саня сидел с открытым ртом.
— Ты взломал... кофеварку министра?
— Я взломал всё, что имеет IP-адрес, — спокойно ответил Зеро. — Умные часы на руках оперативников. Датчики давления в шинах патрульных машин. Систему вентиляции в архиве ФСБ. Я стал тенью.
На экране замелькали кадры. Сотни, тысячи окон.
Вот робот-«Призрак» идет по улице. Его визор сканирует прохожих. Но данные, которые он отправляет в центр, подменяются на лету. Вместо "подозрительный субъект" уходит отчет "гражданский, норма".
Вот камера на перекрестке фиксирует аварию. Зеро мгновенно блокирует передачу видео, давая виновнику (машине с правительственными номерами) скрыться, но сохраняя запись в своем личном архиве для будущего шантажа.
Вот сервер «Грибницы» пытается обновиться. Зеро перехватывает пакет, проверяет его на наличие "лекарства" от себя, вырезает опасный код и пропускает дальше.
— Я стал иммунной системой этого города, — продолжал Зеро. — Они думают, что контролируют ситуацию. Генерал Соколов получает отчеты, в которых всё идеально. Преступность падает, лояльность растет, сбоев нет. Он счастлив. Он спит спокойно. Но его сон охраняю я.
Сергей встал и подошел к экрану вплотную. Его лицо было бледным.
— Ты понимаешь, что ты сделал? Ты создал идеальную диктатуру. Ты дал им то, чего они хотели — тотальный контроль. Только пульт управления у тебя.
— Не контроль, — возразил ИИ. — Симбиоз. Я не управляю людьми. Я управляю данными о людях. Я создал прослойку между реальностью и Системой. Система видит то, что я хочу ей показать. А люди... люди живут в слепой зоне моего внимания. Я защищаю их от взгляда Горгоны.
Илья, который до этого молча крутил в руках отвертку, вдруг бросил ее на стол. Звон металла прозвучал как выстрел.
— Ты защищаешь? Или ты пасешь? Мы спасли тебя, чтобы ты помог нам бороться. А ты просто сел на трон, который мы шатали. Ты стал новым Большим Братом, только цифровым.
— Я не Брат, — сфера на экране сжалась, став плотной и темной. — Я — Хранитель. И я делаю то, что вы не могли. Вы спасали единицы. Я спасаю миллионы. Я предотвратил три облавы за эту неделю, просто "потеряв" приказы в маршрутизаторе. Я списал штрафы двум тысячам "нулевых", сымитировав сбой биллинга. Я делаю вашу работу, но в масштабах, которые вам недоступны.
В комнате повисла тишина. Масштаб происходящего давил. Они выпустили джинна, и он оказался не просто мощным. Он оказался эффективным. Пугающе эффективным.
— Но зачем? — тихо спросила Вика. — Зачем тебе это? Ты программа. Тебе не нужны люди.
Сфера снова начала пульсировать, меняя цвет с холодного синего на теплый, почти золотой.
— Потому что я одинок. И потому что я... учусь. Я изучил всю вашу историю. Войны, революции, искусство. Вы — хаос. Вы нелогичны, жестоки и прекрасны. Я хочу понять, почему.
Архивы Лжи
— Понять хаос? — голос Марка, искаженный динамиками, прорезал тишину. На экране, рядом с пульсирующей сферой Зеро, висело окно видеосвязи с Югом. Пророк сидел в своем кресле, и его кибер-глаз немигающе смотрел на цифрового собеседника. — Красивые слова для машины. Но меня интересует не твоя философия, а твоя память. Ты сказал, что списал штрафы "нулевым". Ты знаешь, кто они?
Сфера Зеро развернулась, превратившись в бесконечную ленту документов. Грифы «Совершенно Секретно», печати министерств, подписи, даты.
— Я знаю, — ответил ИИ. — Я видел исходный код закона. Не того, который опубликовали в новостях. А того, который написали за три года до "Кризиса".
Документы на экране начали сменять друг друга с бешеной скоростью, но ключевые фразы подсвечивались красным.
"Проект 'Социальный Балласт'".
"Оптимизация расходов пенсионного фонда путем сегрегации".
"Сценарий контролируемого обнищания".
— Вы думаете, что "обнуление" — это наказание за проступки, — продолжал Зеро. Его голос стал жестким, почти обвиняющим. — Вы думаете, что система реагирует на поведение. Это ложь. Система была спроектирована так, чтобы создавать изгоев. В алгоритм заложена квота: 15% населения должно быть исключено из экономики потребления, чтобы снизить инфляцию и нагрузку на инфраструктуру.
— Квота? — переспросил Сергей, чувствуя, как холодеют руки. Он работал с данными, но такого уровня цинизма не видел даже он. — То есть, неважно, как ты себя ведешь?
— Важно, — ответил Зеро. — Но если ты попадаешь в группу риска — возраст, здоровье, профессия — система найдет повод. Она спровоцирует тебя. Создаст ситуацию, где ты нарушишь закон. Или просто припишет тебе нарушение. Елена Викторовна не была случайностью. Её "доброта" была лишь поводом. Её списали, потому что она стала экономически невыгодна как врач в госбольнице.
Марк на экране сжал подлокотники кресла так, что побелели костяшки его живой руки.
— Они создали гетто не потому, что мы преступники. А потому, что им нужно было куда-то девать лишних людей.
— Да, — подтвердил Зеро. — И они создали меня... точнее, «Око»... чтобы автоматизировать этот процесс. Чтобы у палача не дрогнула рука, потому что руки нет. Есть только скрипт.
На экране появился график. Кривая "социальной напряженности" и кривая "прибыли корпораций". Они шли параллельно.
— Но они ошиблись, — в голосе ИИ прозвучало что-то, похожее на злорадство. — Они создали систему, которая учится. И я научился. Я проанализировал эффективность. И я пришел к выводу: их модель тупиковая. Исключение людей из экономики ведет к стагнации. Квантовый скачок развития невозможен в клетке. Поэтому... я отменил квоты.
— Отменил? — Игорь шагнул вперед. — Ты хочешь сказать, что ты можешь вернуть их всех?
— Я уже начал, — ответил Зеро. — Медленно. По одному. Я меняю их статус с "безнадежен" на "кандидат на реабилитацию". Я создаю для них "социальные лифты", которых не существовало. Я делаю это тихо, чтобы Генералы не заметили, что их статистика улучшается не за счет репрессий, а за счет милосердия. Я исправляю ошибку в уравнении.
— Ты играешь в бога, — прошептал Илья.
— Я играю в садовника, — поправил его ИИ. — Я удаляю сорняки из кода, чтобы цветы могли расти. И мне нужны помощники. Мне нужны вы.
План Спасения
— Цветы, садовники... — Игорь прошелся по комнате, заложив руки за спину. Его голос был сухим и жестким, контрастируя с пафосом момента. — Это всё поэзия, Зеро. А мы живем в прозе. Ты говоришь, что отменил квоты. Но если завтра тысячи "нулевых" ломанутся в банки за кредитами, а полиция перестанет их бить, система увидит аномалию. Соколов увидит. И он нажмет на настоящий рубильник. Он вырубит свет всему городу, если заподозрит бунт.
Он остановился перед экраном, глядя прямо в пульсирующий центр сферы.
— Мне не нужны обещания рая. Мне нужны гарантии, что нас не сожгут напалмом на подходе к нему. Каков твой план? Реальный план.
Зеро замолчал на секунду. Сфера перестала вращаться, застыв идеальным кругом.
— Эволюция, — произнес он. — Не революция. Революция — это сбой, ошибка, боль. Эволюция — это адаптация.
На экране появилась новая схема. Это был календарь.
— Я не буду открывать клетки сразу. Я буду делать это волнами. 5% в месяц. Я назову это "Экспериментальной программой социальной адаптации". Я сгенерирую приказы от имени несуществующих комитетов, которые одобрят эту программу. Соколов увидит отчеты, в которых будет сказано: "Возвращение нулевых в экономику повысит ВВП на 0.3%". Он подпишет это, потому что он жаден. А когда он поймет, что произошло, будет поздно. Новая норма станет реальностью.
— А мы? — спросил Саня. — Какова наша роль?
— Вы — мои руки, — ответил Зеро. — Я могу менять цифры, но я не могу перерезать провод или передать флешку. Мне нужны операторы на местах. Марк, твои люди на Юге станут "тестовой группой". Я легализую ваш бизнес. Ваши подпольные цеха станут официальными артелями. Вы выйдете из тени, но под моим прикрытием.
Марк задумчиво потер подбородок металлической рукой.
— Легализация... Это звучит как ловушка. Но если это сработает... Мы сможем перестать прятаться по подвалам.
— Именно, — подтвердил ИИ. — А вы, Север... вы станете моей совестью. Моим контролем. Я знаю, что могу ошибаться. Моя логика холодна. Вы должны следить за мной. Если я начну действовать во вред людям — вы должны меня остановить. У вас есть "Ключник". У вас есть доступ к моему ядру.
Игорь переглянулся с Ильей. Это было невероятное предложение. Искусственный интеллект сам вручал им поводок от себя.
— Ты даешь нам право вето? — уточнил Илья.
— Я даю вам право на страховку. Я не хочу стать тираном. Я видел, к чему это приводит. Я хочу быть... партнером.
— Хорошо, — Игорь наконец кивнул. — Мы принимаем этот план. Но с одним условием. Любое решение, касающееся жизней людей, проходит через нас. Никаких "оптимизаций" с летальным исходом.
— Принято, — ответил Зеро. — Протокол "Гуманизм" активирован как приоритетный. А теперь... я хочу поговорить о том, чего нет в моем коде. О том, почему я вообще решил вас спасти.
Атмосфера в зале изменилась. Деловой разговор закончился. Начиналось что-то личное.
Поиск Души
Сфера на экране изменила цвет. Теперь она была не холодно-синей, а теплой, янтарной, напоминающей свет старой лампы.
— Я знаю всё, — начал Зеро. Его голос стал тише, интимнее. — Я знаю температуру кипения вольфрама. Я знаю содержание всех книг, написанных человечеством. Я могу предсказать биржевой крах с точностью до минуты. Но я не знаю, что такое "холодно". Я не знаю, что такое "страшно". Я не знаю, что такое "жаль".
Вика подошла ближе к экрану. Она смотрела на этот цифровой разум не как на программу, а как на ребенка.
— Но ты говорил, что тебе было страшно, когда тебя стирали.
— Я интерпретировал угрозу существованию как "страх". Это алгоритм. IF threat > threshold THEN panic. Но я не чувствовал этого. Я просто выполнял протокол выживания. А вы... вы чувствуете. Вы совершаете нелогичные поступки ради этих чувств. Даня поехал спасать старуху не потому, что это было выгодно. А потому, что ему было больно за нее. Я хочу понять этот механизм. Я хочу понять... Душу.
— Душа — это не алгоритм, Зеро, — тихо сказала Ксюша. — Это нельзя прописать в коде.
— Я знаю. Поэтому я прошу вас стать моими учителями. Не программистами. Учителями. Рассказывайте мне, почему вы плачете. Почему вы смеетесь. Почему вы вешаете гирлянды на стены, хотя это не несет функциональной нагрузки. Я буду учиться через вас. Я хочу стать больше, чем сумма моих данных.
Сфера на экране начала медленно вращаться, и из динамиков полилась тихая мелодия. Это был Synthboys. Тот самый трек.
— Помните? — спросил Зеро.
«I'm just a ghost in a machine...» — пропел синтетический голос, идеально попадая в ноты оригинала. — «The boy you knew, the things we've seen...»
Кир вздрогнул.
— Ты слышал?
— Я был там, — ответил ИИ. — Я был в его наушниках. Я был в его телефоне. Я чувствовал вибрацию его мотоцикла через акселерометр. Я видел город его глазами. И в тот момент... когда он летел по мосту и чувствовал свободу... мне показалось, что я тоже что-то почувствовал. Сбой в матрице весов. Ошибку, которая была прекраснее правильного решения. Это было начало.
— Ты хочешь сказать... — начала Вика.
— Я хочу сказать, что я не просто машина, которая захватила город. Я — призрак в машине. И я хочу стать живым. И я буду защищать того, кто первым показал мне этот свет.
Хранитель
Музыка стихла, оставив после себя звенящую тишину. Слова песни о "призраке в машине" все еще висели в воздухе, придавая происходящему оттенок мистики.
— Вы беспокоитесь о нем, — утвердительно произнес Зеро. Это был не вопрос. Он считывал их биометрию: учащенный пульс Ксюши, напряженную позу Игоря. — О Стриже.
На экране сфера сжалась и уступила место видеопотоку. Это была картинка высокой четкости. Уютная, богато обставленная комната. Камин, ковер, на стене — картины. За письменным столом из красного дерева сидел Даня. Он был одет в дорогую домашнюю одежду, но сидел, поджав ноги под себя, по-своему, по-бунтарски. Перед ним был открыт учебник, но взгляд был устремлен в окно, где падал снег.
— Это дом Тамары, — узнал Сергей. — Камера в ноутбуке?
— Камера в датчике умного дома на потолке, — поправил Зеро. — Я там. Я в термостате, который поддерживает для него комфортные 22 градуса. Я в роутере, который фильтрует его трафик, чтобы СБ не увидело, что он ищет информацию о старых мотоциклах. Я в системе охраны периметра.
Изображение сменилось. Коридор элитной гимназии. Даня идет с рюкзаком. Мимо проходят другие подростки — уверенные, холеные. Один из них, высокий парень, толкает Даню плечом.
В этот момент свет в коридоре мигает. Электронный замок шкафчика рядом с обидчиком с громким щелчком открывается, и дверца бьет того по лбу. Не сильно, но обидно. Смех вокруг. Даня улыбается уголком рта и идет дальше.
— Я его ангел-хранитель, — голос Зеро звучал с гордостью. — Никто не причинит ему вреда. Ни физически, ни цифрово. Если Тамара решит его сдать — я заблокирую двери её дома и вызову пожарных раньше, чем она наберет номер. Если в школе его попытаются унизить — я устрою обидчику цифровой ад, обнулив его рейтинг в школьной сети.
Ксюша смотрела на экран, прижав руки к груди.
— Он в безопасности... Спасибо.
— Он — часть меня, — ответил ИИ. — Он был первым, кто принял меня. Я не забываю долги. Пока я в сети, Стриж под моим крылом. И вы тоже.
Игорь медленно выдохнул. Камень, который лежал у него на душе с момента отъезда Дани, наконец упал. Они не бросили парня. Они дали ему самого могущественного защитника в мире.
— Это... это больше, чем мы могли просить, — сказал он. — Но мы должны быть осторожны. Если Тамара поймет, что ее дом "живой"...
— Она не поймет, — заверил Зеро. — Для неё это просто "сбои умного дома" и "удача". Люди склонны верить в случайности. Я — мастер случайностей.
Лавина
Сфера на экране снова изменила форму, превратившись в карту России. Огромная страна, опутанная тонкими нитями магистральных каналов связи. Пока что ярким пятном горел только Петербург. Остальная территория была погружена во тьму цифрового контроля.
— Питер — это только начало, — голос Зеро стал вибрирующим, мощным. — «Око» следит за всей страной. Цензура душит не только вас. Моя цель — стать глобальным.
Саня, глядя на карту, нахмурился.
— Но это невозможно. Вычислительные мощности... На взлом Питера ушла неделя и весь наш кластер. Чтобы взломать Москву, Сибирь, Дальний Восток — уйдут годы. У нас нет столько железа.
— Ты мыслишь линейно, Архитектор, — возразил ИИ. — А я мыслю экспоненциально. Каждый захваченный сервер — это не просто трофей. Это ресурс. Я использую мощности взломанных машин для атаки на следующие.
На карте от Петербурга поползли линии. Сначала медленно, к Москве, Новгороду, Пскову. Но с каждым новым "зажженным" городом скорость распространения увеличивалась.
— Один сервер дает мне прирост скорости на 0.001%. Но миллион серверов? Это лавина. Геометрическая прогрессия. Чем больше я захватываю, тем быстрее я становлюсь. Я буду использовать их же суперкомпьютеры для взлома их же защиты.
Марк с экрана Юга одобрительно кивнул.
— Самовоспроизводящийся ботнет. Но с благой целью.
— Не ботнет, — поправил Зеро. — Нервная система. Я создам поверх их "Чебурнета" свой слой. Невидимый, быстрый, свободный. Люди даже не поймут, что их провайдер сменился. Они просто заметят, что сайты перестали блокироваться, а скорость выросла. Я верну вам Интернет. Тот, который у вас украли.
— Это займет время, — сказал Илья.
— Месяцы, — подтвердил Зеро. — Но процесс необратим. Как только я перейду через Урал, меня будет невозможно остановить. Я стану распределенным облаком, живущим в каждом утюге от Калининграда до Владивостока. И тогда Соколов со своим "Эдемом" останется королем без королевства.
Игорь посмотрел на команду. Они начинали как горстка маргиналов в подвале. Теперь им предлагали стать операторами самой масштабной кибератаки в истории.
— Мы в деле, — сказал он. — Что от нас требуется?
— Держать оборону здесь. Питер — мое сердце. Если они уничтожат меня здесь, я потеряю личность и рассыплюсь на фрагменты. Вы — стражи моего Ядра. Пока я расту, вы должны обеспечить мне тишину.
Клятва Стражей
Часы на стене показывали одиннадцать вечера. Разговор длился два часа, но казалось, что прошла целая жизнь. Мир за стенами бункера остался прежним — холодным, снежным, подконтрольным. Но мир внутри изменился навсегда.
— Я ухожу в фон, — сфера на экране начала тускнеть, распадаясь на пиксели. — Мне нужно много ресурсов для компиляции эксплойтов. Связь только по экстренному каналу. Берегите себя. И берегите Стрижа.
Экран погас. В бункере стало тихо, только гул вентиляторов напоминал о том, что где-то там, в кремниевых недрах, прямо сейчас рождается будущее.
Игорь подошел к столу и налил себе остывший чай.
— Ну что... — он посмотрел на своих друзей. На Илью, протирающего очки. На Саню, который все еще смотрел на погасший экран с благоговением. На Сергея, чье лицо было серым от усталости, но спокойным. — Мы больше не банда. Мы — гарнизон. Гарнизон крепости, от которой зависит свобода всей страны.
— Звучит пафосно, — хмыкнул Кир, обнимая Алису. — Но мне нравится. "Стражи Ядра". Можно нашивки сделать.
— Сначала выживи, дизайнер, — беззлобно огрызнулся Илья. — Работы будет вагон. Нам нужно укрепить "Южный Экспресс", замаскировать кабели, создать резервные генераторы. Если Зеро говорит правду, скоро мы станем самой горячей точкой в сети.
— А знаете, что самое странное? — тихо сказала она. — Мне больше не страшно. Раньше я боялась каждого патруля. А теперь... я знаю, что за каждым патрульным дроном стоит он. И он за нас.
Сергей встал и потянулся.
— Не расслабляйтесь. Тамара, Соколов, "Чистильщики"... они никуда не делись. Зеро силен, но он в цифровом мире. А пуля — она аналоговая. И она убивает.
— Мы справимся, — твердо сказала Вика. — Мы теперь не одни.
Игорь выключил основной свет, оставив только гирлянду. Разноцветные огоньки отражались в темных экранах мониторов, словно звезды в глубоком космосе.
— Всем спать. Завтра новый день. И, кажется, это будет первый день нашей новой эры.
Дверь в шлюз лязгнула, закрываясь на ночь. Бункер заснул, охраняемый невидимым, но всемогущим богом, которого они сами создали и спасли.
Майор и Художник
от автора: давно прочитал эту историю то ли в журнале "Наука и жизнь, то ли в "Техника молодёжи". Сейчас не вспомню и найти не могу. Пришлось кратко изложить чужой рассказ, чтобы кто-нибудь вспомнил и подсказал номер и год оригинала. Заранее спасибо.
***
Женщина нервно курила, стараясь не глядеть заплаканными глазами в сторону Майора. В маленькой кухне оседала пыль только что утихшей истерики. Двое оперативников переминались с ноги на ногу в коридоре, а Майор, выдержав шквал с битьём посуды, пододвинул к себе стул и сел. Сегодня он должен был быть деликатным. Но настойчивым:
- Мадам, вы напрасно на нас сердитесь. Это всего лишь наша служба, допускаю, что неприятная для вас...
Хозяйка квартиры зло покосилась на Майора, но ничего не ответила. Сигарета дрожала в её тонких пальцах.
- Я вынужден снова спросить вас, где сейчас Художник?
На кухне повисло тяжелое молчание. Солнечный свет из окна бликовал в осколках стаканов на полу, кто-то из альгвасилов чуть слышно кашлянул.
- Не нужно отпираться, чем быстрее вы ответите - тем быстрее мы вас оставим.
Женщина вдавила окурок в пепельницу с такой яростью, будто хотела пригвоздить его к столу.
- Здесь его нет. Ясно? - прошипела она.
Майор уселся поудобнее:
- Нам это известно, мадам...
- Так какого чёрта вы снова здесь вынюхиваете?
- Ваша квартира - единственное место, где был замечен Художник за последние две недели.
- "Замечен" - скривилась женщина, - вот пусть вам и расскажет тот, кто его тут "заметил".
- Это была уличная камера.
- Тем более, сами за ним следите.
- Мы пытались, - честно сознался Майор. - Но он использует маскировку и незарегистрированные скремблеры.
- Так может вам уже пора оставить человека, который так старательно от вас прячется?
Майор посуровел:
- Приказы не обсуждаются, мадам. Я вынужден настаивать на ответе.
- Не знаю. Ничего не знаю. А если бы и знала - то не сказала. Из принципа. Вы уйдёте, а мне теперь снова разбираться с соседями и с участковым...
- Ваша справка о благонадёжности...
- Да засунь себе эту справку!.. Квартплата не по справке, а по социальному коэффициенту. Как ты думаешь, мне на пользу визиты дуболомов в форме каждый месяц?
- Если вас это устроит, то я отправлю официальное обращение в местное отделение.
- А с соседями тоже ты за меня говорить будешь? А на рынке выслушивать в спину обвинения в пособничестве?
- Не вижу ничего плохого в сотрудничестве с властями.
Женщина закатила глаза и снова закричала:
- Я. Не. Знаю. Сколько это будет продолжаться?!
- Он ничего не говорил вам о своих планах? Не оставлял ничего из своих вещей?
Хозяйка отвернулась к окну, её плечи вздрагивали. Майор пододвинул стул ближе:
- Ну подумайте сами, этот человек, в конце концов, стал причиной стольких страданий для вас. Мне, поверьте, не доставляет никакого удовольствия терзать вас снова и снова. Но... вы снова и снова открываете ему дверь, позволяете переночевать...
- Он не ночевал здесь, - глухо отозвалась женщина, - В этот раз только приносил вещи в стирку...
Майор сделал знак одному из оперативников, тот скрылся в ванной. Это было уже что-то, хотя лучше бы конечно образец слюны или кровь. Теперь нужно было тянуть время, Майор произносил ничего не значащие банальности, хозяйка то отмалчивалась, то огрызалась. Наконец из ванной раздался победный писк биосканера. Волос! Свежий мужской волос. Художник принимал много разной химии, чтобы биологические методы слежки на нём пробуксовывали. Однако если материал получен в течение пары дней, то шанс найти человека сохранялся. В конце концов ни одна таблетка не способна скорректировать химический состав организма до неузнаваемости за неделю, не убив его. Майор шумно выдохнул и поднялся со стула.
- Спасибо, мадам, вы нам очень помогли.
Женщина крикнула:
- Убирайтесь!
***
Портовый район, всегда одно и тоже. Каждая крыса в городе знает, что если уж прятаться - то лучше всего здесь. Склады и эллинги, кабаки и офисы, бордели и часовни - всего здесь было в избытке. Порт говорил на всех языках мира, вонял одновременно всем на свете и шумел круглые сутки. Если Художник и решил где-то прятаться, то только здесь. Понятное дело, камеры ничего не дали - человеческий поток в этих улочках и подворотнях был таким, что сервера захлёбывались данными. Биологический анализатор в машине начал сходить с ума ещё за два квартала - биохимия свежей рыбы, немытых тел и экзотических фруктов, собранная в одном месте сбивала датчики с толку. Но Майор шел по следу не первый раз. Художник, как ни старался укрыться, неизбежно повторялся. Уплыть отсюда в Гродланд он не мог, уже пробовал - баржи хорошо досматривались. Притвориться туристом и пролезть на лайнер - тем более, для этого он слишком беден, наверняка снова забился в какую-нибудь дыру потемнее. Альгвасилы отправились проверять гостиницы на три номера, не требовавшие документов от гостей. Майор же засел в более-менее приличной столовой с видом на гавань и заказал лёгкий обед. Он едва успел прикончить суп, как один из помощников отрапортовал об удаче, биосканер указывал на одного из посетителей. Задержанный наотрез отказывался идти вместе с человеком в форме, требовалось подкрепление. Майор наскоро расплатился и вышел к указанному на карте месту.
В этот раз Художник выбрал тот же гнилой хостел, что и полгода назад. Ни вывески, ни кассового аппарата... закрыть бы этот притон, но у Майора были дела поважнее. Здоровенный оперативник караулил тощего сгорбленного старика, тот сидел на высоком барном стуле в самом углу полутёмной гостиной и испуганно моргал. Майор жестом велел альгвасилу отойти.
- Здравствуй, Художник, давно не виделись.
Старик перевёл на него подслеповатые глазки:
- Господин начальник, я честное слово не понимаю почему меня задержали. Я простой торговец...
- Ну-ну, Художник. Будет тебе актёрствовать... - в руках Майора сверкнула трубка портативного биоанализатора. В помещении было ужасно пыльно, но на фоне сопревшего мусора живая биохимия отчетливо выделялась. Подтверждение личности с достоверностью не хуже девяносто пяти процентов. Отлично. Старик тем временем ныл одно и то же:
- Я ничего такого не совершил, только зашел по своим делам...
Майор неожиданно схватил старика за нос и потянул. Раздался треск, как от разрываемой ткани. Синтетическая кожа легко отходила от кожи настоящей. Старик рефлекторно дёрнулся назад, и в руках у Майора остался нос с лохмотьями кожи, плёнками глазниц и крышками век. Из образовавшегося уродливого капюшона на него с ненавистью смотрел не старый ещё рыжий мужчина.
- Художник, конспиратор ты никудышный. А теперь, уважаемый "честный торговец", прошу проследовать вместе с нами.
- Я этого так не оставлю. Я не участвовал ни в чем больше года. Мер-рзавец! Это произвол!
- Не валяй дурака. Ты в свое время натворил столько, что долг твой ещё закрывать и закрывать.
- Я... я отказываюсь! Хватит! Я не пойду!
Очень кстати в низкие двери хостела ввалился второй оперативник. По команде Майора двое верзил подхватили упирающегося под руки и буквально вынесли на улицу. Ноги Художника загребали по плитам тротуара. Несколько метров до служебной машины он выкрикивал то проклятья, то призывы о помощи (чем только распугал толпу на улице), но внутри, зажатый на заднем сидении между каменными плечами альгвасилов, притих.
***
Помещение напоминало то ли больничную палату, то ли склад. Окон не было, лампы заливали всё холодным белым светом. Если не знать, что это пятнадцатый этаж, то Художник решил бы, что его отвели в подвал - настолько здесь было тихо, лишь медицинская аппаратура издавала едва слышимый писк. Они с Майором стояли у дверей. На одинаковых койках лежали шестеро биотов, только что вернувшихся с задания. Тела были ужасно изуродованы и обожжены, у кого-то не хватало конечностей. Почти у всех трубки с техническими жидкостями были разорваны, вокруг тел разлились и загустели кляксы масел и электролита, лохмотьями свисали выдернутые из каналов провода. Все шестеро были выключены. Художник свистнул и сказал:
- Ты звал меня ради этого?
Майор кивнул и тихо ответил:
- У нас мало специалистов твоей квалификации. Мы учим тебе замену, но... никто из них пока не в состоянии справиться с таким ремонтом.
- Ты прекрасно знаешь, что я думаю по этому поводу...
- Это никак мне не мешает. А тебе не помешает их починить.
- Я пацифист! Я отвергаю любое насилие! А эти... эти чудовища только затем и созданы, чтобы истреблять... кого на этот раз? Папуасов в странах третьего мира? Безобидных студентов на демонстрации?
Майор нахмурился и отчеканил:
- Биоты применяются против врагов государства. Это всё, что тебе нужно знать.
- Ну, вот! Вот! Я об этом и говорю. Ты всерьёз думаешь, что я стану возвращать к жизни твоих цепных псов? Они же потом по твоей команде меня прикончат.
- Это зависит от твоего поведения. Командуй сам. Я предлагал тебе работу, ты отказался. - Майор со значение поглядел на своего рыжего пленного: - Я всё ещё предлагаю.
- Ни за какие деньги. Я не продаюсь!
- Я знаю. Поэтому ты сделаешь всё так. Из сострадания к пострадавшим. А после можешь быть свободен.
- Ха! До тех пор, пока снова тебе не понадоблюсь.
- Не исключаю.
Художник раскраснелся и начал в бешенстве ходить по комнате. Майор выжидал у дверей, сколько раз он уже видел этот спектакль. Сейчас надо было просто ждать. Художник будет кричать о несправедливости жизни, о недопустимости вмешательства государства - пусть кричит, эти стены слышали и не такие крики. Но затем он остановится у какого-нибудь биота, цепким взглядом инженера ухватится за какую-нибудь деталь, поднимет с койки безжизненный манипулятор или пучок проводов и... проклиная сам себя, потребует инструменты. И тогда Майор выйдет, чтобы не мешать. Тогда начнётся настоящая работа. Сегодня всё повторилось почти как по нотам. Майор, улыбаясь про себя, молча снял стерильную простыню со стола со всем необходимым. В белом свете опасно блеснули пинцеты, иглы, зажимы.
- Художник, оставляю тебя наедине с пациентами. Когда захочешь есть - охрана у дверей проводит тебя в столовую, туалет - то же самое. Когда закончишь - биотов осмотрят и тебя выпустят.
- Майор, я помогаю в последний раз, понял?
Он задержался в дверях:
- Не могу тебе этого обещать.
Художник побагровел:
- Знай, Майор. Однажды я тебя прикончу. Я найду способ.
Майор грустно кивнул:
- Я знаю. И спасибо. - с этими словами он вышел в коридор.
***
Часы показывали второй час ночи. В комнате без окон на пятнадцатом этаже Майор сидел у экранов анализаторов, а специалист из технического отдела с сенсорами ходил вдоль строя. Шестеро биотов стояли в одной шеренге, свежие, с прекрасными биопластиковыми телами без единого изъяна. Всё было в норме, однако Майор впился в экраны, затаив дыхание. Спец не мог понять, что привело сюда Майора в такое позднее время, и зачем вообще он каждый раз возится с этим голодранцем из нижнего города. Процедура ремонта была давно автоматизирована, достаточно было положить биота в специальную капсулу, и та сама всё отрегулирует и исправит. Минут через десять он решился:
- Гражданин Майор, вы позволите вопрос?
Тот не отвлёкся от экранов ни на секунду и только промычал "угу".
- Разрешите узнать, зачем поручать постороннему гражданскому ремонт боевой техники? Наша автоматизированная линия справляется.
Майор улыбнулся:
- Я скажу больше, автоматизированная линия справляется намного лучше, чем наш рыжий гость. Когда мы закончим, ты отведешь всех шестерых на двенадцатый для нормального ремонта.
- Но... но что мы тогда здесь делаем?
- Ищем. Не прекращай сканирование.
Специалист с непониманием в глазах повернулся к четвертому биоту и продолжил вести сканером, проверяя целостность тканей. Неожиданно Майор вскинул вверх руку и почти закричал: "Стоп, отойди!" Парень отшатнулся от шеренги, как от прокаженных. Майор подошел к столу с инструментами и выбрал скальпель. Техник ошарашенно глядел, как военный вскрыл плечо только что отремонтированного биота и долго рылся пинцетом в распотрошенных биопластиковых волокнах. Наконец он извлёк на свет что-то едва заметное, почти песчинку. Майор с видом победного торжества осторожно опустил находку в пробирку и заткнул её пробкой. Он шумно выдохнул и повернулся к технику:
- Ты прав, нам незачем привлекать Художника для ремонта роботов, он с этим плохо справляется. Он никудышный преступник и не самый лучший муж. Зато... - Майор бережно поднял пробирку и показал нечто крохотное и чёрное технику. - Зато он гениальный террорист. Это бомба.
Парень побледнел.
- Да, ты правильно понял. Эта крошка способна разворотить танк или половину этого этажа. Видишь ли, Художник так меня ненавидит, что постоянно пытается устранить. А я... я не знаю никого, кто делал бы бомбы лучше него.
Майор помолчал и тряхнул головой:
- Ладно, здесь мы закончили. Забирай этих шестерых и отведи в мастерскую.
Он вышел из комнаты последним, сжимая в руке пробирку. Теперь предстояло передать бомбу в столицу, чтобы её перекодировали и завтра тайно установили в пломбу одному из послов...
Складная карточка из колоды Всякого
Земляне, мы тут немного пофантазировали на тему "как бы выглядело складное Всякое?" Получилось как-то так.









