Breaking Beam - Reading Assignment

  1. What is a ‘one-kernel transaction’, and why does Grin have so many of them?
    one kernel indicates that a transaction was not merged with any other transactions, and thus the inputs of this transaction are linked to its outputs

The reason for a large amount of such one-kernel transactions being broadcast to the network is that Grin network is not saturated and there are not enough transactions to be merged in the stem phase of Dandelion protocol.

  1. What is Beam’s solution to linkability?

Dummy utxos
At every step of the Dandelion Stem Phase, Beam nodes check whether the merged transactions (might be only one transaction) have at least 5 outputs.
If not, decoy outputs are added to the merged transactions, making sure that the number of outputs is at least 5.

  1. What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction?
    5

  2. How does Beam prevent dummy transactions from cluttering up the blockchain?

Because they spend the dummy transactions which in turn removes them

  1. What protocol will increase the anonymity set of Beam to 100,000+?
    Lelantus-MW
  1. What is a ‘one-kernel transaction’, and why does Grin have so many of them?
  • The reason for a large amount of such one-kernel transactions being broadcast to the network is that Grin network is not saturated and there are not enough transactions to be merged in the stem phase of Dandelion protocol.
  1. What is Beam’s solution to linkability?
  • Decoy (aka Dummy) UTXOs.
  1. What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction?
  • To re-broadcast it, it should have at least 5 outputs.
  1. How does Beam prevent dummy transactions from cluttering up the blockchain?
  • Adding random UTXOs to spend the dummy transactions.
  1. What protocol will increase the anonymity set of Beam to 100,000+?
  • Lelantus-MW.
  • What is a ‘one-kernel transaction’, and why does Grin have so many of them?

A one kernel transaction is one where there is a single input and output, i.e. not merged with any other transactions. Resulting in a low anonymity set, the input and output are clearly linked as they are the only ones. This is a result of the Grin network having low addoption. If the network was running at capacity there would be many transactions per block.

  • What is Beam’s solution to linkability?

Beam’s solution to the linkability problem is to include decoy transactions that have zero value if during the stem phase the merged transactions have less than 5 outputs (the fact they have zero value does not identify them as the transaction amount is hidden).

  • What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction? 5
  • How does Beam prevent dummy transactions from cluttering up the blockchain?

These zero value transactions get bundled and sent to some random address in the future. This creates a false link between the transaction sender and reciever adding confusion and effectively burns the decoy transaction.

  • What protocol will increase the anonymity set of Beam to 100,000+? The Lenatus-MW protocol

1: A one kernel transaction is a transaction not merged with any other transaction making it’s imput linked to it’s output. Grin has so many of them due to the network not having enough transactions to be merged with the stem phase part of the Dandelion protocol.
2:Beam’s solution to linkability is using decoy transactions added during the Dandelion stem phase.
3: The minimum # of outputs Beam nodes need to re-broadcast a transaction is at least 5 outputs.
4:Beam prevents dummy transactions from cluttering the blockchain by adding dummy UTXO to a random transaction of a different user making them spent and removed.
5: The anonymity set of Beam will be increased to 100,00+ with the use of protocol Lelantus -MW.

What is a ‘one-kernel transaction’, and why does Grin have so many of them?

A one-kernel transaction is a by product of every transaction made on the blockchain, thats why theres so many of them. The kernel transaction is proof that no money was created out of thin air.

What is Beam’s solution to linkability?

Beams solution is to check along every stem of the dandelion stem phase to make sure it has at minimum 5 outputs. on top of that, in a later stage the node adds dummy utxos as inputs to a random transaction, most likely belonging to a different user, creating a relationship to users who have no relations.

What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction?

5 is the minimum.

How does Beam prevent dummy transactions from cluttering up the blockchain?

" the node adds dummy UTXOs as inputs to a random transaction, most likely belonging to a different user, thus spending them and removing them from the blockchain, but also creating a relation between users that are in fact unrelated ."

What protocol will increase the anonymity set of Beam to 100,000+?

“Lelantus-MW will dramatically increase the anonymity set (100K outputs) and will make it almost impossible to build the transactions graph if the user chose to use Lelantus-mw transactions from time to time.”

  1. Not enough transactions.
  2. Decoy UTXOs.
  3. At least 5.
  4. By eventually spending them.
  5. Lelantus-MW
