Aller au contenu principal
Confidentialité

Dandelion

Dandelion (BIP-156) est une proposition pour protéger l'origine des transactions. Une transaction passe d'abord par une « tige » de relais avant le « pissenlit » habituel. Empêche un attaquant d'identifier le nœud émetteur. Implémenté dans Monero, expérimental sur Bitcoin.

Le problème de la fuite d'origine

Lorsque vous diffusez une transaction Bitcoin depuis votre nœud, celui-ci la propage à tous ses pairs en quelques secondes. Un adversaire qui se connecte à un grand nombre de nœuds peut, en observant lequel a relayé la transaction en premier, deviner avec une bonne probabilité quel nœud en est à l'origine. Cette attaque, appelée « topology-based deanonymization », fonctionne sans aucune analyse de la blockchain. Elle a été démontrée notamment par les chercheurs de l'université de l'Illinois en 2017.

Le principe Dandelion

Dandelion (BIP-156, par Giulia Fanti, Pramod Viswanath et Andrew Miller, 2017) propose de scinder la propagation d'une transaction en deux phases :

  1. Phase « tige » (stem) : la transaction est transmise séquentiellement, de pair en pair, à travers une dizaine de nœuds choisis aléatoirement. Aucun ne la relaie en broadcast.
  2. Phase « fleur » (fluff) : à la fin de la tige, le nœud final déclenche le gossip normal (propagation à tous ses pairs).

Le résultat : impossible de remonter à l'émetteur en observant simplement quel nœud broadcast en premier, puisque ce nœud n'est pas l'émetteur, mais un relais arbitraire en bout de tige.

Dandelion++ et adoption

Dandelion++ (2018) renforce le schéma initial contre des attaques plus subtiles (graph learning, intersection attacks) en randomisant régulièrement la topologie. C'est cette version qui a été adoptée par Monero en 2020. Sur Bitcoin, la proposition BIP-156 n'a jamais été intégrée à Bitcoin Core, principalement par crainte d'augmenter la latence de propagation et d'introduire de nouveaux vecteurs DoS.

Alternatives sur Bitcoin

| Solution | Niveau de protection | Disponibilité | |---|---|---| | Tor sur Bitcoin Core | Bonne (anonymise l'IP) | Native, recommandée | | I2P | Bonne | Supportée depuis Core 22 | | Dandelion BIP-156 | Excellente | Non implémentée | | Diffuser via un nœud distant | Variable | Pratique courante |

À retenir

Faute d'adoption de Dandelion sur Bitcoin, la meilleure pratique pour anonymiser l'origine de ses transactions reste de faire tourner son propre nœud derrière Tor ou I2P. Dandelion conserve un intérêt théorique majeur et inspire des discussions régulières sur le développement futur de la couche P2P de Bitcoin.

Termes lies

← Retour au glossaire complet

Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.