Distributed Randomness from Approximate Agreement

Authors Luciano Freitas , Petr Kuznetsov , Andrei Tonkikh

Thumbnail PDF


  • Filesize: 0.9 MB
  • 21 pages

Document Identifiers

Author Details

Luciano Freitas
  • LTCI, Télécom Paris, Institut Polytechnique de Paris, France
Petr Kuznetsov
  • LTCI, Télécom Paris, Institut Polytechnique de Paris, France
Andrei Tonkikh
  • LTCI, Télécom Paris, Institut Polytechnique de Paris, France

Cite AsGet BibTex

Luciano Freitas, Petr Kuznetsov, and Andrei Tonkikh. Distributed Randomness from Approximate Agreement. In 36th International Symposium on Distributed Computing (DISC 2022). Leibniz International Proceedings in Informatics (LIPIcs), Volume 246, pp. 24:1-24:21, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2022)


Randomisation is a critical tool in designing distributed systems. The common coin primitive, enabling the system members to agree on an unpredictable random number, has proven to be particularly useful. We observe, however, that it is impossible to implement a truly random common coin protocol in a fault-prone asynchronous system. To circumvent this impossibility, we introduce two relaxations of the perfect common coin: (1) approximate common coin generating random numbers that are close to each other; and (2) Monte Carlo common coin generating a common random number with an arbitrarily small, but non-zero, probability of failure. Building atop the approximate agreement primitive, we obtain efficient asynchronous implementations of the two abstractions, tolerating up to one third of Byzantine processes. Our protocols do not assume trusted setup or public key infrastructure and converge to the perfect coin exponentially fast in the protocol running time. By plugging one of our protocols for Monte Carlo common coin in a well-known consensus algorithm, we manage to get a binary Byzantine agreement protocol with O(n³ log n) communication complexity, resilient against an adaptive adversary, and tolerating the optimal number f < n/3 of failures without trusted setup or PKI. To the best of our knowledge, the best communication complexity for binary Byzantine agreement achieved so far in this setting is O(n⁴). We also show how the approximate common coin, combined with a variant of Gray code, can be used to solve an interesting problem of Intersecting Random Subsets, which we introduce in this paper.

Subject Classification

