LocalMonero will be winding down
- Effective immediately, all new signups and ad postings are disabled;
- On May 14th, 2024, new trades will be disabled as well;
- After November 7th, 2024, the website will be taken down. Please reclaim any funds from your arbitration bond wallet prior to that date, otherwise the funds may be considered abandoned/forfeited.
Как Dandelion++ помогает сохранить приватность источников транзакций Monero
Конфиденциальность как приоритет
Те, кому подобная задача кажется слишком ограниченной или неинтересной в целом, просто не понимают, насколько сложно добиться действительной конфиденциальности, особенно в случае с таким постоянным и открытым реестром, как блокчейн. Любая возможность утечки метаданных ведёт к потенциальному краху приватности.
Monero предпринимает все меры предосторожности, необходимые для обфускации данных в блокчейне, таких как данные получателя, отправителя, и суммы, используя скрытые адреса, кольцевые подписи и обязательства Педерсена. Это сводит к минимуму вероятность того, что случайному наблюдателю удастся получить какую-то критически важную информацию после того, как транзакция будет проведена и станет частью уже записанной истории. Тем не менее, существуют некоторые виды атак, которые можно произвести исключительно в момент проведения транзакции и ни в какое другое время.
Атака, направленная на раскрытие IP-адреса
Хорошо, однако, то, что эту информацию не получится получить после того, как транзакция уже будет проведена, то есть, её не получится узнать позже, ведь IP-адреса не сохраняются в блокчейне. Также приятно осознавать, что подобный вид атаки едва ли будет воспроизведён в реальных условиях, поскольку для этого злоумышленнику придётся использовать большинство узлов, присутствующих в сети. Тем не менее, если кому-то удастся заполучить под свой контроль подавляющее большинство узлов, такой пользователь сможет идентифицировать “направление”, с которого пришла транзакция.
Это может показаться несколько запутанным, поэтому мы приведём информацию, которая прояснит ситуацию. Каждый узел связывается с другими узлами сети, поддерживая таким образом актуальную версию блокчейна, а также это делается для того, чтобы делиться известной ему информацией с другими узлами. Такая связь позволяет узлам узнавать о новых транзакциях, ретранслировать их, а также отправлять собственные. Так как узел может сообщить другим узлам только данные тех транзакций, о которых ему известно, получается так, что самый первый узел, передающий транзакцию, является тем самым узлом, который по сути отправляет Monero.
В том случае, если злоумышленником будет контролироваться подавляющее большинство узлов сети, и каждый узел будет узнавать о транзакции от одного из одноранговых узлов, в зависимости от времени, когда эта информация будет получена каждым узлом, можно будет выбрать список кандидатов, то есть, вероятных создателей транзакции.
Если ситуация не стала понятней, давайте рассмотрим следующий пример. Предположим, у нас с вами есть общий друг, которого мы с вами не видим. Этот друг громко зовёт нас. Я слышу его голос первым и громче, чем вы. Обладая этой информацией, мы можем прийти к выводу, что я нахожусь ближе к нашему другу. Тот факт, что звук доходит до вас позднее (даже на какую-то незначительную долю секунды), и что звук этот тише, означает, что нам необходимо искать нашего друга где-то в области, в которой нахожусь я, а не вы.
Если злоумышленнику удастся угадать, каким из одноранговых узлов была отправлена транзакция, и поскольку у него будет IP-адрес, связанный с узлом, то злоумышленник будет уверен в том, что именно с этого IP-адреса была отправлена транзакция. Это довольно серьёзная информация, поскольку IP-адрес указывает на страну, в которой находится пользователь, а также на соответствующего провайдера интернет-услуг (ISP). Кроме того, самим ISP известно, какой IP-адрес закреплён за определённым пользователем, что означает фактическую деанонимизацию пользователя Monero.
Способы защиты
Таким решением и является Dandelion++ (DPP) — обновлённая версия оригинального протокола Dandelion, разработанного для Bitcoin. Данный протокол предполагает наличие двух фаз, фазы стебля и фазы пуха, которые вместе составляют некое подобие одуванчика.
В фазе стебля отправляющий узел каждые несколько минут из всех узлов, с которыми он соединён, случайным образом выбирает два одноранговых узла. Когда на этапе стебля отправляющий узел передаёт транзакцию, либо от своего имени, либо ретранслируя транзакцию другого узла, он случайным образом выбирает один из этих двух узлов и передаёт транзакцию ему.
В фазе пуха узел принимает транзакцию и ретранслирует её по каждому исходящему соединению, а не по одному, выбранному случайным образом, что и обеспечивает распространение транзакции. Каждые несколько минут узел случайным образом определяет, будет он принимать участие в фазе стебля или в фазе пуха, поэтому фаза стебля может оказаться довольно долгой, если каждый подсоединённый узел решит принять в ней участие, но как только транзакция перейдёт на фазу пуха, она уже останется в ней.
Это означает, что злоумышленник уже не сможет определить направление, с которого пришла транзакция, поскольку она была передана сразу всем, она прошла фазу стебля, а узел, участвующий в фазе пуха, не является исходным узлом транзакции, и совершенно неизвестно, сколько скачков совершила транзакция на этапе стебля.
Безусловно, объединение вышеуказанных решений (DPP и оверлейной сети) обеспечивает более высокую гарантию конфиденциальности и защиты от отслеживания вашего IP. Также следует отметить, что DPP никак не защищает от другого вида атаки, связанного с отслеживанием сети, который может провести ваш ISP, но это не является темой данной статьи.
Dandelion++ будет реализован в сети Monero и будет по умолчанию использоваться основным клиентом после выхода версии 0.16. Это небольшое изменение ещё больше повысит защиту в сети Monero от возможных атак, и оно наглядно демонстрирует, почему Monero возглавляет список проектов, реализующих практические, прикладные технологии обеспечения приватности.
Читайте также
Как Monero уникальным образом обеспечивает циркулярную экономику
Теги просмотра: Как один байт сократит время синхронизации кошелька Монеро более чем на 40%
Обмен Bitcoin на Monero настолько же анонимен, как и покупка Monero напрямую. Так ли это?
Почему Monero, в отличие от Zcash, использует настройки, не требующие доверия
О том, почему Monero является более эффективным средством сбережения, чем Bitcoin
Почему представители сообщества Monero отличаются масштабом своего критического мышления
Что должен знать каждый пользователь Monero, когда дело доходит до взаимодействия с сетью
Как протокол RingCT скрывает суммы при проведении транзакций Monero
Как подадреса Monero не позволяют устанавливать связь с личностью пользователя
Как в Monero победили болезнь размера блоков, поразившую Bitcoin
Wired Magazine заблуждается в отношении Monero, и вот почему
Почему Monero децентрализовано и имеет открытый исходный код
