Смешанные сети в криптографии

Смешанные сети в криптографии (англ. Mix networks, также известные как цифровые миксы, digital mixes) — это протоколы маршрутизации, создающие труднопрослеживаемые коммуникации посредством цепочки прокси-серверов, называемых миксами. Миксы принимают сообщения от нескольких отправителей, перемешивают их и отправляют в случайном порядке к следующему назначению (возможно, другому узлу микс-сети). Такой подход разрывает связь между источником запроса и получателем, затрудняя прослушивателям отслеживание сквозных коммуникаций. Каждый микс знает только узел, от которого он получил сообщение, и непосредственного получателя для следующей передачи, что повышает устойчивость сети к потенциально зловредным узлам[1].[2]

Каждое сообщение шифруется для каждого прокси-узла с использованием криптографии с открытым ключом; итоговое шифрование имеет слоистую структуру («матрёшка»), где сообщение — это самый внутренний слой. Каждый прокси-сервер снимает свой слой шифрования, раскрывая адрес следующего назначения. Даже в случае компрометации всех прокси, кроме одного, для части менее сильных противников сохраняется анонимность маршрута.

Понятие микс-криптосистемы в контексте электронной почты первым предложил Дэвид Чаум (David Chaum) в 1981 году для решения проблемы анализа трафика[3]. Приложения, основанные на этом принципе, включают анонимные ремейлеры (например, Mixmaster), луковую маршрутизацию (onion routing), garlic routing и маршрутизацию по ключам (key-based routing, включая Tor (The Onion Router), I2P и Freenet)[4]. Крупномасштабные реализации концепции смешанных сетей начали появляться в 2020-х годах благодаря развитию технологий конфиденциальности и децентрализованной инфраструктуры.

История

Дэвид Чаум впервые опубликовал концепцию «миксов» в 1979 году в работе для своей магистерской диссертации[5], вскоре после знакомства с криптографией с открытым ключом и работами Мартина Хеллмана (Уитфилд Диффи и Ральф Меркле). Хотя шифрование с открытым ключом защищало содержимое информации, по мнению Чаума, уязвимость для частной жизни заключалась в метаданных коммуникаций. Уязвимости включали время отправки и приёма сообщений, их размер и адрес отправителя[6]. Чаум ссылается на статью Мартина Хеллмана и Уитфилда Диффи «New Directions in Cryptography» (1976).

1990-е: движение шифропанков

Инноваторы, такие как Иан Голдберг (Ian Goldberg) и Адам Бэк (Adam Back), внесли существенный вклад в развитие технологии смешанных сетей. В этот период были достигнуты значимые успехи в области криптографии, важные для практической реализации микс-сетей. Начался академический интерес к этим системам, появились исследования по повышению их эффективности и безопасности. Однако практическое массовое применение было ещё ограничено — микс-сети оставались на экспериментальной стадии. Появилось программное обеспечение — «ремейлеры шифропанков», позволявшее отправлять анонимные письма через микс-сети[7].

2000-е: вдохновение для других анонимных сетей

В 2000-х годах возросший интерес к интернет-конфиденциальности подчеркнул важность смешанных сетей. В это время появилась сеть Tor (The Onion Router), которая хоть и не является прямой реализацией микс-сети, но во многом базируется на идеях Чаума, применяя разновидность луковой маршрутизации. Также появились и другие системы, использующие принципы микс-сетей для улучшения анонимности и безопасности коммуникаций.

2010-е: новый интерес исследователей к микс-сетям

C 2010-х годов наблюдался новый всплеск интереса к масштабируемым и более эффективным микс-сетям за счёт внедрения новых протоколов и алгоритмов, помогавших преодолеть прежние ограничения. Особенно актуальными микс-сети стали после разоблачений Эдварда Сноудена в 2013 году о глобальных программах массовой слежки. Микс-сети вновь стали рассматриваться как ключевые средства для защиты конфиденциальности.

Архитектура Loopix, представленная в 2017 году[8], объединила ряд методов обеспечения приватности для современной реализации смешанных сетей. Ключевые элементы включали:

  • формат пакетной передачи «Sphinx»[9], обеспечивающий несвязываемость и слоистое шифрование;
  • передача пакетов на основе пуассоновских процессов для защиты от временных атак;
  • экспоненциальные задержки при перемешивании для усложнения анализа трафика;
  • генерация ложного трафика — непрерывная вставка фиктивных пакетов, скрывающих реальные потоки данных;
  • стратифицированная топология микс-узлов для оптимизации анонимности при сохранении скорости сети.

Рост блокчейн-технологий открыл новые возможности для масштабируемых децентрализованных микс-сетей.

2020-е: первые крупномасштабные реализации

В течение 2020-х годов множество государственных и частных исследовательских программ поспособствовали появлению первых крупных микс-сетей. К 2025 году ведётся активная разработка таких проектов, как 0KN, HOPR, Katzenpost, Nym, xx.network (под руководством Дэвида Чаума), и другие, ставящие целью обеспечение защищённых коммуникаций в широком масштабе[4].