ACM Subject Classification
  • Theory of computation → Distributed algorithms
  • Asynchronous
  • approximate agreement
  • weak common coin
  • consensus
  • Byzantine agreement


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Ittai Abraham, Yonatan Amit, and Danny Dolev. Optimal resilience asynchronous approximate agreement. In 8th International Conference on Principles of Distributed Systems (OPODIS 2004), OPODIS'04, pages 229-239, Berlin, Heidelberg, 2004. Springer-Verlag. URL: https://doi.org/10.1007/11516798_17.
  2. Ittai Abraham, Philipp Jovanovic, Mary Maller, Sarah Meiklejohn, Gilad Stern, and Alin Tomescu. Reaching consensus for asynchronous distributed key generation. In Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing, pages 363-373, 2021. Google Scholar
  3. Marcos K Aguilera and Sam Toueg. The correctness proof of ben-or’s randomized consensus algorithm. Distributed Computing, 25(5):371-381, 2012. Google Scholar
  4. Michael Ben-Or. Another advantage of free choice: Completely asynchronous agreement protocols (extended abstract). In PODC '83: Proceedings of the annual ACM symposium on Principles of distributed computing, pages 27-30, 1983. Google Scholar
  5. Manuel Blum and Silvio Micali. How to generate cryptographically strong sequences of pseudorandom bits. SIAM journal on Computing, 13(4):850-864, 1984. Google Scholar
  6. Gabriel Bracha. Asynchronous byzantine agreement protocols. Information and Computation, 75(2):130-143, 1987. Google Scholar
  7. Benedikt Bünz, Steven Goldfeder, and Joseph Bonneau. Proofs-of-delay and randomness beacons in ethereum. IEEE Security and Privacy on the blockchain (IEEE S&B), 2017. Google Scholar
  8. Christian Cachin, Klaus Kursawe, Anna Lysyanskaya, and Reto Strobl. Asynchronous verifiable secret sharing and proactive cryptosystems. In Proceedings of the 9th ACM Conference on Computer and Communications Security, pages 88-97, 2002. Google Scholar
  9. Christian Cachin, Klaus Kursawe, and Victor Shoup. Random oracles in constantinople: Practical asynchronous byzantine agreement using cryptography. Journal of Cryptology, 18(3):219-246, 2005. Google Scholar
  10. Ran Canetti and Tal Rabin. Fast asynchronous byzantine agreement with optimal resilience. In Proceedings of the twenty-fifth annual ACM symposium on Theory of computing, pages 42-51, 1993. Google Scholar
  11. Ignacio Cascudo and Bernardo David. Scrape: Scalable randomness attested by public entities. In International Conference on Applied Cryptography and Network Security, pages 537-556. Springer, 2017. Google Scholar
  12. Shir Cohen, Idit Keidar, and Alexander Spiegelman. Not a COINcidence: Sub-Quadratic Asynchronous Byzantine Agreement WHP. In Hagit Attiya, editor, 34th International Symposium on Distributed Computing (DISC 2020), volume 179 of Leibniz International Proceedings in Informatics (LIPIcs), pages 25:1-25:17, Dagstuhl, Germany, 2020. Schloss Dagstuhl-Leibniz-Zentrum für Informatik. URL: https://doi.org/10.4230/LIPIcs.DISC.2020.25.
  13. Tyler Crain. Two more algorithms for randomized signature-free asynchronous binary byzantine consensus with t < n/3 and o(n²) messages and o(1) round expected termination, 2020. URL: https://doi.org/10.48550/ARXIV.2002.08765.
  14. Sourav Das, Zhuolun Xiang, and Ling Ren. Asynchronous data dissemination and its applications. In Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security, pages 2705-2721, 2021. Google Scholar
  15. D. Dolev, N. A. Lynch, S. S. Pinter, E. W. Stark, and W. E. Weihl. Reaching approximate agreement in the presence of faults. Journal of the ACM, 33(3):499-516, July 1986. Google Scholar
  16. A.D. Fekete. Asynchronous approximate agreement. Information and Computation, 115(1):95-124, 1994. URL: https://doi.org/10.1006/inco.1994.1094.
  17. Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson. Impossibility of distributed consensus with one faulty process. Journal of the ACM, 32(2):374-382, 1985. Google Scholar
  18. Luciano Freitas, Petr Kuznetsov, and Andrei Tonkikh. Distributed randomness from approximate agreement. arXiv preprint, 2022. URL: http://arxiv.org/abs/2205.11878.
  19. Luciano Freitas de Souza, Andrei Tonkikh, Sara Tucci-Piergiovanni, Renaud Sirdey, Oana Stan, Nicolas Quero, and Petr Kuznetsov. Randsolomon: Optimally resilient random number generator with deterministic termination. In 25th International Conference on Principles of Distributed Systems (OPODIS 2021). Schloss Dagstuhl-Leibniz-Zentrum für Informatik, 2022. Google Scholar
  20. Yingzi Gao, Yuan Lu, Zhenliang Lu, Qiang Tang, Jing Xu, and Zhenfeng Zhang. Efficient asynchronous byzantine agreement without private setups. arXiv preprint, 2021. URL: http://arxiv.org/abs/2106.07831.
  21. Rosario Gennaro, Stanisław Jarecki, Hugo Krawczyk, and Tal Rabin. Secure distributed key generation for discrete-log based cryptosystems. In International Conference on the Theory and Applications of Cryptographic Techniques, pages 295-310. Springer, 1999. Google Scholar
  22. Yossi Gilad, Rotem Hemo, Silvio Micali, Georgios Vlachos, and Nickolai Zeldovich. Algorand: Scaling byzantine agreements for cryptocurrencies. In Proceedings of the 26th Symposium on Operating Systems Principles, SOSP '17, pages 51-68, New York, NY, USA, 2017. Association for Computing Machinery. URL: https://doi.org/10.1145/3132747.3132757.
  23. Frank Gray. Pulse code communication. United States Patent Number 2632058, 1953. Google Scholar
  24. Kobi Gurkan, Philipp Jovanovic, Mary Maller, Sarah Meiklejohn, Gilad Stern, and Alin Tomescu. Aggregatable distributed key generation. In Annual International Conference on the Theory and Applications of Cryptographic Techniques, pages 147-176. Springer, 2021. Google Scholar
  25. Timo Hanke, Mahnush Movahedi, and Dominic Williams. DFINITY technology overview series, consensus system. CoRR, abs/1805.04548, 2018. URL: http://arxiv.org/abs/1805.04548.
  26. Shang-En Huang, Seth Pettie, and Leqi Zhu. Byzantine agreement in polynomial time with near-optimal resilience. arXiv preprint, 2022. URL: http://arxiv.org/abs/2202.13452.
  27. Valerie King and Jared Saia. Byzantine agreement in expected polynomial time. J. ACM, 63(2), March 2016. URL: https://doi.org/10.1145/2837019.
  28. Eleftherios Kokoris Kogias, Dahlia Malkhi, and Alexander Spiegelman. Asynchronous Distributed Key Generation for Computationally-Secure Randomness, Consensus, and Threshold Signatures, pages 1751-1767. Association for Computing Machinery, New York, NY, USA, 2020. URL: https://doi.org/10.1145/3372297.3423364.
  29. Mikhail Krasnoselskii, Grigorii Melnikov, and Yury Yanovich. No-dealer: Byzantine fault-tolerant random number generator. In IEEE INFOCOM 2020-IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS), pages 568-573. IEEE, 2020. Google Scholar
  30. Hugo Krawczyk. Secret sharing made short. In Annual international cryptology conference, pages 136-146. Springer, 1993. Google Scholar
  31. Hammurabi Mendes and Maurice Herlihy. Multidimensional approximate agreement in byzantine asynchronous systems. In Proceedings of the Forty-Fifth Annual ACM Symposium on Theory of Computing, STOC '13, pages 391-400, New York, NY, USA, 2013. Association for Computing Machinery. URL: https://doi.org/10.1145/2488608.2488657.
  32. Silvio Micali, Michael Rabin, and Salil Vadhan. Verifiable random functions. In 40th annual symposium on foundations of computer science (cat. No. 99CB37039), pages 120-130. IEEE, 1999. Google Scholar
  33. Achour Mostéfaoui, Hamouma Moumen, and Michel Raynal. Signature-free asynchronous binary byzantine consensus with t < n/3, o(n2) messages, and o(1) expected time. J. ACM, 62(4), September 2015. URL: https://doi.org/10.1145/2785953.
  34. Achour Mostefaoui, Matthieu Perrin, and Michel Raynal. A new insight into local coin-based randomized consensus. In 2019 IEEE 24th Pacific Rim International Symposium on Dependable Computing (PRDC), pages 207-20709. IEEE, 2019. Google Scholar
  35. Achour Mostefaoui and Michel Raynal. Leader-based consensus. Parallel Processing Letters, 11(01):95-107, 2001. Google Scholar
  36. Andre Neubauer, Jurgen Freudenberger, and Volker Kuhn. Coding theory: algorithms, architectures and applications. John Wiley & Sons, 2007. Google Scholar
  37. Michael Rabin. Randomized Byzantine generals. In Proceedings of the 24th Symposium on Foundations of Computer Science, pages 403-409. IEEE Computer Society Press, November 1983. Google Scholar
  38. Adi Shamir. How to share a secret. Communications of the ACM, 22(11):612-613, 1979. Google Scholar
  39. Gilad Stern and Ittai Abraham. Living with asynchrony: the gather protocol. URL: https://decentralizedthoughts.github.io/2021-03-26-living-with-asynchrony-the-gather-protocol, 2021. Accessed: 2022-02-12.
  40. Ewa Syta, Philipp Jovanovic, Eleftherios Kokoris Kogias, Nicolas Gailly, Linus Gasser, Ismail Khoffi, Michael J Fischer, and Bryan Ford. Scalable bias-resistant distributed randomness. In 2017 IEEE Symposium on Security and Privacy (SP), pages 444-460. Ieee, 2017. Google Scholar
Questions / Remarks / Feedback

Feedback for Dagstuhl Publishing

Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail