Dandelion - Reading Assignment

  1. It communicates the transaction to all its peers, who in turn communicate to all their peers, and so forth, with some checks to prevent redundant communication. The information travels in all directions over the network like a wave. Some cryptocurrencies, like Bitcoin, randomize the timing of this broadcast, but Monero does not.

  2. Stem phase (anonymity) - to find a proxy node to broadcast
    Fluff phase - to broadcast the transaction, using a different set of peers in each phase
    and changing connection set with time in the “anonymity phase”.

  3. Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization
    attacks.

  4. Fail-Safe Mechanism and Epochs.

1 Like
  1. What is ‘flooding’?
    process of broadcasting where each node communicate the information to the all their peers

  2. What are the two phases of a Dandelion broadcast and what happens in each phase?
    anonymity where it is searched a proxy node to broadcast and spreading where information is broadcasted into the network

  3. What potential weakness of Dandelion does Dandelion++ aim to address?
    resist large scale rule breaking deanonymization attacks

  4. Under the Dandelion++ protocol, what are the two ways to transition from the ‘stem’ phase to the ‘fluff’ phase?
    using epochs switching and fail safe mechanism

1 Like

1.)
If a node starting the broadcast of a new transaction to the network uses a process called flooding.
It communicates the transaction to all its peers, who in turn communicate to all their peers, and so forth, with some checks to prevent redundant communication.

2.)

  • stem phase (anonimity)
    A process for finding a proxy node to broadcast the transaktion.

  • fluff phase (spreading)
    The proxy transmits the transaction to the network.

Both phases use different sets of peer connections with the important difference
that the anonymity phase connection set changes with time.

3.)
Dandelion works if all nodes are honest.
Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.

4.)
-stem phase in Dantelion++
In the new stem phase, to implement dynamic connectivity, it proceeds in discreet intervals, called epochs.
Each node switches epoch independently, typically every few minutes. With each new epoch, a node picks two new
relay connections at random from its outbound connections. Then whenever the node creates its own transaction
it sends it over one of these two relays, always making the same choice for a given epoch. And whenever it gets
a transaction from another node for forwarding during stem phase, if it is a relayer (more on this below),
it sends it out randomly over one of the two relays.

-fluff phase in Dantelion++
The fluff phase in Dandelion++ uses diffusion, the flooding process where the timing of the communications are random
to make it harder for spy nodes to locate the source. Once a transaction has started the diffusion process it continues
to propagate using diffusion, never going back to the stem phase. Diffusion starts, though, in special way with Dandelion++.
For each epoch, a node classifies itself as either a relayer or a diffuser. The mode is determined at random at the start of
the epoch. If a node is a diffuser, whenever it is given a transaction to relay as stem phase, it instead broadcasts it using
diffusion, thereby starting the fluff phase.

1 Like
  1. The way of monero MN’s broadcast new transactions
  2. Find a proxy for broadcasting and establishing this process
  3. Dand. ++improves the prev. version to resist deanonymization attacks.
  4. Switching the mn mode where the node classificate itself relayer/diffuser
1 Like
  1. Flooding is when a new transaction is transmitted to a node which in turn transmits to all its peers which in turn do the same until the transaction is communicated throughout all nodes in the network

  2. A Dandelion broadcast consists of a stem and a fluff phase. The stem phase finds a proxy node to broadcast, the fluff phase is the broadcast

  3. Dandelion assumes that nodes will behave by the rules of the network, whereas Dandelion++ can resist large-scale rule-breaking deanonymization attacks

  4. A node can either be a relayer of a diffuser. If a node is a diffuser and it is given a transaction to relay as stem phase, it instead broadcasts it using diffusion which starts the fluff phase. Also each node that relays a transaction during stem phase starts a timer - if the node does not receive the transaction back during the fluff phase before the timeout then it starts its own fluff phase

1 Like

1.) What is ‘flooding’?
Flooding communicates the transaction to all its peers, who in turn communicate to all their peers, and so forth, with some checks to prevent redundant communication. The information travels in all directions over the network like a wave. Some cryptocurrencies, like Bitcoin, randomize the timing of this broadcast, but Monero does not.

