712 / 736D++

Dandelion++

Двухэтапная ретрансляция транзакций для уменьшения сетевого следа

Dandelion++ — исследовательское предложение для более приватной ретрансляции Bitcoin transactions: сначала transaction идёт по узкому stem path, затем распространяется обычным fluff flooding, что затрудняет определение origin node.

Protocol меняет только первую стадию P2P relay: в течение примерно десятиминутной epoch передаёт transaction по pseudorandom stem graph, а после перехода в fluff сеть объявляет её как обычно; on-chain data не скрываются, consensus не меняется.

Dandelion++ уменьшает конкретный сетевой след: возможность оценить IP origin node по месту первого распространения новой transaction. Он не шифрует transaction, не скрывает amounts или addresses и не удаляет следы, остающиеся в public blockchain. [1]

Relay состоит из двух фаз. В stem transaction не рассылается всем peers, а идёт по узкому pseudorandom route; когда node переходит в fluff, начинается обычная diffusion. Это создаёт задержку и неопределённость между настоящим source и первым местом широкого распространения. [1]

Для каждой примерно 10-минутной epoch Dandelion++ строит из выбранных outbound peers приблизительно 4-regular anonymity graph. Node выбирает до 2 stem relay connections, а новое назначение в следующей epoch ограничивает длительное наблюдение одного маршрута. [1]

Собственные transactions node в одной epoch выходят по одной stem edge, а полученные отображаются с incoming edge на outbound edge. Роль relay или diffuser выбирается pseudorandom для node и epoch, а не заново для каждой transaction; это противодействует graph-learning и intersection attacks на исходный Dandelion. [1]

Dandelion++ paper не является активным Bitcoin BIP. BIP 156 описывал старый Dandelion и был закрыт без implementation; Bitcoin Core issue 20203 предлагал Dandelion++, но теперь закрыт и не содержит attached branch или pull request. Обычный Bitcoin Core не использует его по default. [3]

Attacker может устроить black-hole attack, занять Sybil positions, изучать topology или сопоставлять несколько transactions. Random fail-safe embargo timer переводит transaction в fluff, если node вовремя не видит diffusion; это улучшает liveness, но timing и partial deployment оставляют утечки и задержки. [4]

Dandelion++ можно сочетать с Tor или I2P, но задачи различаются. Anonymity network скрывает transport path соединения, а Dandelion++ меняет transaction gossip между Bitcoin peers; ни один механизм сам не исправляет on-chain heuristics или ошибки coin control. [1]

Проверка claim требует конкретной implementation, а не одного названия. Нужно проверить feature negotiation, построение epochs и stem peers, mapping incoming edges, stem/fluff switch, embargo timer, fallback с incompatible peers и измеренные anonymity, latency и partial-deployment behavior. [2]

Для полной картины прочитайте эту статью вместе с Транзакция, Mempool, Full Node, Приватность в Bitcoin, Lightning Routing, Sybil Attack. На эту статью также ссылаются Bitcoin Anonymity Networks.

01Входит ли Dandelion++ в Bitcoin Core?

Нет по текущему public state. Старый BIP 156 закрыт без implementation, и Bitcoin Core issue 20203 для Dandelion++ тоже закрыт без attached branch или pull request. Paper нельзя считать включённой функцией обычного node.

02Делает ли Dandelion++ Bitcoin transactions анонимными?

Нет. Он ограничивает один способ оценки network origin, но transaction остаётся публичной в blockchain и может раскрывать связи через addresses, amounts, timing, coin selection или другие network observations.

DOC · 001Dandelion++: Lightweight Cryptocurrency Networking with Formal Anonymity GuaranteesДокументация DOC · 002BIP 156 — Dandelion: Privacy Enhancing RoutingСпецификация DOC · 003Bitcoin Core issue 20203 — Dandelion++ transaction relayПервичный источник DOC · 004A Systematic Analysis of the Security of Dandelion, Dandelion++ and Lightning NetworkДокументация
Обновлено: Сначала источники · Не является инвестиционной рекомендацией