Asymmetric Distributed Trust (1906.09314v2)
Abstract: Quorum systems are a key abstraction in distributed fault-tolerant computing for capturing trust assumptions. They can be found at the core of many algorithms for implementing reliable broadcasts, shared memory, consensus and other problems. This paper introduces asymmetric Byzantine quorum systems that model subjective trust. Every process is free to choose which combinations of other processes it trusts and which ones it considers faulty. Asymmetric quorum systems strictly generalize standard Byzantine quorum systems, which have only one global trust assumption for all processes. This work also presents protocols that implement abstractions of shared memory, broadcast primitives, and a consensus protocol among processes prone to Byzantine faults and asymmetric trust. The model and protocols pave the way for realizing more elaborate algorithms with asymmetric trust.
- I. Abraham, N. Ben-David, and S. Yandamuri, “Efficient and adaptively secure asynchronous binary agreement via binding crusader agreement,” in PODC, pp. 381–391, ACM, 2022.
- I. Abraham, N. Ben-David, and S. Yandamuri, “Efficient and adaptively secure asynchronous binary agreement via binding crusader agreement.” Cryptology ePrint Archive, Paper 2022/711, 2022. https://eprint.iacr.org/2022/711.
- I. Abraham, G. V. Chockler, I. Keidar, and D. Malkhi, “Byzantine disk paxos: optimal resilience with byzantine shared memory,” Distributed Comput., vol. 18, no. 5, pp. 387–408, 2006.
- O. Alpos, C. Cachin, and L. Zanolini, “How to trust strangers: Composition of byzantine quorum systems,” in SRDS, pp. 120–131, IEEE, 2021.
- I. Amores-Sesar, C. Cachin, and J. Micic, “Security analysis of ripple consensus,” in OPODIS, vol. 184 of LIPIcs, pp. 10:1–10:16, Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2020.
- E. Androulaki, A. Barger, V. Bortnikov, C. Cachin, K. Christidis, A. D. Caro, D. Enyeart, C. Ferris, G. Laventman, Y. Manevich, S. Muralidharan, C. Murthy, B. Nguyen, M. Sethi, G. Singh, K. Smith, A. Sorniotti, C. Stathakopoulou, M. Vukolic, S. W. Cocco, and J. Yellick, “Hyperledger fabric: a distributed operating system for permissioned blockchains,” in EuroSys, pp. 30:1–30:15, ACM, 2018.
- F. Armknecht, G. O. Karame, A. Mandal, F. Youssef, and E. Zenner, “Ripple: Overview and outlook,” in TRUST, vol. 9229 of Lecture Notes in Computer Science, pp. 163–180, Springer, 2015.
- J. C. Benaloh and J. Leichter, “Generalized secret sharing and monotone functions,” in CRYPTO, vol. 403 of Lecture Notes in Computer Science, pp. 27–35, Springer, 1988.
- G. Bracha, “Asynchronous byzantine agreement protocols,” Inf. Comput., vol. 75, no. 2, pp. 130–143, 1987.
- E. Buchman, J. Kwon, and Z. Milosevic, “The latest gossip on BFT consensus,” CoRR, vol. abs/1807.04938, 2018.
- Springer, 2011.
- C. Cachin, K. Kursawe, and V. Shoup, “Random oracles in constantinople: Practical asynchronous byzantine agreement using cryptography,” J. Cryptol., vol. 18, no. 3, pp. 219–246, 2005.
- C. Cachin and B. Tackmann, “Asymmetric distributed trust,” in OPODIS, vol. 153 of LIPIcs, pp. 7:1–7:16, Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2019.
- C. Cachin and M. Vukolic, “Blockchain consensus protocols in the wild (keynote talk),” in DISC, vol. 91 of LIPIcs, pp. 1:1–1:16, Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2017.
- C. Cachin and L. Zanolini, “Asymmetric asynchronous byzantine consensus,” in DPM/CBT@ESORICS, vol. 13140 of Lecture Notes in Computer Science, pp. 192–207, Springer, 2021.
- C. Cachin and L. Zanolini, “Brief announcement: Revisiting signature-free asynchronous byzantine consensus,” in DISC, vol. 209 of LIPIcs, pp. 51:1–51:4, Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2021.
- R. Canetti and T. Rabin, “Fast asynchronous byzantine agreement with optimal resilience,” in STOC, pp. 42–51, ACM, 1993.
- M. Castro and B. Liskov, “Practical byzantine fault tolerance and proactive recovery,” ACM Trans. Comput. Syst., vol. 20, no. 4, pp. 398–461, 2002.
- Springer, 2010.
- B. Chase and E. MacBrough, “Analysis of the XRP ledger consensus protocol,” CoRR, vol. abs/1802.07242, 2018.
- T. Crain, V. Gramoli, M. Larrea, and M. Raynal, “DBFT: efficient leaderless byzantine consensus and its application to blockchains,” in NCA, pp. 1–8, IEEE, 2018.
- I. Damgård, Y. Desmedt, M. Fitzi, and J. B. Nielsen, “Secure protocols with asymmetric trust,” in ASIACRYPT, vol. 4833 of Lecture Notes in Computer Science, pp. 357–375, Springer, 2007.
- H. Garcia-Molina and D. Barbará, “How to assign votes in a distributed system,” J. ACM, vol. 32, no. 4, pp. 841–860, 1985.
- Á. García-Pérez and A. Gotsman, “Federated byzantine quorum systems,” in OPODIS, vol. 125 of LIPIcs, pp. 17:1–17:16, Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2018.
- D. K. Gifford, “Weighted voting for replicated data,” in SOSP, pp. 150–162, ACM, 1979.
- V. Hadzilacos and S. Toueg, “Fault-tolerant broadcasts and related problems,” in Distributed Systems (2nd Ed.) (S. J. Mullender, ed.), pp. 97–145, ACM Press, 1993.
- M. Hirt and U. M. Maurer, “Player simulation and general adversary structures in perfect multiparty computation,” J. Cryptol., vol. 13, no. 1, pp. 31–60, 2000.
- F. P. Junqueira and K. Marzullo, “Synchronous consensus for dependent process failure,” in ICDCS, pp. 274–283, IEEE Computer Society, 2003.
- F. P. Junqueira, K. Marzullo, M. Herlihy, and L. D. Penso, “Threshold protocols in survivor set systems,” Distributed Comput., vol. 23, no. 2, pp. 135–149, 2010.
- L. Lamport, “On interprocess communication. part I: basic formalism,” Distributed Comput., vol. 1, no. 2, pp. 77–85, 1986.
- M. Lokhava, G. Losa, D. Mazières, G. Hoare, N. Barry, E. Gafni, J. Jove, R. Malinowsky, and J. McCaleb, “Fast and secure global payments with stellar,” in SOSP, pp. 80–96, ACM, 2019.
- G. Losa, E. Gafni, and D. Mazières, “Stellar consensus by instantiation,” in DISC, vol. 146 of LIPIcs, pp. 27:1–27:15, Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2019.
- N. A. Lynch, Distributed Algorithms. San Francisco: Morgan Kaufmann, 1996.
- D. Malkhi, K. Nayak, and L. Ren, “Flexible byzantine fault tolerance,” in CCS, pp. 1041–1053, ACM, 2019.
- D. Malkhi and M. K. Reiter, “Byzantine quorum systems,” Distributed Comput., vol. 11, no. 4, pp. 203–213, 1998.
- D. Mazières, “The Stellar consensus protocol: A federated model for Internet-level consensus.” Stellar, available online, https://www.stellar.org/papers/stellar-consensus-protocol.pdf, 2016.
- A. Miller, Y. Xia, K. Croman, E. Shi, and D. Song, “The honey badger of BFT protocols,” in CCS, pp. 31–42, ACM, 2016.
- A. Mostéfaoui, M. Hamouma, and M. Raynal, “Signature-free asynchronous byzantine consensus with t 2<n/3 and o(n22{}^{\mbox{2}}start_FLOATSUPERSCRIPT 2 end_FLOATSUPERSCRIPT) messages,” in PODC, pp. 2–9, ACM, 2014.
- A. Mostéfaoui, H. Moumen, and M. Raynal, “Signature-free asynchronous binary byzantine consensus with t < n/3, o(n2) messages, and O(1) expected time,” J. ACM, vol. 62, no. 4, pp. 31:1–31:21, 2015.
- M. Naor and A. Wool, “The load, capacity, and availability of quorum systems,” SIAM J. Comput., vol. 27, no. 2, pp. 423–447, 1998.
- A. Patra, A. Choudhury, and C. P. Rangan, “Asynchronous byzantine agreement with optimal resilience,” Distributed Comput., vol. 27, no. 2, pp. 111–146, 2014.
- M. C. Pease, R. E. Shostak, and L. Lamport, “Reaching agreement in the presence of faults,” J. ACM, vol. 27, no. 2, pp. 228–234, 1980.
- M. O. Rabin, “Randomized byzantine generals,” in FOCS, pp. 403–409, IEEE Computer Society, 1983.
- Ripple, “Technical FAQ.” Available online from the Internet Archive, http://web.archive.org/web/20200422132924/https://xrpl.org/technical-faq.html, 2020.
- D. Schwartz, N. Youngs, and A. Britto, “The Ripple protocol consensus algorithm.” Ripple Labs, available online, https://ripple.com/files/ripple_consensus_whitepaper.pdf, 2014.
- T. K. Srikanth and S. Toueg, “Simulating authenticated broadcasts to derive simple fault-tolerant algorithms,” Distributed Comput., vol. 2, no. 2, pp. 80–94, 1987.
- Stellar, “On worldwide consensus.” Available online, https://medium.com/stellar-development-foundation/on-worldwide-consensus-359e9eb3e949, 2015.
- P. Tholoniat and V. Gramoli, “Formal verification of blockchain byzantine fault tolerance,” in 6th Workshop on Formal Reasoning in Distributed Algorithms (FRIDA’19), 2019.
- XRP Ledger, “FAQ: Answers to your XRPL questions.” Available online, https://xrpl.org/about/faq/, 2023.
- M. Yin, D. Malkhi, M. K. Reiter, G. Golan-Gueta, and I. Abraham, “Hotstuff: BFT consensus with linearity and responsiveness,” in PODC, pp. 347–356, ACM, 2019.