2.) What are the two phases of a Dandelion broadcast and what happens in each phase?
Anonymity (or stem) phase - defines a process for finding a proxy node to broadcast
Spreading (or fluff) phase - It establishes another process for broadcast

3.) What potential weakness of Dandelion does Dandelion++ aim to address?
Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.

4.) Under the Dandelion++ protocol, what are the two ways to transition from the ‘stem’ phase to the ‘fluff’ phase?
The fluff phase in Dandelion++ uses diffusion, the flooding process where the timing of the communications are random to make it harder for spy nodes to locate the source. There is an additional, complementary piece to Dandelion++ called the fail-safe mechanism. Each node that relays a transaction during stem phase starts a timer for that transaction. If a time threshold passes without the node receiving the same transaction back during a fluff phase, it starts its own fluff phase.

1 Like

1 The process of distributing transactions to the network: from the node to all its peers who in turn broadcasts to all their peers.
2 Stem and fluff.
3 When the network is scanned by bots with the purpose to deanonymize the transactions, D++ uses a time bound procedure to switch pair of relay nodes. The broadcasting of new transactions will be over the same node the entire period (epoch) and relay transactions will be over a random (of two) nodes.
4 At the beginning of every epoch, the nodes are assigned either broadcast new (stem) or relay by diffusion (fluff). If a stem broadcast node is given a transaction to relay it will become a diffusion, fluffing node.

1 Like
  1. It is a broadcasting process used to communicate transactions across the network, by having all nodes communicating the information to their peers which will then do the same and so on, so forth.
  2. Dandelion defines a process for finding a proxy node to broadcast, called the anonymity (or stem) phase. And it establishes another process for broadcast, called the spreading (or fluff) phase.
  3. Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.
  4. Either by using the “epochs switching” method or through the “fail-safe mechanism”.
1 Like
  1. What is ‘flooding’?
    A) It is a broadcasting process used to communicate transactions across the network, by having all nodes communicating the information to their peers which will then do the same and so on. It travels in all directions like a wave.

  2. What are the two phases of a Dandelion broadcast and what happens in each phase?
    A) Stem and Fluff. Stem looks for a proxy node. Fluff is “spreading” to the network.

  3. What potential weakness of Dandelion does Dandelion++ aim to address?
    A) Address’ large scale rule breakers.

  4. Under the Dandelion++ protocol, what are the two ways to transition from the ‘stem’ phase to the ‘fluff’ phase?
    A) Uses a dynamic connectivity protocol called an epoch when switching from the ‘stem’ phase to the ‘fluff’ phase. The node will randomly choose what phase to be in every epoch.

1 Like

1.- Flooding is when a node spreads the transaction to all its peers, and then the peers repeat the process.
2.- Phase 1 consist on finding a proxy node for broadcasting. Phase 2 spreads the information through the proxy node.
3.- Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.
4.-Either by using the “epochs switching” method or through the “fail-safe mechanism”.

1 Like
  1. It communicates the transaction to all its peers, who in turn communicate to all their peers, and so forth, with some checks to prevent redundant communication.

  2. Dandelion defines a process for finding a proxy node to broadcast, called the anonymity (or stem) phase. And it establishes another process for broadcast, called the spreading (or fluff) phase. In general, the two phases use different sets of peer connections with the important difference that the anonymity phase connection set changes with time. The descriptive name Dandelion comes from the process of first seeking out a proxy node along a special linear search path, then from this proxy node spreading the information rapidly and symmetrically—the shape of information flow resembles a dandelion.

  3. To resist large scale, rule breaking deanonymisation attacks.

  4. Epoch switching or fail safe mechanism.

1 Like

1.- Flooding is what Monero node users to broadcast new TXs. It communicates the TXs to all its peers, who in turn communicate to all their peers, and so forth, with some checks to prevent redundant communication. The info travels in all directions over the network like a wave. BTC, randomize the timing of this broadcast, but not Monero.

