Randomness is a term that refers to the lack of patterns or predictability. The result of the coin toss, the pattern of fingerprints and the shape of snowflakes are considered unpredictable. In this article, we will learn what randomness is? And why it is
Randomness is a term that refers to the lack of patterns or predictability. The result of the coin toss, the pattern of fingerprints and the shape of snowflakes are considered unpredictable. Although unpredictable results are ubiquitous in nature, the randomness generated by computers is not so. Because computers are deterministic devices, it is impossible to generate real random numbers purely through a group of computer algorithms. In this article, we will learn what randomness is? And why it is important for blockchain.

1、 What is randomness in Web3?
When people think of blockchain games, NFT projects or digital art, they may not take into account the importance of randomness in determining results. Whether it is to determine the position of assets in the game in the meta universe, add changes to the generation art algorithm, generate the content of the trophy box, cast NFT, distribute prizes to winners, certify tickets for activities, or regularly determine which DAO participant is selected to play a specific governance role, Web3 applications need a safe source of randomness to create fair and unpredictable results.
Because these systems can accumulate a lot of practical value, the available results of suboptimal randomness solutions may lead to information asymmetry and unfair advantages of the subset of participants. These scenarios often lead to a negative feedback cycle, resulting in power imbalance in interaction, and the complete failure of the economic and game theory mechanisms aimed at promoting economic activities and social coordination.
It is not easy to access a tamper proof, unpredictable source of randomness that can be audited by all participants. However, the desire for fairness and transparency in the Web3 industry makes many applications and protocols stand out from Web2. The ability to access fair and just random sources in a verifiable and secure way has opened up a large number of new use cases in blockchain games, NFTs, decentralized governance, Web3 social media, fundraising and charity, social tokens and other fields.
2、 Why is randomness important to blockchain?
Security randomness is the basis of the encryption technology used by the blockchain. The cryptographic hash function is an important part of generating the private key for the cryptocurrency wallet. It ensures the difficult nature of guessing the private key of a specific wallet. It is estimated that the number of possible private key combinations (hash functions used in Bitcoin protocol) in SHA-256 is close to the estimated number of atoms in the observable universe.
In addition, distributed consensus is fundamentally limited by the number of messages that can be sent over a period of time and the time required for messages to be sent over the network. In a public blockchain where thousands of distributed participants need to reach an agreement, it is unrealistic for each node to send messages to all other nodes. To limit the number of messages that need to be sent to reach a consensus, Bitcoin uses proof of work (PoW) as the source of randomness to determine which block is added to the blockchain.
Because it is difficult for the mining of computing difficulties to successfully add blocks to the blockchain, the probability of multiple nodes solving the problem at the same time is very low, which limits the number of messages required for network consensus. Randomness is also commonly used in proof of equity (PoS) systems to support fair and unpredictable allocation of verifier responsibilities. Because, if malicious participants can affect the random sources used in the selection process, their chances of being selected and endangering the network security will also increase.
Due to the transparency of the blockchain, all inputs and outputs are open to system participants, potentially making the randomly generated sequence predictable. Some methods for generating random numbers on the chain, such as block hash, contain security vulnerabilities that are easy to exploit. If the mining machine or verifier is interested in a specific result determined by a random value or sequence, the block producer can affect the generation of a random sequence by not publishing blocks that are unfavorable to it. In other words, roll the dice again until there is a good result for them.
On the other hand, whether the offline RNG solution is transparent requires users to believe that the centralized data provider will not manipulate the results for their own benefit, and users have no way to distinguish between real or random manipulation. As the value protected by RNG solutions increases, both solutions become increasingly worrisome.
summary
The above content explains randomness in Web3 and answers the question why randomness is important to blockchain. With more and more economic, social and cultural interactions taking place on the Internet, the demand for imitating the unpredictability of nature and creating digital systems containing unpredictable results has been growing in the past few decades. This unpredictable use case includes introducing artificial scarcity, building a more robust security mechanism, and promoting a credible neutral decision-making process.