2 Likes
  1. What is a ‘one-kernel transaction’, and why does Grin have so many of them? One transaction in a block, which always has at least 5 outputs, and if not, BEAM adds decoys. Due to low levels of usage presently, it is not guaranteed 2 tx’s will always “meet” while in the stem stage. Once usage of the protocol increases, so will the anonymity set.
  2. What is Beam’s solution to linkability? Decoys.
  3. What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction? Each transaction has at least 2 kernels and 7 output decoys per block.
  4. How does Beam prevent dummy transactions from cluttering up the blockchain? They are eventually spent.
  5. What protocol will increase the anonymity set of Beam to 100,000+? Lelantis-MW
1 Like

1 a transaction that was not merged with any other transaction

2 decoy transactions that are added by nodes during the Dandelion Stem phase if merged transactons have less than 5 outputs

3 Beam nodes check if the merged transactions have at least 5 outputs

4 Decoys in Beam make building the transaction graph a probabilistic task, with the probability of a link between two wallets decaying exponentially with the growth of the number of hops.

5 lelantus-MW protocol

1 Like

You are right :slight_smile: but how does Beam prevent these dummies to clutter the blockchain?

1 Like

What is a ‘one-kernel transaction’, and why does Grin have so many of them?
A one-kernel transaction is not mixed with other transactions and sender and receiver can be linked. The GRIN network is not saturated and there are not enough transactions to be merged in the stem phase of Dandelion protocol

What is Beam’s solution to linkability?
Beam solution to linkability is to use decoy transactions. They are are added by nodes during the Dandelion Stem Phase if merged transactions have less than 5 outputs

What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction?
At least 5 outputs

How does Beam prevent dummy transactions from cluttering up the blockchain?
Decoys are eventually spent, preventing cluttering of the network

What protocol will increase the anonymity set of Beam to 100,000+?
Lelantus

1 Like
  1. What is a ‘one-kernel transaction’, and why does Grin have so many of them? One kernel indicates that a transaction was not merged with any other transactions, and thus the inputs of this transaction are linked to its outputs. With enough such links, it is possible to build a transaction graph that connects between different wallets and use this graph, for instance, to prove a financial connection between two known parties. The reason for a large amount of such one-kernel transactions being broadcast to the network is that Grin network is not saturated and there are not enough transactions to be merged in the stem phase of Dandelion protocol.
  2. What is Beam’s solution to linkability? Decoy outputs are added.
  3. What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction? 5
  4. How does Beam prevent dummy transactions from cluttering up the blockchain? The node adds dummy UTXOs as inputs to a random transaction, most likely belonging to a different user, thus spending them and removing them from the blockchain, but also creating a relation between users that are in fact unrelated. Hence the “decoys” name. Because these decoy outputs are eventually spent, the mechanism doesn’t create any permanent clutter on the blockchain.
  5. What protocol will increase the anonymity set of Beam to 100,000+? Lelantus-MW will dramatically increase the anonymity set (100K outputs) and will make it almost impossible to build the transactions graph if the user chose to use Lelantus-mw transactions from time to time.
1 Like
  1. What is a ‘one-kernel transaction’, and why does Grin have so many of them?
  • It is a transaction that has not been mixed with any others, so its inputs and outputs are connected. It happens in Beam because its use is too small.
  1. What is Beam’s solution to linkability?
  • Decoy UTXOs. During stem phase nodes check if a merged transaction has at least 5 outputs. If not, decoys are added so there are at least 5 outputs.
  • Let’s say I want to send 5 coins to 5 friends, one to each. Would in that case the nodes see that my transaction has not been mixed, and add the decoys?
  1. What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction?
  • Five.
  1. How does Beam prevent dummy transactions from cluttering up the blockchain?
  • At some random moment in the future, the decoys are sent to random users as inputs and thus removed from the blockchain.
  1. What protocol will increase the anonymity set of Beam to 100,000+?
  • It is Lelantus-MW.
1 Like

No, because Beam is also an UTXO based blockchain which means there would be 5 outputs so it wouldn’t get mixed. In case you are doing this in one tx. :slight_smile:

2 Likes
  1. One kernel indicates that a transaction was not merged with any other transactions, and thus the inputs of this transaction are linked to its outputs. There are not enough transactions to be merged in the stem phase of the Dandelion protocol. Currently not many people use Grin, so the anonymity set is low but the more people who use it, anonymity will be better.

  2. They tackle it through the use of dummys. At every step of the Dandelion Stem Phase, Beam nodes check whether the merged transactions (might be only one transaction) have at least 5 outputs. If not, decoy outputs are added to the merged transactions, making sure that the number of outputs is at least 5.

  3. At least 5 outputs.

  4. Decoys are spent, so it won’t clutter up the blockchain.

  5. Lelantus-MW

