
Полная версия
Архивист чужого дома
— Павел, вы говорили, что корпус нельзя вынуть, пока закрыт нижний фиксатор.
— Да.
— После открытия его можно снять вместе с подключённым шлейфом?
— На полметра. Потом разъём надо отсоединять.
— Чёрная стяжка ваша?
Он закрыл глаза на секунду.
— Моя.
Нина резко повернулась к нему.
— Значит, ты лгал.
— Я сказал, что не вынимал резерв.
— А это что?
— Я открывал нишу. Не сегодня вечером.
Елена указала на волокно.
— Когда?
— Днём. Около четырёх.
— Зачем?
Лев произнёс его имя негромко:
— Павел.
Это прозвучало не предупреждением, а напоминанием об общей версии.
Павел поднял с полки повреждённую перчатку.
— В пятнадцать сорок западный контур дал скачок температуры. Локальный датчик показал двадцать семь. Главный узел ничего не принял. Я открыл шкаф, отжал нижний фиксатор и проверил задний разъём. Корпус не вынимал: вытянул сантиметров на десять, пока не увидел шлейф. Стяжка была надрезана, я заменил её. Перчатку зажевало креплением.
— Почему этого нет в журнале обслуживания?
— Я создал запись на западном контроллере.
— На ветке, которая доставляет события с задержкой, — сказала Елена.
— Тогда я ещё не знал о задержке.
— Но после прибытия Елены знал, — сказал Лев. — И не сообщил.
Павел впервые посмотрел на него с открытой злостью.
— Я сообщил вам в шестнадцать ноль две. Вы велели не трогать резерв до приезда архивиста и не пугать семью из-за датчика.
— У вас есть подтверждение?
— В служебном журнале дома.
— Который сейчас разошёлся на трёх узлах.
— Поэтому вы и выбрали такую ночь, да?
Тишина после его слов оказалась убедительнее обвинения. Лев не ответил.
Елена приблизила терминал к западному контроллеру, не снимая режим сверки.
— Покажите локальную очередь без доставки.
Павел ввёл сервисный код. Экран выдал двадцать семь неотправленных событий. Между проверкой датчика и открытием корпуса стояла запись в 15:47:11: «НИЖНИЙ ФИКСАТОР — АВАРИЙНЫЙ ДОСТУП». Авторизация: сервисный ключ П.К. Через две минуты — «ШЛЕЙФ ПИТАНИЯ — ВИЗУАЛЬНЫЙ ОСМОТР». В 15:51 — замена стяжки.
Елена прокрутила ниже.
В 16:18:43 фиксатор открыли снова.
Авторизации не было.
В 16:19 датчик массы зарегистрировал уменьшение нагрузки на четыре целых восемь килограмма. В 16:26 — возвращение той же массы. Температура корпуса после возврата составляла двадцать три градуса.
— Это вы? — спросила Елена.
Павел побледнел.
— Нет.
— Сервисный ключ?
— Был у меня.
— Всё время?
Он посмотрел на свою перчатку, будто ответ прятался в разрезе.
— После осмотра я оставил связку в мастерской. На пять минут. Меня вызвали к воротам — проверять резервный привод.
Нина тихо рассмеялась.
— В этом доме всех вызывают ровно туда, где они не должны быть.
— Кто вызвал? — спросила Елена.
— Сообщение от внутреннего диспетчера.
— Голосовое?
— Текст.
— Подписано кем?
— Львом Аркадьевичем.
— Я ничего не отправлял, — сказал Лев.
— Оно было на служебном экране.
— Значит, вы ошиблись адресатом.
— Или кто-то использовал ваш маршрут, — сказала Елена. — Как использовал голос Веры.
За кирпичом дважды стукнули. Один раз помедлили. Потом ещё раз.
Два коротких, один длинный.
Павел шагнул к стене.
— Это не из кладовой.
— А откуда? — спросила Софья.
Он провёл фонарём вверх. Над прямоугольником старой двери уходил узкий кабельный канал. Один из проводов был новым — чёрным, без маркировки, толщиной с палец. Он проходил через охлаждающую панель к шкафу, но не входил ни в один из трёх видимых разъёмов резерва.
— Четвёртый кабель, — сказал Павел. — Его не было на схеме.
Лев двинулся к шкафу. Роза захлопнула складную распорку, и тяжёлая рама остановилась между ними.
— Уберите, — сказал он.
— Сначала архивист закончит осмотр.
Елена проследила кабель до нижней части ниши. Там он исчезал за пластиной с заводской наклейкой охлаждающего контура. Два винта были покрыты пылью. На третьем блестела свежая грань.
— Павел, это относится к резервному узлу?
— Нет. И к охлаждению тоже.
— Можно выяснить, куда он ведёт, не включая и не отключая его?
— Трассоискателем. Он в мастерской.
— Вы пойдёте за ним не один.
— Я пойду, — сказала Нина.
— Нет, — одновременно сказали Лев и Софья.
Нина посмотрела на мать, потом на дядю.
— Забавно. Семь минут назад я была посторонней. Теперь вы оба решаете, куда мне можно идти.
Елена выбрала Розу. Та знала служебные проходы и не зависела от электронных дверей. Павел отдал ей механический ключ от мастерской, но Роза не взяла его.
— У меня свой.
Они ушли вдвоём. Елена осталась у раскрытой ниши, не позволяя никому приблизиться к резерву. Она сохранила в контейнер осмотра температуры, макроснимок волокна, повреждение перчатки, локальные события 15:47 и безымянное открытие 16:18. Затем запросила контрольную сумму журнала на самом западном контроллере. Пока узлы были заморожены, Лев не мог заставить главный принять удобную версию без появления ещё одного расхождения.
— Вы обвиняете техника? — спросил он.
— Я фиксирую два доступа. Первый Павел объяснил и подтвердил локальными событиями. Второй длился семь минут и включал снятие массы узла.
— Его ключ был доступен. Этого достаточно.
— Для подозрения — да. Для вывода — нет.
Павел стоял у кирпичной перегородки и слушал дыхание за ней. Его законный доступ объяснял волокно, но одновременно доказывал другое: он скрыл от Елены дневной сбой и оставил ключ без присмотра. Даже если резерв менял не он, кто-то точно знал его порядок работы.
— Почему вы сразу отрицали доступ? — спросила Елена.
— Потому что вопрос был о замене резерва. А потом я понял, как выглядит перчатка.
— И решили, что узкая правда безопаснее полной.
— В этом доме полная правда всегда принадлежит тому, кто первым успел её записать.
— Поэтому я и спрашиваю до синхронизации.
Роза и Павел вернулись через четыре минуты. Он нёс жёлтый трассоискатель, она — лист, вырванный из старой технической папки.
— Нашла план северной магистрали, — сказала Роза. — В мастерской его не было. Он лежал в моём шкафу.
На плане за западной стеной действительно значилась угольная кладовая. Поздняя красная линия отсекала её от котельной, но рядом оставался узкий вентиляционный лаз. Через помещение был карандашом проведён кабель к маленькому прямоугольнику без подписи.
Павел включил трассоискатель и поднёс датчик к чёрному проводу. Прибор пискнул. Он медленно повёл им вдоль стены. Сигнал уходил не к главному узлу и не к комнате согласия. Он поднимался внутри старой кладки, поворачивал за кирпичный проём и заканчивался в полости.
— Там терминал, — сказал Павел. — Маленький. Питание и обмен данными. Не узел, но он подключён к западной ветке.
Елена посмотрела на запись 16:18. Резерв вынули на семь минут. Этого хватало, чтобы добраться до скрытого разъёма за его корпусом или пропустить кабель внутрь ниши. Не хватало, чтобы построить тайную систему с нуля. Значит, полость существовала раньше сегодняшнего вмешательства.
Из-за стены снова донёсся голос. На этот раз яснее:
— Нина, не верь голосу.
Нина шагнула вперёд.
— Это она.
— Или тот, кто знает, что вы хотите услышать, — сказала Елена.
Она приблизила терминал к отверстию, но не для записи слов. Открыла шкалу сигнала западной ветки. В момент голоса по четвёртому кабелю прошёл короткий пакет данных.
Звук из полости и скрытый терминал были связаны.
Лев увидел всплеск на экране.
— Не открывайте этот канал.
Елена подняла голову.
— Почему?
Он впервые за вечер не нашёл готовой формулировки.
На терминале появилась новая строка, доставленная не главным узлом, а прямо по чёрному кабелю:
«НЕ ПРОВЕРЯЙТЕ ФРАЗУ. ПРОВЕРЬТЕ ПАУЗЫ».
Глава 6. Голос умершей
Елена не коснулась строки на экране.
Сообщение могло быть подсказкой, ловушкой или способом заставить её открыть канал, который она до сих пор только наблюдала. Любой из трёх вариантов требовал одного и того же: не отвечать источнику.
— Павел, снимите питание с трассоискателя, — сказала она. — Чёрный кабель не трогать. Роза, закройте проход распоркой так, чтобы шкаф нельзя было вернуть на место.
— А голос? — спросила Нина.
— Останется там, где был.
— Если там мама, она останется за стеной.
— Если там человек, мы доберёмся до него через безопасный вход. Если там динамик, стена никуда не денется. А если нас хотят заставить действовать быстро, спешка — часть чужого плана.
Нина смотрела на отверстие в кирпичной кладке. Оттуда больше не доносилось ни дыхания, ни шороха. Тишина была слишком своевременной, чтобы успокаивать.
Лев первым отошёл от ниши.
— Вы получили анонимную команду из незаконного устройства и теперь собираетесь ей следовать.
— Я собиралась проверить слепок Веры до появления команды.
— Тогда проверяйте в комнате согласия. Здесь семейные помещения.
— Минуту назад их не существовало.
Он поправил манжету. Этот жест Елена уже видела: Лев приводил одежду в порядок, когда не мог привести в порядок разговор.
— Я ошибся насчёт старой кладовой. Дом перестраивали несколько раз.
— Но не насчёт канала. Вы велели его не открывать до того, как я назвала его каналом.
Софья медленно повернулась к брату.
— Лев?
— Я видел пакет на её экране.
— Вы увидели всплеск, — сказала Елена. — Назначение кабеля определил Павел. Вы знали больше, чем было сказано вслух.
— Или быстрее вас понял очевидное.
— Это проверяемо. Как и голос.
Елена сохранила изображение строки, частоту пакета и состояние западной ветки в отдельный раздел контейнера. Сам пакет не открыла: чтение могло подтвердить получение или выполнить вложенную команду. Затем вывела на терминал схему комнаты согласия.
Слепок Веры хранился не как обычный аудиофайл. «Свод» держал четыре слоя: произнесённую фразу, признаки живости, отпечаток помещения и цепочку допуска. Текстовую расшифровку Елена уже видела. Теперь ей требовался слой, который система обычно показывала лишь зелёной отметкой.
— Для расширенной проверки нужен доступ представителя фонда, — сказал Лев. — Я его не дам.
— Не нужен. Ручная сверка уже заморозила действие. Я могу исследовать доказательство, на основании которого от моего имени запускают необратимую операцию.
— Вы не представитель Веры.
— Я и не собираюсь слушать её личный архив. Только технические признаки слепка.
— Дыхание — тоже биометрия, — заметил Павел.
Елена кивнула.
— Поэтому нам не нужна узнаваемая запись. Я выделю паузы без слов и сохраню числа, не голос.
Нина наконец отошла от стены.
— Я хочу слышать.
— Нет.
— Вы только что сказали, что это может доказать подделку.
— И может заставить вас узнать в любом вдохе мать. Вы заинтересованная сторона.
— А он нет? — Нина указала на Льва.
— Поэтому никто из вас не будет решать, что слышно. Павел подтвердит параметры оборудования. Роза засвидетельствует порядок действий. Вы и Лев увидите журнал, но не получите исходный звук.
— Очень удобно, — сказал Лев. — Единственная истина останется у архивиста.
— Нет. У каждого останется способ повторить проверку без моего толкования.
Она сформировала запрос: длительность фрагментов, интервалы тишины, спектр фонового шума, непрерывность дыхательного цикла. Содержание речи терминал должен был заменить ровным тоном. Система предупредила, что раскрытие производных признаков может снизить защищённость голосового профиля.
Елена выбрала однократный локальный просмотр без экспорта исходника.
— Роза, время.
— Двадцать два ноль восемь.
— Павел, состояние узлов.
— Главный заморожен. Западный в локальной очереди. Резерв подключён, корпус открыт для осмотра. Обмена по чёрному кабелю сейчас нет.
Елена подтвердила запрос.
На экране появилась дорожка длиной девять секунд. Слова были заменены прямоугольными полосами, паузы оставлены пустыми. Между ними выделялись четыре вдоха: короткий, глубокий, два коротких. Проверка живости считала их естественной последовательностью и показывала девяносто восемь процентов уверенности.
— Вот и всё, — сказал Лев. — Живой голос, подлинная фраза.
Елена увеличила первый стык.
— Нет. Вот только то, что решил модуль.
У каждого вдоха был свой фон: едва слышный гул помещения, отражение от стен, дальний механический шум. На обычной громкости различия исчезали. В спектре они легли четырьмя узкими гребнями.
Первый вдох сопровождался низким дрожанием на сорока восьми герцах. Во втором поверх гула возникал лёгкий металлический звон. Третий был почти чистым. В четвёртом на самом краю слышимости повторялся двойной щелчок.
Павел наклонился к экрану.
— Это может быть автоматика дома.
— Может. Нам нужно понять какая.
— Сорок восемь герц похожи на старый насос северного контура. Но его заменили.
— Когда?
— Весной позапрошлого года.
Лев усмехнулся.
— В любом доме десятки насосов. Вы подгоняете шум под удобную историю.
— Поэтому история подождёт.
Елена не стала отмечать насос как установленный факт. Она запросила у «Свода» только совпадения фонового отпечатка с семейным архивом, без выдачи содержимого. Система потребовала уточнить область поиска.
— Весь архив нельзя, — сказал Павел. — Даже отпечатки потянут индекс с трёх узлов. При заморозке получим ещё больше расхождений.
— И не нужно весь. Слепок уже содержит идентификаторы источников живости.
Он посмотрел на неё.
— Они скрыты.
— Имена файлов скрыты. Но проверка обязана хранить доказательство происхождения признака, иначе зелёная отметка ничего не стоит.
Елена открыла технический сертификат. Внизу, после подписи комнаты и версии анализатора, шли четыре укороченных указателя. Система называла их независимыми образцами. У всех совпадали первые шесть знаков семейного пространства, но последние части различались.
— Четыре файла, — сказала Роза.
— Четыре фрагмента, — поправила Елена. — Это ещё не одно и то же.
Нина подошла ближе, удерживаясь за край стола, будто дом слегка накренился.
— Фраза тоже из четырёх частей?
Елена наложила границы указателей на дорожку. Три стыка прошли внутри словесных полос, а не по паузам.
— Из четырёх.
Софья тихо произнесла:
— Но она могла записать согласие по частям. Если болела.
— Могла. Монтаж не всегда означает подделку. Важно, на что именно она соглашалась в каждом источнике.
Лев сделал шаг к выходу.
— Вы закончили. Для расшифровки семейных записей у вас нет полномочий.
— Содержание мне не требуется.
Елена запросила даты регистрации источников, тип носителя и отпечаток помещения. «Свод» показал четыре периода вместо точного времени: август три года назад, январь позапрошлого года, июль прошлого года и октябрь прошлого года. Все — задолго до официальной смерти Веры и до заказа на удаление.
Нина прочла даты вслух.
— Она не могла согласиться на сегодняшний акт три года назад.
— Отдельные слова могла произнести тогда, — сказала Елена. — Вопрос в том, кто собрал из них сегодняшнее значение.
Лев остановился у двери.
— Или система ошибочно связала новый слепок со старыми образцами для проверки живости. Так работают голосовые профили.
— Тогда границы образцов не совпали бы со стыками фразы.
Она вывела таблицу без названий файлов. Первый речевой кусок происходил из октябрьского материала, второй — из июльского, третий — из январского, четвёртый — из августовского.
На экране даты стояли сверху вниз, от самой поздней к самой ранней.
Павел провёл пальцем в воздухе, не касаясь терминала.
— Обратный порядок.
— Пока только у речевых частей.
— И у пауз, — сказала Роза.
Елена посмотрела на неё.
— Почему вы так решили?
— Двойной щелчок. Старые часы в зимнем саду били так перед ремонтом. Сначала два щелчка механизма, потом удар. Вера записывала там сообщения, потому что любила утренний свет. Часы убрали года три назад.
— Вы помните точнее?
— Их сняли перед шестидесятилетием Аркадия. В августе. После праздника они больше не работали.
Лев резко сказал:
— В доме были другие часы.
— С таким боем — нет. Ваш отец заказал механизм в Финляндии и двадцать лет рассказывал об этом каждому гостю.
Елена отметила свидетельство отдельно, как непроверенное. Затем сопоставила четыре фоновых отпечатка с техническим индексом семейных материалов. Ей не нужны были лица или слова: только дата, место записи и совпадение шума.
Первый вдох совпал с октябрьской видеозаписью из галереи. Второй — с июльским сообщением из кухни. Третий — с январским разговором в библиотеке. Четвёртый — с августовским роликом из зимнего сада.
Октябрь. Июль. Январь. Август — ещё годом раньше.
Каждая следующая пауза была старше предыдущей.
Система проверки живости приняла естественность каждого вдоха отдельно и не проверила, мог ли один человек сделать четыре вдоха в разные годы во время одной фразы.
— Фразы подлинные, — сказала Елена. — Голос Веры не синтезирован. Каждый кусок существовал в семейном архиве до сегодняшнего заказа. Но единой записи согласия не было.
Нина закрыла глаза.
— Покажите слова.
— Нет.
— Я и так знаю фразу. Она была на экране.
— Вы знаете результат склейки. Не источники.
— Если я узнаю, где она говорила каждое слово…
— Именно поэтому не покажу. Личные разговоры не становятся общими только потому, что кто-то вырезал из них удобное предложение.
Софья села на край низкой скамьи. До этого она держалась прямо, словно представляла не себя, а весь дом. Теперь плечи опустились.
— Вера записывала всё, — сказала она. — Праздники, ссоры, рецепты, голосовые записки. Иногда включала камеры и забывала о них. Из её архива можно собрать почти любую фразу.
— Не любую, — возразил Лев. — Для точного согласия нужны конкретные слова.
— Акт составлен так, чтобы они нашлись, — сказала Елена.
Он медленно повернулся к ней.
— Что вы имеете в виду?
— Формула согласия странная. «Подтверждаю прекращение связей, перечисленных хранителем, и разрешаю очистить принадлежащие мне следы». Нет названия фонда, даты, номера акта, имени архивиста. Юридически звучит внушительно, технически подходит к сотням бытовых фраз.
— Вы сами приняли эту формулу при входе.
— Я увидела её после того, как мой голос уже засчитали первым согласием. Теперь понимаю зачем: оба согласия собирались из слов, произнесённых в другом контексте.
Павел поднял голову.
— Ваше тоже смонтировано?
— Нет. Моё получено целиком, но не на ту команду, которую мне показали. Один способ подменяет контекст, другой — время. Вместе они создают видимость двух независимых решений.
За стеной коротко зашуршало. Нина вздрогнула, но не двинулась. По чёрному кабелю прошёл слабый пакет. На экране Елены строка не появилась.
— Оно нас слышит? — спросила Софья.
— Канал передавал данные одновременно со звуком, — сказала Елена. — Это доказывает связь терминала с голосом, но не присутствие человека.
— Тогда откройте пакет, — потребовала Нина.
— Пока нет.
— Там может быть её просьба.
— Первая просьба уже направила нас к доказательству. Вторая может направить к команде. Я не позволю неизвестному источнику управлять проверкой по шагам.
Нина приблизилась вплотную.
— Вам удобно считать неизвестным всё, что нельзя положить в контейнер.
— А вам удобно считать матерью всё, что говорит её голосом.
Слова ударили сильнее, чем Елена хотела. Нина отступила. Софья поднялась, но между ними встал не Лев — Роза.
— Она права, — сказала управляющая. — И вы тоже правы. Поэтому сейчас никто не идёт за стену один.
Нина посмотрела на неё с обидой.
— Вы знали про комнату?
— Знала, что когда-то была кладовая. Не знала, что там голос.
— В этом доме все знают ровно половину.
— Половина иногда единственное, что удаётся сохранить.
Елена вернулась к таблице. Четыре даты доказывали монтаж, но не называли монтажёра. Доступ к семейному архиву имели Вера, Лев, Софья, Антон и несколько технических ролей. Нина до сегодняшнего отзыва карты тоже могла просматривать личные материалы. Скрытый терминал подсказывал, как обнаружить подделку, но это не оправдывало его владельца: человек мог заранее подготовить и улику, и её эффектное раскрытие.
— Кто создал технический сертификат слепка? — спросила Елена.
Павел открыл служебную строку.
— Комната согласия. Подпись устройства действующая.
— А кто подал четыре источника?
— Поле закрыто правилом приватности Веры.
Лев развёл руками.
— Вот предел вашей проверки.
— Предел содержания. Не структуры.
Елена сравнила время добавления источников. Все четыре указателя вошли в очередь одновременно — в 21:25 по западному контроллеру, за семь минут до регистрации на главном. Однако сами разрешения на использование были выпущены в разные дни. Не четыре старые записи случайно сошлись сегодня. Кто-то заранее отметил в них нужные участки, а этой ночью только собрал результат.
Один из допусков отличался длиной. У трёх стояла обычная семейная лицензия просмотра. У августовского фрагмента — право владельца создавать производное доказательство без раскрытия содержания.
— Это чьё право? — спросила Роза.
— Не имя. Тип полномочия.
— Владелец архива? — сказал Павел.
— Или тот, кому владелец заранее его выдал.
Нина быстро спросила:
— Мама могла выдать такое право себе?
— Могла. Как и доверенному лицу. Сертификат не доказывает, что она была жива сегодня.
Елена намеренно не произнесла другой вывод: человек, подготовивший монтаж, заботился не только о том, чтобы слепок прошёл проверку, но и о том, чтобы позднее его можно было разоблачить. Обратный порядок дат не требовался для склейки. Можно было расположить вдохи как угодно или срезать их вовсе. Их оставили и выстроили от нового к старому, словно стрелку, направленную в прошлое.
Слишком аккуратная ошибка.
— Вы нашли подделку, — сказал Лев. — Значит, второго согласия нет. Удаление остановлено. На этом ваша работа завершена.
— Наоборот. Кто-то использовал инфраструктуру фонда, подлинные записи Веры и комнату согласия, чтобы запустить удаление. Пока теневые дельты заморожены, я обязана сохранить доказательства вмешательства.
— Ваш договор — удалить историю семьи.
— Мой договор основан на поддельном согласии.
— Тогда договора нет. Покиньте дом, когда откроются двери.
— После передачи контейнера независимому хранителю.
Взгляд Льва задержался на терминале.
— Связи нет.
— Поэтому контейнер останется у меня и на локальной копии свидетеля.
— Какого свидетеля?
Елена повернулась к Розе.
— Вы согласны хранить зашифрованную копию технических доказательств до восстановления связи? Без возможности прочитать содержимое.
Роза не спросила разрешения у семьи.
— Согласна.
— Я запрещаю использовать оборудование дома, — сказал Лев.
— У меня бумага надёжнее вашего оборудования.
Из кармана передника Роза достала маленький серый накопитель в прозрачном пакете. На этикетке её почерком было написано: «Опись сада, 2019».
Павел невольно улыбнулся.
— Вы храните опись сада на защищённом носителе?
— После того как ваши умные ворота однажды решили, что яблони принадлежат соседям.
Елена проверила накопитель в изолированном режиме, очистила свободный раздел и записала контейнер с журналом доступа. Роза придумала пароль из шести слов и ввела его сама, отвернув экран от остальных. Терминал показал две независимые контрольные суммы.
В этот момент «Свод» подал короткий сигнал.
Ручная сверка оставалась активной. Но под строкой замороженного удаления появилась новая запись:
«ВТОРОЕ СОГЛАСИЕ ОТКЛОНЕНО: НАРУШЕНА ВРЕМЕННАЯ НЕПРЕРЫВНОСТЬ».
Ниже система добавила:
«ТРЕБУЕТСЯ ЗАМЕНА ДОКАЗАТЕЛЬСТВА».
— Хорошо, — сказала Софья. — Значит, всё остановилось.
Елена смотрела на последнюю строку. У неё не было поля для архивиста и кнопки подтверждения. Запрос пришёл из другого процесса, который не подчинялся её заморозке.
— Нет, — сказала она. — Кто-то только что узнал, что мы разобрали слепок.
По чёрному кабелю снова прошёл пакет. На этот раз скрытый терминал не вывел слов. Вместо них в локальной очереди западного узла появилась новая заявка на согласие.









