Exploring Randomness in Blockchains

Nowadays blockchain systems are widely used in many different fields, not only as a kind of payment method, i.e. cryptocurrency, but also as the infrastructure of decentralized applications. A smart contract, which is a program running on the blockchain, e.g. Ethereum, enables decentralized applications without the need for any trusted third party. To deploy a smart contract every miner of the blockchain needs to perform the same function of the smart contract such that they reach a consensus on its final state. Therefore, current blockchain systems are deterministic and non-probabilistic, disallowing any randomness in smart contracts, which is a significant limitation for the applicability of blockchains. A wide range of real-world applications depend on random functions, most obvious examples are games and lottery applications. Various methods have been proposed To address the random number generation problem, such as using a trusted oracle or the block hash. All of those have different disadvantages and advantages. Noticing the lack of concrete guidance for the inclusion of randomness in smart contracts on blockchains, we investigate the state-of-the-art random number generation methods and compare them in several critical aspects including availability, unpredictability, unbiasability, verifiability, scalability, execution time and cost.

[1]  Weidong Shi,et al.  Demystifying Pythia: A Survey of ChainLink Oracles Usage on Ethereum , 2021, Financial Cryptography Workshops.

[2]  Daojing He,et al.  Smart Contract Vulnerability Analysis and Security Audit , 2020, IEEE Network.

[3]  Aaas News,et al.  Book Reviews , 1893, Buffalo Medical and Surgical Journal.

[4]  Andrew Gross,et al.  POSDAO: Proof of Stake Decentralized Autonomous Organization , 2019, SSRN Electronic Journal.

[5]  Dan Boneh,et al.  Verifiable Delay Functions , 2018, IACR Cryptol. ePrint Arch..

[6]  Ee-Chien Chang,et al.  Towards Scaling Blockchain Systems via Sharding , 2018, SIGMOD Conference.

[7]  Michael J. Fischer,et al.  Scalable Bias-Resistant Distributed Randomness , 2017, 2017 IEEE Symposium on Security and Privacy (SP).

[8]  Fengjun Shang,et al.  Research on the Traffic Matrix Based on Sampling Model , 2007, ADMA.

[9]  Silvio Micali,et al.  Verifiable random functions , 1999, 40th Annual Symposium on Foundations of Computer Science (Cat. No.99CB37039).

[10]  S. Goldberg,et al.  Making NSEC5 Practical for DNSSEC , 2017 .

[11]  W. Hager,et al.  and s , 2019, Shallow Water Hydraulics.

[12]  Daniel Davis Wood ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER , 2014 .

[13]  Brian Hayes,et al.  Randomness as a Resource , 2001, American Scientist.

[14]  Amir Herzbergy,et al.  Public Randomness in Cryptography " , 1992 .