Protokol mění pouze první fázi P2P relay: během přibližně desetiminutové epochy předává transakci po pseudonáhodně vytvořeném stem grafu a po přechodu do fluff fáze ji síť oznamuje obvyklým způsobem; neskrývá on-chain data ani nemění konsenzus.
Dandelion++ se snaží omezit jednu konkrétní síťovou stopu: možnost odhadnout IP původního uzlu podle toho, odkud se nová transakce poprvé šíří. Nešifruje transakci, neskrývá částky ani adresy a neodstraňuje stopy, které zůstanou ve veřejném blockchainu. [1]
Relay má dvě fáze. Ve stem fázi se transakce neposílá všem peerům, ale putuje po úzké pseudonáhodné trase; když některý uzel přepne do fluff fáze, začne běžné difuzní šíření. Síť tak získá prodlevu a nejistotu mezi skutečným zdrojem a místem, kde se transakce poprvé široce rozšíří. [1]
Dandelion++ pro každou přibližně 10minutovou epochu skládá zvolenými odchozími peery přibližně 4-regular anonymizační graf. Uzel volí až 2 stem relay spojení a čerstvé přiřazení pro další epochu omezuje dlouhodobé sledování stále stejné cesty. [1]
Vlastní transakce uzlu v jedné epoše odcházejí stejnou stem hranou, zatímco přijaté transakce se mapují z příchozí hrany na odchozí. Role relay nebo diffuser se pseudonáhodně volí pro uzel a epochu, nikoli znovu pro každou transakci; návrh tím reaguje na graph-learning a intersection attacks původního Dandelionu. [1]
Dandelion++ paper není aktivní bitcoinový BIP. BIP 156 popisoval starší Dandelion a byl uzavřen bez implementace; Bitcoin Core issue 20203 navrhlo Dandelion++, ale dnes je uzavřené a neuvádí připojenou branch ani pull request. Běžný Bitcoin Core proto Dandelion++ standardně nepoužívá. [3]
Útočník může zkoušet black-hole útok, Sybil pozice, učení topologie nebo sledování více transakcí. Náhodný fail-safe embargo timer přepne transakci do fluff fáze, pokud ji uzel včas neuvidí jako rozšířenou; zvyšuje dostupnost, ale časování a partial deployment dál vytvářejí prostor pro únik informací a zpoždění. [4]
Dandelion++ lze kombinovat s Tor nebo I2P, ale neplní stejnou úlohu. Anonymizační síť skrývá transportní cestu spojení, zatímco Dandelion++ mění gossip transakce mezi bitcoinovými peery; ani jeden mechanismus sám neřeší on-chain heuristiky a chyby v coin control. [1]
Ověření tvrzení vyžaduje konkrétní implementaci, nikoli jen název. Je třeba prověřit vyjednání funkce, konstrukci epoch a stem peerů, mapování příchozích hran, přepnutí stem/fluff, embargo timer, fallback při nekompatibilních peerech i naměřenou anonymitu, latenci a chování při částečném nasazení. [2]
Pro nejúplnější obraz čtěte toto heslo společně s Transakce, Mempool, Full Node, Soukromí v Bitcoinu, Lightning Routing, Sybil Attack. Opačným směrem na něj odkazují také Bitcoin Anonymity Networks.
01Je Dandelion++ součástí Bitcoin Core?+
Ne podle aktuálního veřejného stavu. Starší BIP 156 byl uzavřen bez implementace a Bitcoin Core issue 20203 pro Dandelion++ je také uzavřené bez připojené branche nebo pull requestu. Paper proto nelze vydávat za zapnutou funkci běžného uzlu.
02Dělá Dandelion++ bitcoinové transakce anonymní?+
Ne. Omezuje jednu metodu odhadu síťového původu transakce, ale transakce zůstane veřejná na blockchainu a může prozradit vazby přes adresy, částky, časování, coin selection nebo další síťová pozorování.