bitcoin-dev

BIP proposal - Dandelion: Privacy Preserving Transaction Propagation

BIP proposal - Dandelion: Privacy Preserving Transaction Propagation

Original Postby Andrew Miller

Posted on: June 12, 2017 14:46 UTC

A preliminary implementation and BIP for Dandelion, a privacy-enhancing modification to Bitcoin's transaction propagation mechanism, has been introduced by a group of developers.

The aim is to obscure the original source IP of each transaction. The two-phase approach sees transactions first enter the "stem" phase before the "fluff" phase, with each node relaying the transaction to a single peer during the stem phase. After a random number of hops along the stem, the transaction enters the fluff phase, which behaves like ordinary transaction flooding or diffusion. The team has included several new design ideas in their current proposal, including a stronger attacker model for defence against an attacker that actively tries to learn which nodes were involved in the stem phase. Their approach is called "Mempool Embargo", meaning a node that receives a "stem phase" transaction behaves as though it never heard of it, until it receives it again from someone else (or until a random timer elapses). They are also working on robustness, believing the privacy benefit should not come at the expense of propagation quality. Feedback is being sought on the implementation details related to the two points above, particularly on the tricky mempool embargo mechanism. Benchmark experiments are currently running on testnet and will be reported on. Prior discussions can be found at links provided.

Bitcoin Logo

TLDR

Join Our Newsletter

We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.

Explore all Products

ChatBTC imageBitcoin searchBitcoin TranscriptsSaving SatoshiBitcoin Transcripts Review
Built with 🧡 by the Bitcoin Dev Project
View our public visitor count

We'd love to hear your feedback on this project?

Give Feedback