El protocolo solo cambia la primera etapa del relay P2P: durante una época de aproximadamente diez minutos reenvía la transacción por un grafo stem seudorrandom y, tras pasar a fluff, la red la anuncia de forma normal; no oculta datos on-chain ni cambia el consenso.
Dandelion++ intenta reducir una huella de red concreta: estimar la IP del nodo de origen observando desde dónde empieza a difundirse una transacción nueva. No cifra la transacción, no oculta importes o direcciones ni elimina las huellas que permanecen en el blockchain público. [1]
El relay tiene dos fases. En stem la transacción no se envía a todos los peers, sino que recorre una ruta seudorrandom estrecha; cuando un nodo cambia a fluff comienza la difusión normal. Así surge demora e incertidumbre entre la fuente real y el punto donde la transacción se propaga ampliamente por primera vez. [1]
Para cada época de aproximadamente 10 minutos, Dandelion++ forma con peers salientes elegidos un grafo de anonimato aproximadamente 4-regular. El nodo escoge hasta 2 conexiones stem relay y una asignación nueva en la época siguiente limita el seguimiento prolongado de una misma ruta. [1]
Las transacciones propias del nodo salen por la misma arista stem durante una época, mientras las recibidas se mapean de una arista entrante a una saliente. El rol relay o diffuser se elige seudorrandom por nodo y época, no de nuevo para cada transacción; así responde a graph-learning e intersection attacks contra el Dandelion original. [1]
El paper Dandelion++ no es un BIP activo de Bitcoin. BIP 156 describía el Dandelion anterior y se cerró sin implementación; Bitcoin Core issue 20203 propuso Dandelion++, pero hoy está cerrado y no muestra branch ni pull request adjuntos. Bitcoin Core corriente no usa Dandelion++ por defecto. [3]
Un atacante puede intentar black-hole attacks, ocupar posiciones Sybil, aprender la topología o correlacionar varias transacciones. Un fail-safe embargo timer aleatorio pasa la transacción a fluff si el nodo no la ve difundida a tiempo; mejora la disponibilidad, aunque timing y partial deployment aún permiten fugas y retrasos. [4]
Dandelion++ puede combinarse con Tor o I2P, pero cumple otra función. Una red de anonimato oculta la ruta de transporte de la conexión; Dandelion++ cambia el gossip de transacciones entre peers de Bitcoin. Ninguno corrige por sí solo heurísticas on-chain ni errores de coin control. [1]
Verificar una afirmación exige una implementación concreta, no solo el nombre. Hay que revisar negociación, construcción de épocas y stem peers, mapeo de aristas entrantes, cambio stem/fluff, embargo timer, fallback con peers incompatibles y mediciones de anonimato, latencia y partial deployment. [2]
Para obtener la imagen más completa, lee esta entrada junto con Transacción, Mempool, Full Node, Privacidad en Bitcoin, Lightning Routing, Sybil Attack. También enlazan con esta entrada Bitcoin Anonymity Networks.
01¿Dandelion++ forma parte de Bitcoin Core?+
No según el estado público actual. El antiguo BIP 156 se cerró sin implementación y Bitcoin Core issue 20203 para Dandelion++ también está cerrado sin branch ni pull request adjuntos. Un paper no equivale a una función activada en un nodo corriente.
02¿Dandelion++ vuelve anónimas las transacciones Bitcoin?+
No. Limita un método para estimar el origen de red, pero la transacción sigue pública en el blockchain y puede revelar vínculos por direcciones, importes, timing, coin selection u otras observaciones de red.