This file has been truncated. show original
# Dandelion++ in Grin: Privacy-Preserving Transaction Aggregation and Propagation
*Read this document in other languages: [Korean](dandelion_KR.md). [out of date]*
The Dandelion++ protocol for broadcasting transactions, proposed by Fanti et al. (Sigmetrics 2018), intends to defend against deanonymization attacks during transaction propagation. In Grin, it also provides an opportunity to aggregate transactions before they are broadcasted to the entire network. This document describes the protocol and the simplified version of it that is implemented in Grin.
In the following section, past research on the protocol is summarized. This is then followed by describing details of the Grin implementation; the objectives behind its inclusion, how the current implementation differs from the original paper, what some of the known limitations are, and outlining some areas of improvement for future work.
## Previous research
The original version of Dandelion was introduced by Fanti et al. and presented at ACM Sigmetrics 2017 . On June 2017, a BIP  was proposed introducing a more practical and robust variant of Dandelion called Dandelion++, which was formalized into a paper in 2018.  The protocols are outlined at a high level here. For a more in-depth presentation with extensive literature references, please refer to the original papers.
Dandelion was conceived as a way to mitigate against large scale deanonymization attacks on the network layer of Bitcoin, made possible by the diffusion method for propagating transactions on the network. By deploying "super-nodes" that connect to a large number of honest nodes on the network, adversaries can listen to the transactions relayed by the honest nodes as they get diffused symmetrically on the network using epidemic flooding or diffusion. By observing the spreading dynamic of a transaction, it has been proven possible to link it (and therefore also the sender's Bitcoin address) to the originating IP address with a high degree of accuracy, and as a result deanonymize users.
### Original Dandelion