2.- Dandelion target is to find and route TXs to a proxy node, this would be the anonymity phase. Next, flood the info throughout the network which would be the dissemination phase. So different sets of connections are used, the information is first transferred to one node and then bases on its peers, the flooding begins.

3.- Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks. Defeating the risk that the not honest nodes undermine Dandelion anonymity.

4.-Using “Epoch switching” or through the “Fail-safe Mechanism”. This last one, serves two purposes: it frustrates attempts at deanonymization using timing and it defeats black-hole attacks where adversarial nodes discard TXs during the stem phase rather than relaying them.

1 Like
  1. Monero node starting the broadcast of a new transaction uses a process called flooding.
  2. Anonymity (stem) phase - a process for finding a proxy node to broadcast - and spreading (fluff) phase - it establishes another process for broadcast, called the spreading.
  3. Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.
  4. In the new stem phase, to implement dynamic connectivity, it proceeds in discreet intervals, called epochs. Each node switches epoch independently, typically every few minutes. With each new epoch, a node picks two new relay connections at random from its outbound connections. Then whenever the node creates its own transaction it sends it over one of these two relays, always making the same choice for a given epoch. And whenever it gets a transaction from another node for forwarding during stem phase, if it is a relayer (more on this below), it sends it out randomly over one of the two relays.
1 Like

A propagation technic of transactions in the p2s network.

Phase 1 “Anonymity (or stem) phase”: Find a proxy node to broadcasting.
Phase 2 “Spreading (or fluff) phase”: Spreading information through the proxy node.

Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.

Either by using the “epochs switching” method or through the “fail-safe mechanism”.

1 Like
  1. the Monero node starting the broadcast of a new transaction communicates the transaction to all its peers, who in turn communicate to all their peers, and so forth, with some checks to prevent redundant communication. The information travels in all directions over the network like a wave
  2. Phase 1 = find a proxy node to broadcast the transaction to (anonymity phase)
    Phase 2 = spreading the tx from the proxy node (in a dandelion shape) (spreading phase)
  3. Dandelion may be ignored by nodes who don’t want to follow the network rules
  4. by using the “epochs switching” method or through the “fail-safe mechanism”
1 Like
  1. What is ‘flooding’?
    Right now, the Monero node starting the broadcast of a new transaction uses a process called flooding. It communicates the transaction to all its peers, who in turn communicate to all their peers, and so forth, with some checks to prevent redundant communication. The information travels in all directions over the network like a wave. Some cryptocurrencies, like Bitcoin, randomize the timing of this broadcast, but Monero does not.
  2. What are the two phases of a Dandelion broadcast and what happens in each phase?
    To address this inadequacy, the authors proposed Dandelion. Dandelion defines a process for finding a proxy node to broadcast, called the anonymity (or stem) phase. And it establishes another process for broadcast, called the spreading (or fluff) phase. In general, the two phases use different sets of peer connections with the important difference that the anonymity phase connection set changes with time. The descriptive name Dandelion comes from the process of first seeking out a proxy node along a special linear search path, then from this proxy node spreading the information rapidly and symmetrically—the shape of information flow resembles a dandelion.
  3. What potential weakness of Dandelion does Dandelion++ aim to address?
    However, an adversary seeking to link transactions with IP addresses may not be passive, and may not follow the rules of the network. Some honest nodes may not run Dandelion. Motivated by the growing market for wide-area cryptocurrency analysis, such as by Chainalysis [4], the authors revisited the assumptions from their earlier work and, with collaborators, a year later developed Dandelion++ [3]. Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.
  4. Under the Dandelion++ protocol, what are the two ways to transition from the ‘stem’ phase to the ‘fluff’ phase?
    Dandelion++, like Dandelion, has a stem and fluff phase. In the new stem phase, to implement dynamic connectivity, it proceeds in discreet intervals, called epochs.
    The fluff phase in Dandelion++ uses diffusion, the flooding process where the timing of the communications are random to make it harder for spy nodes to locate the source.
