Эдуард Сероусов – Протокол EDEN (страница 8)
Кто-то читал её работу в реальном времени.
Она не паниковала. Это важно – она не паниковала. Она почувствовала, как тело переходит в другой режим: дыхание выровнялось, стало чуть глубже, голос в голове – тот, которым она разговаривала с собой во время работы – стал тише и чётче. Гиперфокус. Она знала это состояние. Оно приходило в моменты, когда было по-настоящему важно думать без ошибок.
Паника придёт потом. Сейчас – работа.
Первый вопрос: когда следующий аудит системы?
Она открыла расписание административных процессов Института. Автоматический аудит сетевой активности – раз в неделю, каждую пятницу, в шесть утра. Сегодня был вторник. Но это был стандартный институтский аудит. Не тот, кто настроил этот буфер.
Она попыталась проследить адрес назначения. Открыла сетевые инструменты, запустила трассировку.
Через двенадцать секунд трассировка вернула:
Значит, буфер не просто зашифрован – он скрыт. За прокси, за несколькими узлами маршрутизации, за чем-то, что она не могла пробить стандартными инструментами.
Это не был институтский сервер. Это было что-то внешнее.
Второй вопрос: что именно ушло?
Она проверила список объектов в строке лога. 847 файлов. Совпадало с количеством образцов в её базе данных. Ушло всё – и сырые данные, и результаты обработки, и скрипты, и рабочие заметки. Всё, что она создала за пять дней.
Третий вопрос: что это означает?
Это означало: кто-то знает о существовании её анализа. Кто-то настроил перехват именно её данных именно по этой теме. Это не было случайной компрометацией системы – это была целевая операция. Под неё. Под регион Т2-Т4.
Статус «маршрутизация» в запросе к кластеру четыре дня назад. Внешний запрос к архиву образца матери три недели назад. Теперь это.
Рейчел посмотрела на часы. 11:43 утра.
Ма Лэй был за своим столом – спиной к ней, работал с центрифугой, наушники в ушах. Через стекло криобанка мигал синий огонь.
Она закрыла логи. Открыла браузер. Зашла на сайт технической поддержки Института и проверила расписание плановых работ на сети. Ближайшее техническое обслуживание серверной инфраструктуры – в четверг ночью. Это означало: в четверг в 23:00 системный администратор будет проводить регламентные работы и автоматически просматривать журналы сетевой активности.
Не в пятницу. В четверг.
До четверга – чуть меньше сорока восьми часов.
Но это был не реальный дедлайн. Реальный дедлайн – следующая автоматическая синхронизация с зашифрованным буфером. Она проверила: синхронизация была ночной. Значит, следующая – сегодня ночью, около двух.
После которой тот, кто настроил буфер, получит всё, что она сделает до двух часов ночи.
Это не годилось.
Четвёртый вопрос: что делать?
Рейчел встала из-за стола. Прошла к раковине. Открыла воду – холодную, до упора – и умылась. Выпрямилась. Посмотрела в зеркало.
Нормально. Бледная, но нормально.
Она думала.
Стандартное решение в ситуации компрометации данных – обратиться в службу безопасности Института, заблокировать доступ, провести расследование. Это то, что должен делать нормальный сотрудник нормального учреждения при нормальных обстоятельствах.
Обстоятельства были ненормальными.
Если кто-то настроил перехват её данных – и если этот кто-то имел доступ к архивам НУС, к системе маршрутизации запросов кластера, к метаданным медицинских баз – то служба безопасности Института была либо в курсе, либо бессильна. В обоих случаях обращение туда ничего не давало. Кроме того, что она обозначала своё знание о перехвате.
Нельзя показывать, что знаешь.
Значит: нужно вести себя нормально. Работать как обычно. Данные на рабочей станции должны оставаться – там, где они есть, без изменений. Ночная синхронизация должна произойти – как происходила вчера и позавчера.
Но копия – настоящая, полная, с тем, что она уже знает и что собирается узнать дальше – должна быть в другом месте. В месте, о котором этот буфер не знает.
Проблема была в том, что у неё не было изолированного носителя.
Внешний диск, флешка, карта памяти – всё это подключается к USB-порту рабочей станции. Рабочая станция скомпрометирована. Любое устройство, подключённое к ней, будет видно в логах – а значит, видно тому, кто эти логи читает. Личный ноутбук был дома. Принести его и работать параллельно – это бы обозначило, что она что-то поняла. Тоже нельзя.
Ей нужен был носитель, который нельзя обнаружить в сетевых логах. Который не подключается к USB. Который можно унести из лаборатории так, что никто не поймёт, что именно она уносит.
Она смотрела на криобанк за стеклом.
И поняла.
В лаборатории был синтезатор олигонуклеотидов. Не экзотика – стандартное оборудование для любой молекулярно-биологической лаборатории с современным оснащением. Он синтезировал короткие фрагменты одноцепочечной ДНК по заданной последовательности. Использовался для создания праймеров, зондов, контрольных фрагментов для секвенирования. Рейчел работала с ним каждую неделю.
ДНК-хранение данных существовало как технология с начала тридцатых годов. Принцип был простым: цифровые данные конвертировались в последовательность нуклеотидов по определённому коду – каждые два бита соответствовали одному основанию, – затем синтезировалась ДНК с этой последовательностью, упаковывалась в синтетическую наноструктуру для защиты, помещалась в криохранилище. Хранить можно было столетиями. Читать – через секвенирование.
Технология существовала не для частного использования – она существовала в промышленных масштабах, в дата-центрах, у корпораций с петабайтами архивных данных. Домашний вариант требовал специального оборудования, специального программного обеспечения, знания биохимических протоколов.
У Рейчел было всё это. И она умела этим пользоваться – не как специалист по ДНК-хранению данных, но достаточно хорошо. Она применяла технологию два года назад для совершенно другой цели: создавала синтетические контрольные образцы с точно известным паттерном метилирования для калибровки нанопорового ридера. Протокол был знакомым.
Проблема была в объёме.
Её данные: 2.3 гигабайта. ДНК-хранение при стандартной плотности кодирования – около 215 петабайт на грамм синтетической ДНК. 2.3 гигабайта – это меньше одной миллиардной доли грамма. Физически ничтожный объём. Несколько тысяч молекул, невидимых невооружённым глазом.
Синтезировать её за один прогон – нереально: синтезатор работал с олигонуклеотидами длиной до 200 оснований, а для хранения 2.3 гигабайта нужны были миллионы коротких фрагментов, потом лигирование, потом упаковка. Это была работа на несколько часов в лучшем случае.
У неё было четыре часа до следующего обеда – когда Ма Лэй уйдёт и у неё будет минимум сорок минут одной в лаборатории – плюс вечер, когда она оставалась одна регулярно. Итого – реальное рабочее время с оборудованием без посторонних глаз.
Сначала нужно было написать скрипт конвертации. Это можно было сделать на рабочей станции – конвертация данных в последовательность ДНК не будет выглядеть подозрительно в логах: это стандартная биоинформатическая операция. Синтетические последовательности она создавала регулярно. Один файл с последовательностью среди десятков других – незаметен.
Потом синтез. Потом упаковка в крионейтральный буфер. Потом – пробирка в криобанк.
И уничтожить запись о создании пробирки. Но так, чтобы её удаление не оставило след.
Она вернулась к столу.
Начала работать.
Скрипт конвертации она нашла готовый – открытый репозиторий, библиотека для работы с ДНК-кодированием, написанная исследовательской группой из ETH Zurich ещё в 2035-м. Хорошая библиотека, хорошо документированная. Она скачала её через стандартный запрос к институтскому репозиторию – незаметно, вместе с несколькими другими библиотеками для вида.
Адаптировала под свои данные за двадцать минут.
Запустила конвертацию. На экране побежали строки – миллионы оснований, A, T, G, C, складывающиеся в последовательности из её собственных расчётов. Паттерны метилирования, статистические модели, структура субъединиц Вставки – всё это превращалось в биологический алфавит. Парадокс, от которого она не стала отмахиваться: она прятала информацию о биологическом коде внутри биологического кода. Вставку – внутри синтетической ДНК.
Конвертация заняла восемь минут. Выходной файл: последовательность длиной 6.7 миллиона оснований, разбитая на фрагменты по 150 оснований для совместимости с синтезатором.
Она сохранила файл под именем
Потом посмотрела на часы. 12:51.
Ма Лэй уходил на обед в 13:30. Обычно возвращался через сорок – сорок пять минут. Плюс время до его прихода – у неё было чуть меньше получаса сейчас и сорок минут в обед.
Этого не хватало для синтеза.
Она решила: начать сейчас, насколько возможно. Продолжить вечером.
Синтезатор стоял в дальнем углу лаборатории, у стены с вытяжным шкафом. Белый корпус с небольшим сенсорным дисплеем, несколько трубок подачи реагентов, слабый запах ацетонитрила – рабочего растворителя. Машина была тёплой даже в простое: реагенты хранились при рабочей температуре.
Рейчел загрузила первые двести фрагментов последовательности.