🔀 [Analysis] Randomness in blockchain - Aparna Krishnan

Randomness is essential for blockchain networks. The core cryptography underpinning these systems relies on randomness to create communication channels, generate keys, and route messages through the network. Blockchains are especially reliant on randomness when it comes to consensus mechanisms. Consensus requires multiple, sometimes thousands, of participants to agree on a single state while dealing with constraints like throughput and latency. Bitcoin deals with this through proof-of-work, which creates randomness through the mining process. While multiple miners are competing to add a block, only one will be added, reducing the overall message-passing overhead for the network. Proof-of-stake (PoS) deals with network constraints by selecting a subset of validators that can easily communicate to reach an agreement on blocks. Because this group is generally small, network constraints can be more easily overcome. In order to ensure fairness PoS systems must create randomness in the validator selection process, ensuring that the next validator chosen is not known beforehand. In order to be 'unbiasable,' the randomness protocol needs to ensure:

  • There is always some output from the randomness function
  • The output of the randomness function has not been manipulated

Aparna Krishnan explores how new protocols like Tendermind, Algorand, Dfinity, Thunderella, and Casper FFG are working to solve the randomness problem.

Let us know what you loved about the report, what may be missing, or share any other feedback by filling out this short form. All responses are subject to our Privacy Policy and Terms of Service.

Suggested Research Based on your Watchlists

Create a new watchlist