1 Like

Grin uses primarily one-kernel Transactions. This is a result of most of the transactions not being merged with with other transactions. this is a result of the low use of Grin to date. the low use results in too few transactions to be merged with the Dandelion Stem Phase. Beam uses a clever method obscure linkability. This is achieved through the use of dummy UTXO’s which are randomly added as inputs and then later "spent’ in later, random block transactions, where the dummy transactions appear to be spent. This creates a false link to no linked parties, which further confuses the scope of linkability exponentially. The minimum number of transactions required to rebroadcast is 5… I the stem phase, the beam nodes check to see if the merged transactions (including the dummies) have at least 5 outputs, if not, more dummies are randomly added. The Lelantus -MW protocol will raise the Anonymity set of Beam to 100,000

1 Like
  • A One-kernel transaction is a transaction that was not merged with any other transaction, meaning that inputs and outputs of such transaction are clearly linked. Grin has many of them because it is still not widespread and adopted by enough people.
  • Beam uses decoy transactions, that are added by nodes during the Dandelion Stem Phase if merged transactions have less than 5 outputs.
  • To re-broadcast it, it should have at least 5 outputs.
  • Adding random UTXOs to spend the dummy transactions.
  • Lelantus-MW
1 Like

1.1. ne kernel indicates that a transaction was not merged with any other transactions, and thus the inputs of this transaction are linked to its outputs.
Grin network is not saturated and there are not enough transactions to be merged in the stem phase of Dandelion protocol.

2.concept of decoy (aka Dummy) UTXOs

  1. 5 outputs

4.those decoy outputs are eventually spent

5.Lelantus-MW

1 Like
  1. A one-kernel transaction is just one transaction. this transaction has not been merged with other transactions and thus the outputs are linakble to the inputs. Grin has so many of them because their network is undersaturated - not enough transactions to merge.

  2. Decoy outputs called Dummies.

  3. Five

  4. The dummies get re-used as inputs, thus spending them and removing them from the blockchain.

  5. Lelantus MW

1 Like
  1. What is a ‘one-kernel transaction’, and why does Grin have so many of them?
    tx which is not mixed with others and so it is linkable, grin has them because there are not enough tx

  2. What is Beam’s solution to linkability?
    use decoy tx which are added by nodes during dandelion stem phase if there are less than 5 output in merged tx

  3. What is the minimum number of outputs required for Beam nodes to re-broadcast a transaction?
    5 outputs

  4. How does Beam prevent dummy transactions from cluttering up the blockchain?
    adding utxo to spend tx

  5. What protocol will increase the anonymity set of Beam to 100,000+?
    lelantus

1 Like
  1. In Grin, having one kernel indicates that a transaction was not merged with any other transactions, and thus the inputs of this transaction are linked to its outputs. With enough such links, it is possible to build a transaction graph that connects between different wallets and use this graph, for instance, to prove a financial connection between two known parties. The reason for a large amount of such one-kernel transactions being broadcast to the network is that Grin network is not saturated and there are not enough transactions to be merged in the stem phase of Dandelion protocol. As the usage grows, the anonymity will improve.

  2. The paper describes the concept of decoy (aka Dummy) UTXOs. Note that the feature was implemented in Beam before mainnet launch and the mechanism was discussed with Grin’s devs, which decided not to implement it. How do those dummies work? At every step of the Dandelion Stem Phase, Beam nodes check whether the merged transactions (might be only one transaction) have at least 5 outputs. If not, decoy outputs are added to the merged transactions, making sure that the number of outputs is at least 5. Each one of the dummy outputs has a value of zero, but it is completely indistinguishable from regular outputs — all outputs look like random numbers.

  3. 5 outputs

  4. At a later stage (a randomly chosen block height for each output), the node adds dummy UTXOs as inputs to a random transaction, most likely belonging to a different user, thus spending them and removing them from the blockchain, but also creating a relation between users that are in fact unrelated . Hence the “decoys” name. It’s important to note that since those decoy outputs are eventually spent, the mechanism doesn’t create any permanent clutter on the blockchain.

  5. Lelantus-MW

1 Like