Das Protokoll verändert nur die erste P2P-Relay-Phase: Während einer ungefähr zehnminütigen Epoche leitet es die Transaktion durch einen pseudorandom erzeugten Stem-Graphen, danach wird sie im Fluff normal angekündigt; weder On-Chain-Daten noch Konsens werden verborgen oder geändert.
Dandelion++ zielt auf eine bestimmte Netzwerkspur: die IP des Ursprungs-Nodes aus dem ersten Verbreitungsort einer neuen Transaktion abzuleiten. Es verschlüsselt die Transaktion nicht, verbirgt weder Beträge noch Adressen und beseitigt keine Spuren in der öffentlichen Blockchain. [1]
Das Relay hat zwei Phasen. Im Stem wird eine Transaktion nicht an alle Peers gesendet, sondern läuft über einen schmalen pseudorandom Pfad; wechselt ein Node zu Fluff, beginnt die übliche Diffusion. So entstehen Verzögerung und Unsicherheit zwischen wahrer Quelle und erster breiter Verbreitung. [1]
Für jede ungefähr 10-minütige Epoche bildet Dandelion++ aus ausgewählten ausgehenden Peers einen ungefähr 4-regular Anonymitätsgraphen. Ein Node wählt bis zu 2 Stem-Relay-Verbindungen; neue Zuordnungen in der nächsten Epoche begrenzen die langfristige Beobachtung eines festen Wegs. [1]
Eigene Transaktionen eines Nodes verwenden innerhalb einer Epoche dieselbe Stem-Kante, empfangene werden von einer eingehenden auf eine ausgehende Kante abgebildet. Relay- oder Diffuser-Rolle wird pseudorandom pro Node und Epoche gewählt, nicht erneut pro Transaktion; das begegnet Graph-Learning- und Intersection-Angriffen auf Dandelion. [1]
Das Dandelion++-Paper ist kein aktiver Bitcoin-BIP. BIP 156 beschrieb das ältere Dandelion und wurde ohne Implementierung geschlossen; Bitcoin Core issue 20203 schlug Dandelion++ vor, ist heute aber geschlossen und nennt weder Branch noch Pull Request. Gewöhnliches Bitcoin Core nutzt Dandelion++ daher nicht standardmäßig. [3]
Ein Angreifer kann Black-Hole-Angriffe, Sybil-Positionen, Topologie-Lernen oder die Korrelation mehrerer Transaktionen versuchen. Ein zufälliger Fail-Safe-Embargo-Timer schaltet auf Fluff, wenn der Node die Diffusion nicht rechtzeitig sieht; das verbessert Liveness, während Timing und Partial Deployment weiter Lecks und Verzögerung zulassen. [4]
Dandelion++ lässt sich mit Tor oder I2P kombinieren, erfüllt aber eine andere Aufgabe. Ein Anonymitätsnetz verbirgt den Transportweg einer Verbindung, Dandelion++ verändert den Transaktions-Gossip zwischen Bitcoin-Peers; keines behebt allein On-Chain-Heuristiken oder Coin-Control-Fehler. [1]
Eine Behauptung ist an einer konkreten Implementierung zu prüfen, nicht am Namen. Zu kontrollieren sind Feature-Aushandlung, Epochen- und Stem-Peer-Aufbau, Mapping eingehender Kanten, Stem/Fluff-Wechsel, Embargo-Timer, Fallback bei inkompatiblen Peers sowie gemessene Anonymität, Latenz und Partial Deployment. [2]
Für ein möglichst vollständiges Bild lies diesen Eintrag zusammen mit Transaktion, Mempool, Full Node, Bitcoin-Privatsphäre, Lightning Routing, Sybil Attack. Auf diesen Eintrag verweisen außerdem Bitcoin Anonymity Networks.
01Ist Dandelion++ Teil von Bitcoin Core?+
Nach aktuellem öffentlichen Stand nein. Der ältere BIP 156 wurde ohne Implementierung geschlossen; auch Bitcoin Core issue 20203 zu Dandelion++ ist ohne angehängten Branch oder Pull Request geschlossen. Ein Paper ist keine aktivierte Funktion eines gewöhnlichen Nodes.
02Macht Dandelion++ Bitcoin-Transaktionen anonym?+
Nein. Es begrenzt eine Methode zur Bestimmung des Netzwerkursprungs, doch die Transaktion bleibt in der Blockchain öffentlich und kann über Adressen, Beträge, Timing, Coin Selection oder weitere Netzwerkbeobachtungen Verbindungen offenlegen.