1 Like
  1. What is ‘flooding’?
    Is the diffusion of transaction to all nodes connected. The information travels in all directions over the network like a “wave”.

  2. What are the two phases of a Dandelion broadcast and what happens in each phase?
    Phase 1 - “Anonymity Phase” (or stem phase): find a proxy node to broadcast from.
    Phase 2 - “Spreading Phase” ( or fluff phase): broadcasting the transactions threw the network to all nodes.

  3. What potential weakness of Dandelion does Dandelion++ aim to address?
    Some dishonest nodes may not run Dandelion, which undermine the anonymity. Dandelion was vulnerable against large scale deanonymization attacks.

  4. Under the Dandelion++ protocol, what are the two ways to transition from the ‘stem’ phase to the ‘fluff’ phase?
    Using Epoch system which the broadcast travels along the network in intervals, and at each interval the node it reaches can randomly diffuse the transaction, thereby starting the “fluff” phase.
    Or by using a fail-safe mechanism, where each node which relays a transaction during the “stem” phase starts a timer. Whenever the timer deadline is reach without transaction coming back, the node starts its own “fluff” phase.

1 Like

1. What is ‘flooding’?

It’s when a transaction is communicated to peers and their peers with checks to prevent redundant communication.

2. What are the two phases of a Dandelion broadcast and what happens in each phase?

  • the anonymity phase - process for finding a proxy node to broadcast

  • the spreading phase - for broadcasting transactions

3. What potential weakness of Dandelion does Dandelion++ aim to address?

Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.

Diffusion starts, though, in special way with Dandelion++. For each epoch, a node classifies itself as either a relayer or a diffuser. The mode is determined at random at the start of the epoch. If a node is a diffuser, whenever it is given a transaction to relay as stem phase, it instead broadcasts it using diffusion, thereby starting the fluff phase.

4. Under the Dandelion++ protocol, what are the two ways to transition from the ‘stem’ phase to the ‘fluff’ phase?

If a node is a diffuser, whenever it is given a transaction to relay as stem phase, it instead broadcasts it using diffusion, thereby starting the fluff phase.

There is an additional, complementary piece to Dandelion++ called the fail-safe mechanism. Each node that relays a transaction during stem phase starts a timer for that transaction. If a time threshold passes without the node receiving the same transaction back during a fluff phase, it starts its own fluff phase.

1 Like

1.process which communicates the transaction to all its peers, who in turn communicate to all their peers, and so forth

2.“Stem’ing” - process for finding a proxy node to broadcast, called the anonymity (or stem) and “Fluffy-ing” - establishes another process for broadcast, called the spreading (or fluff) phase

3.IP Address linking as well as preventing SPY NODES from collecting data and any possible Deanonymization attacks

  1. a node classifies itself as either a relayer or a diffuser. The mode is determined at random at the start of the epoch. If a node is a diffuser, whenever it is given a transaction to relay as stem phase, it instead broadcasts it using diffusion, thereby starting the fluff phase
1 Like
  1. What is ‘flooding’?

Flooding is the process used by Monero nodes to start the broadcast of a new transaction. It communicates the transaction to all its peers, who in turn communicate to all their peers, and so forth. The information travels in all directions over the network like a wave.

  1. What are the two phases of a Dandelion broadcast and what happens in each phase?

Two phases of a Dandelion broadcast are anonymity (or stem) phase where Dandelion is finding a proxy node to broadcast and the spreading (or fluff) phase where it establishes another process for broadcast.

  1. What potential weakness of Dandelion does Dandelion++ aim to address?

Dandelion++ tweaks Dandelion to resist large-scale rule-breaking deanonymization attacks.

  1. Under the Dandelion++ protocol, what are the two ways to transition from the ‘stem’ phase to the ‘fluff’ phase?

    • Epoch (broadcast intervals) system: where node randomly determined as “diffuser” relays a transaction by using diffusion, thereby starting the fluff phase.
    • By using fail-safe mechanism: where each node that relays a transaction during stem phase starts a timer. If a time threshold passes without the node receiving the same transaction back during a fluff phase, it starts its own fluff phase
1 Like