Основы HOPR. Эпизод 4: Микснеты

Это четвертый эпизод из нашей серии, посвященной основам HOPR. Ссылки на предыдущие эпизоды можно найти в конце статьи.

В прошлый раз мы впервые рассмотрели проблему отправки данных конфиденциально через Интернет без того, чтобы кто-то мог отследить их или выяснить, кто является отправителем или получателем. Разделение данных на пакеты и отправка каждого из них по разным каналам через сеть ретрансляционных узлов - это хороший первый шаг, но все еще существует возможность для опытного специалиста собрать достаточно информации, чтобы деанонимизировать сеть.

В этом эпизоде мы увидим, как с помощью mixnet, подобного HOPR, можно повысить сложность до уровня, на котором настоящая конфиденциальность метаданных начинает становиться реальностью.

Сила сети

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

Это означает, что одновременно через сеть будут проходить тысячи или сотни тысяч пакетов данных. Мы можем использовать этот поток данных, чтобы создать дополнительную путаницу для потенциальных злоумышленников.

Смешивание

Вместо того чтобы передавать каждый пакет отдельно, каждый узел может объединить несколько пакетов из разных сообщений вместе и отправить их в виде пакета другому узлу. Затем этот узел разделяет пакеты и перемешивает их с новыми, полученными от других узлов. Весь этот процесс называется смешиванием.

Вот как это может выглядеть с точки зрения одного узла:

Здесь узел HOPR принимает пакеты, полученные от трех различных источников передачи данных, представленных желтым, светло-синим и темно-синим цветами. По мере того, как пакеты поступают в узел группами, они разделяются, объединяются, и эти новые комбинации пакетов рассылаются по разным узлам, направляясь к месту назначения.

Помните: хотя отдельные пакеты разделены в приведенной выше анимации, чтобы вам было легче следить за процессом смешивания, на самом деле все они объединены в одно целое на каждом узле. Посторонний человек не может проследить маршрут одного пакета через узел. Некоторые пакеты даже временно задерживаются до будущих циклов смешивания, чтобы нарушить любую связь между временем поступления и выхода пакетов из узла.

Чтобы еще больше скрыть эти метаданные, HOPR mixnet использует формат пакетов под названием Sphinx, чтобы гарантировать, что все эти связки пакетов легко смешиваются и не различаются. Формат Sphinx означает, что каждый пакет, проходящий через сеть, имеет одинаковое количество байт, поэтому невозможно отследить данные по размеру.

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

Проблема решена?

Так решена ли эта проблема? К сожалению, нет. На самом деле, это только половина проблемы, и, возможно, только самая легкая половина. Микснет - это, как вы видите, чрезвычайно сложная система. Все это шифрование, смешивание, перемешивание и пересылка требует больших вычислительных затрат по сравнению с простой прямой и открытой передачей данных. В теории микснет хорош, но в реальности кто-то должен платить за все эти дополнительные усилия.

Это известно как стимулирование, и это не так просто, как просто посылать деньги узлам. Нам нужен способ обеспечить оплату за передачу данных, который не уничтожит всю работу по обеспечению конфиденциальности, проделанную нами до сих пор. Нам также необходимо убедиться, что недобросовестные узлы не смогут использовать анонимность, которую обеспечивает mixnet, для получения платежей без фактической передачи данных.

Мы подробнее рассмотрим, почему это такая сложная проблема, в следующем эпизоде.

Jose Aguinaga
Руководитель отдела разработки HOPR

Основы HOPR:
Эпизод 1: Что такое HOPR? - ENG, RUS
Эпизод 2: Что такое метаданные? - ENG, RUS
Эпизод 3: Анонимная маршрутизация - ENG, RUS
Эпизод 4: Микснеты - ENG, RUS
Эпизод 5: Стимулы - ENG, RUS
Эпизод 6: Proof of Relay - ENG, RUS
Эпизод 7: Билеты и каналы оплаты - ENG, RUS