Технические особенности

Участник A готовит сообщение к отправке участнику B, добавляя к нему случайное значение R, закрывая сообщение открытым ключом адресата , указывая адрес B, а затем шифруя всё это открытым ключом микса . Микс открывает посылку своим закрытым ключом, узнаёт адрес B и отправляет то, что осталось, участнику B.

Формат сообщения

Отправитель использует открытый ключ микса для зашифровки «конверта», содержащего случайную строку , вложенный конверт для получателя (зашифрованный его ключом ), и адрес получателя (B). Вложенный конверт содержит ещё одну случайную строку и сам текст отправления. После получения вершнего уровня микс раскрывает его, узнаёт адрес B и видит зашифрованное сообщение для него. Случайная строка отбрасывается.

Строка необходима для предотвращения угадывания сообщения атакующим. Если атака заключается в сравнении с возможным кандидатом , без соли (R0) он сможет догадаться о содержимом. С добавлением R0 результат отличается, и атака невозможна без знания R0 — по сути, это криптографическая соль.

Обратные адреса

Для ответа B отправителю A с сохранением анонимности используется схема обратного анонимного адреса: , где  — реальный адрес,  — одноразовый публичный ключ для текущего случая,  — одноразовый ключ-строка. Этот адрес передаётся B в сообщении.

B отправляет миксу, который преобразует его в . Только A, который генерировал и , может раскрыть содержимое. Микс не может узнать сам ответ. Такая схема обеспечивает для ответа те же анонимные и защищённые свойства, что и для исходных сообщений.

Пример:

Сообщение от A к B:

Ответ от B к A:

Где  — открытый ключ B,  — открытый ключ микса.

Назначение может ответить источнику, не раскрывая личности источника.

Уязвимости

Смешанные сети обеспечивают безопасность, даже если противник видит весь маршрут, однако не гарантируют совершенную анонимность. Возможны долгосрочные корреляционные атаки, позволяющие при достаточном анализе трафика установить связь между отправителем и получателем[10].

Модель угроз

Противник может пассивно наблюдать входящий и исходящий трафик на узлах микс-сети. Анализируя времена поступления пакетов на разных участках сети, он может получить информацию о соединениях. В худшем случае предполагается, что злоумышленнику видимы все соединения в сети, а стратегия и архитектура микс-сети ему известны[6].

Корреляция между входящими и исходящими пакетами по времени поступления, размеру или содержанию невозможна благодаря пакетному перемешиванию, шифрованию и пакетному заполнению.

Интервалы между пакетами («inter-packet intervals») используются для выявления возможной связи между соединениями, так как шаблоны интервалов, например в веб-сёрфинге, типичны. Это может быть использовано для установления соединения.

Активные атаки

Активные атаки возможны через вставку пачки пакетов с уникальными временными метками в поток — так атакующий может искать эти специфические временные сигнатуры далее в сети. Генерировать новые пакеты невозможно без знания симметричных ключей всех узлов цепочки, а атаки повторной передачи (replay) предотвращаются хэшированием и кэшированием[6].

Искусственный разрыв

Атакующий может создать длительный разрыв в потоке целевого пользователя, удаляя подряд большой объём пакетов. Например, при отправке 3000 пакетов и удалении части из них через 1 секунду работы потока эффективность защиты резко падает. Такой разрыв практически всегда выявим.

Искусственные всплески

Можно также сгенерировать искусственные всплески трафика — задерживая искусственно пакеты на канале и выпуская их группой. Защиты, основанные на «defensive dropping», здесь не работают. Одно из возможных решений — адаптивные алгоритмы выравнивания наполнения (adaptive padding). Чем больше задержка, тем легче поведенчески распознать схему трафика.

Другие временные атаки

Возможны и иные тайминговые атаки, например активная модификация потока пакетов с целью наблюдать за реакцией сети. Можно намеренно повредить пакеты, чтобы спровоцировать повторную передачу (retransmission), что предоставляет наблюдателю аномальные признаки[11].

Атака «спящего» (sleeper attack)

Если противник может видеть входящие и исходящие сообщения в пороговых миксах, но не внутреннее состояние, то он может оставить свои сообщения в миксе, дождаться их получения и тем самым с большой вероятностью связать исходное сообщение с отправителем. Эта атака работает только при вынесении своих сообщений в миксы — типично пассивная, но более слабый противник может комбинировать её с другими атаками.

Смысл смешивания — изменить порядок сообщений и повысить неопределённость. В идеальной ситуации смешанный узел с n сообщениями даёт нападавшему неопределённость порядка n при сопоставлении входов и выходов. В слоистой сети пороговых миксов с «спящими» противника вероятность сопоставления существенно выше, чем при чистой работе системы. Чисто временные миксы могут только перемешивать заказанные сообщения в пределах интервала, если в нём не поступило новых данных — смешивания не происходит[12].

Примечания