The importance of Randomness to Blockchains and Web3
Table of Contents
Randomness is the key criterion to assess the security level of a system. Traditional techniques of generating random numbers are centralized and lack a simple, inexpensive means to check the outcomes or see if there has been any tampering. In contrast, the blockchain random number generator technology can be able to solve this issue by offering transparency, fairness, verifiability and tamper-resistance in the random generating numbers process. In this article, we will explore different methods of random number generation (RNG) as well as discuss its importance to Blockchain and Web3.
Qualities of a random sequence
If a sequence is considered random, it has to possess the following characteristics:
- Unpredictable: The outcome must be unpredictable before it happens.
- Unbiased: Every possible outcome must be equally likely to occur
- Provable: The outcome must able to be independently verified
- Tamper-proof: Randomness must be produced in a way that is resistant to outside interference.
- Non-reproducible: Without preserving the original sequence, the randomness-generating process cannot be duplicated.
Pseudorandom RNGs and True RNGs
Randomness is an integral part of numerous facets of life, from theory like security, cryptography, or computer simulation to games of gambling like lotteries. Building a solid Random Number Generator (RNG) has taken a lot of work because finding a true randomness source is usually extremely difficult.
Traditionally, random number generators can be divided into two types, which are pseudorandom random number generators (PRNGs) and true random number generators (TRNGs). PRNGs make use of deterministic mathematical algorithms. These RNGs are built on finite-state machine algorithms that create pseudo-random determinism sequences from initial values known as seeds in mathematical procedures. In contrast, TRNGs obtain their unpredictability from a variety of physical processes, including thermal noise, radio noise, and others. These sources' behavior is generally acknowledged to be unexpected and non-deterministic by nature.
A group of algorithms known as PRNGs create random sequences that resemble real random numbers using mathematical formulas. The numbers may appear random to human observers since computers are unique systems, but they may actually include detectable patterns that can be discovered through intensive statistical research.
TRNGs produce random numbers based on processes that occur in nature by using unpredictably occurring physical sources such as cosmic noise, radioactive decay of isotopes, or static in radio waves. In comparison to computers, TRNGs are thought to produce greater (more unpredictable) randomness since they "extract" randomness from physical processes. In spite of this, the data that TRNGs employ might also be deterministic. By placing themselves between the TRNG and the phenomenon it is scanning, a person may pick up the same signal and determine the exact number sequence being transmitted.
While TRNGs can generate random sequences with a reduced probability of being discovered to contain detectable patterns, they are more expensive than PRNGs, making them unsuitable for typical use cases. Reproducibility is another important advantage PRNGs have over TRNGs. It is feasible to reproduce the same sequence of numbers if you know where they came from, which allows you to verify the random number generation process. This is useful for many Web3 applications that utilize randomness.
The Importance of Randomness to Blockchains
The basis for the cryptography employed in blockchains is secure randomness. Cryptographic hash functions are a crucial component in creating a private key for a cryptocurrency wallet and ensure that it is prohibitively difficult to guess what a specific wallet's private key is. According to certain calculations, the number of possible private key combinations in the SHA-256 hash function, which is employed in the Bitcoin protocol, is nearly equal to the calculated number of atoms in the observable universe.
The amount of messages that can be sent in a given amount of time (throughput) and the amount of time it takes for a message to travel across the network are the two main factors limiting distributed consensus (latency). Every node would need to send messages to every other node, which would be impractical in a public blockchain with thousands of distributed players who need to reach an agreement. Bitcoin employs Proof of Work (PoW) as a source of randomness to choose which block is added to the blockchain, reducing the number of messages that must be delivered to reach consensus. Also, The computational puzzle that miners are vying to solve in order to successfully add a block to the blockchain is challenging to complete, so the likelihood that multiple nodes will complete the puzzle simultaneously is low. As a result, it reduces the number of messages needed for the network to establish consensus.
In Proof-of-Stake (PoS) systems, randomness is frequently employed to support the equitable and unpredictable allocation of validator duties. A malicious actor can boost their likelihood of getting chosen and jeopardize the network's security if they can influence the source of randomness used in the selection process.
Since blockchains possess transparency in nature, all inputs and outputs are visible to system members, which may make randomly produced sequences predictable. For instance, several techniques for on-chain random number generation, like block hashing, have security flaws that are simple to exploit. The block producer can influence the generation of random sequences by not publishing blocks that would disadvantage the miner/validator, essentially rolling the dice again until a favorable outcome for them appears. This can be done if the miner/validator has an interest in a specific outcome determined by a random value or sequence.
Off-chain RNG systems, however, are opaque and provide consumers with no means of knowing whether the centralized data supplier skewed the outcomes in their favor. As more value is secured by the RNG system, both options grow more worrisome.
Importance of Randomness to Web3
It's possible that when individuals consider blockchain gaming, NFT initiatives, or digital art, they overlook how crucial randomness is in shaping outcomes. Web3 applications need a secure source of randomness to produce fair and unpredictable results, whether they are locating in-game assets in a metaverse, adding variation to a generative art algorithm, creating the content of a loot box, minting NFTs, awarding prizes to winners, authenticating event tickets, or randomly choosing which DAO participant gets chosen for a specific governance role.
Exploitable results from inadequate randomization solutions might result in information asymmetry and an unfair advantage for a subset of participants since these systems have the potential to accumulate a significant quantity of real-world value. These situations frequently result in the formation of negative feedback loops that cause power imbalances in interactions and the total breakdown of economic and game-theoretical mechanisms intended to promote economic activity and social cooperation.
It is difficult to access a source of randomness that is unchangeable, auditable by all parties, and tamper-proof. However, the Web3 industry's aim for fairness and transparency has unlocked a number of apps and protocols that stand out in comparison to their Web2 equivalents. Numerous novel use cases in blockchain gaming, NFTs, decentralized governance, Web3 social media, fundraising and charity, social tokens, and other areas are made possible by the ability to access a fair and objective source of randomness in a verifiably safe manner.
Orand - A Trustless Source of Randomness for Games and Web3 Applications
Decentralized Random Number Generator is one of the biggest challenges in blockchain technology, which receives huge demand from the industry regardless of the cost of the solution. According to Chainlink VRF’s intel, there has been 8 million randomness each month. Although it can be a small figure for other fields, we should not underestimate its value and potential in the future since the more Decentralized Gaming and Web3Applications are developed, the more demand there is for trustless randomness. In Orochi Network’s speculation, decentralized gaming and web3 applications can be the cause of the next information explosion, changing the landscape of the internet entirely. At the peak of Decentralized Gaming and Web3, the demand for trustless randomness can reach trillion queries each month.
Orand is a trustless source of randomness developed by Orochi Network. As a system library of UnityOS (Orochi Computation Layer), Orand can provide randomness for all dApps on oWASM and smart contracts on supported Layer-1 chains. Deliberate proofs for some properties on the randomness of Orand (counter-manipulation, open-sourced transparency, verifiability and high throughput) will be published in recognized scientific venues. So far, we have released Orand as an open source project based on Verifiable Random Functions (VRFs), licensed under Apache License 2.0. At this stage, Orand has already been implemented and under testing. The table below will show the competitive advantages of Orand’s VRFs over other VRF solutions.
Having possessed these advantages over competitors, the Orand’s VRF developed by Orochi Network can provide decentralization, unpredictability, prevention of nothing at stake, high throughput and prevention of withholding secrets, which will open the door to innovative and significant features and experiences.
If you’re a developer and want to utilize our Orand for your applications, you can reach out to us using the channels provided below.
About Orochi Network
Orochi Network provides missing building blocks for Decentralized Gaming and Metaverse, the first infrastructure that provides Verifiable Computation.
We allow computation to be processed off-chain at zero cost without sacrificing decentralization. Using Zero-Knowledge Proof to prove and verify the computation, projects can inherit the solutions to be verified on-chain by using smart contracts efficiently.
About Orochi Network
Orochi Network is a cutting-edge zkOS (An operating system based on zero-knowledge proof) designed to tackle the challenges of computation limitation, data correctness, and data availability in the Web3 industry. With the well-rounded solutions for decentralized gaming and metaverse applications, Orochi Network omits the current performance-related barriers and makes ways for more comprehensive dApps hence, becoming the backbone of Web3's infrastructure landscape.
Verifiable Random Function
Introducing Orochi Network - The Operating System For High Performance dApp And Metaverse
10 January 2023
Orosign Wallet 101: How to get started?
03 February 2023
Validity Proofs vs. Fraud Proofs: An Explanation
06 January 2023
Introducing Orosign Multisignature Wallet - A Self-Managing Mobile App For Digital Assets
06 January 2023
Introducing Orand: Your Trustless Source of Randomness
20 February 2023
Verifiable Random Function