Byzantine-Tolerant Distributed Grow-Only Sets: Specification and Applications

Authors Vicent Cholvi, Antonio Fernández Anta, Chryssis Georgiou, Nicolas Nicolaou, Michel Raynal, Antonio Russo



PDF
Thumbnail PDF

File

OASIcs.FAB.2021.2.pdf
  • Filesize: 0.66 MB
  • 19 pages

Document Identifiers

Author Details

Vicent Cholvi
  • Universitat Jaume I, Castelló, Spain
Antonio Fernández Anta
  • IMDEA Networks Institute, Madrid, Spain
Chryssis Georgiou
  • University of Cyprus, Nicosia, Cyprus
Nicolas Nicolaou
  • Algolysis Ltd, Lemesos, Cyprus
Michel Raynal
  • IRISA, Rennes, France
  • Polytechnic University of Hong Kong, Hong Kong
Antonio Russo
  • IMDEA Networks Institute, Madrid, Spain

Cite As Get BibTex

Vicent Cholvi, Antonio Fernández Anta, Chryssis Georgiou, Nicolas Nicolaou, Michel Raynal, and Antonio Russo. Byzantine-Tolerant Distributed Grow-Only Sets: Specification and Applications. In 4th International Symposium on Foundations and Applications of Blockchain 2021 (FAB 2021). Open Access Series in Informatics (OASIcs), Volume 92, pp. 2:1-2:19, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2021) https://doi.org/10.4230/OASIcs.FAB.2021.2

Abstract

In order to formalize Distributed Ledger Technologies and their interconnections, a recent line of research work has formulated the notion of Distributed Ledger Object (DLO), which is a concurrent object that maintains a totally ordered sequence of records, abstracting blockchains and distributed ledgers. Through DLO, the Atomic Appends problem, intended as the need of a primitive able to append multiple records to distinct ledgers in an atomic way, is studied as a basic interconnection problem among ledgers.
In this work, we propose the Distributed Grow-only Set object (DSO), which instead of maintaining a sequence of records, as in a DLO, maintains a set of records in an immutable way: only Add and Get operations are provided. This object is inspired by the Grow-only Set (G-Set) data type which is part of the Conflict-free Replicated Data Types. We formally specify the object and we provide a consensus-free Byzantine-tolerant implementation that guarantees eventual consistency. We then use our Byzantine-tolerant DSO (BDSO) implementation to provide consensus-free algorithmic solutions to the Atomic Appends and Atomic Adds (the analogous problem of atomic appends applied on G-Sets) problems, as well as to construct consensus-free Single-Writer BDLOs. We believe that the BDSO has applications beyond the above-mentioned problems.

Subject Classification

ACM Subject Classification
  • Theory of computation → Distributed algorithms
Keywords
  • Grow-only Sets
  • Distributed Ledgers
  • Blockchains
  • Atomic appends

Metrics

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

References

  1. Emmanuelle Anceaume, Antonella Del Pozzo, Romaric Ludinard, Maria Potop-Butucaru, and Sara Tucci Piergiovanni. Blockchain abstract data type. In 31st ACM on Symposium on Parallelism in Algorithms and Architectures, SPAA 2019, Phoenix, AZ, USA, June 22-24, 2019, pages 349-358. ACM, 2019. URL: https://doi.org/10.1145/3323165.3323183.
  2. Alex Auvolat, Davide Frey, Michel Raynal, and François Taïani. Money transfer made simple: a specification, a generic algorithm, and its proof. Bull. EATCS, 132:23-43, 2020. URL: http://eatcs.org/beatcs/index.php/beatcs/article/view/629.
  3. Gabriel Bracha. Asynchronous byzantine agreement protocols. Inf. Comput., 75(2):130-143, 1987. Google Scholar
  4. Eric Brewer. Cap twelve years later: How the "rules" have changed. Computer, 45(2):23-29, 2012. Google Scholar
  5. Hua Chai and Wenbing Zhao. Byzantine fault tolerance for services with commutative operations. In IEEE International Conference on Services Computing, SCC 2014, Anchorage, AK, USA, June 27 - July 2, 2014, pages 219-226. IEEE Computer Society, 2014. URL: https://doi.org/10.1109/SCC.2014.37.
  6. V. Cholvi, A. Fernandez Anta, C. Georgiou, N. Nicolaou, and M. Raynal. Atomic appends in asynchronous byzantine distributed ledgers. In 2020 16th European Dependable Computing Conference (EDCC), pages 77-84, 2020. URL: https://doi.org/10.1109/EDCC51268.2020.00022.
  7. Paulo Coelho, Tarcisio Ceolin Junior, Alysson Bessani, Fernando Dotti, and Fernando Pedone. Byzantine fault-tolerant atomic multicast. In DSN 2018, pages 39-50. IEEE, 2018. Google Scholar
  8. F. Cristian, H. Aghili, R. Strong, and D. Dolev. Atomic broadcast: From simple message diffusion to byzantine agreement. Information and Computation, 118(1):158-179, 1995. Google Scholar
  9. Antonio Fernández Anta, Chryssis Georgiou, and Nicolas Nicolaou. Atomic appends: Selling cars and coordinating armies with multiple distributed ledgers. In International Conference on Blockchain Economics, Security and Protocols, Tokenomics 2019, Paris, France, pages 39-50, 2019. Google Scholar
  10. Antonio Fernández Anta, Kishori M. Konwar, Chryssis Georgiou, and Nicolas C. Nicolaou. Formalizing and implementing distributed ledger objects. SIGACT News, 49(2):58-76, 2018. Google Scholar
  11. Juan A. Garay, Aggelos Kiayias, and Nikos Leonardos. The bitcoin backbone protocol: Analysis and applications. In 34th Annual International Conference on the Theory and Applications of Cryptographic Techniques, EUROCRYPT 2015, Sofia, Bulgaria, April 26-30, 2015, Part II, pages 281-310, 2015. URL: https://doi.org/10.1007/978-3-662-46803-6_10.
  12. Rachid Guerraoui, Petr Kuznetsov, Matteo Monti, Matej Pavlovic, and Dragos-Adrian Seredinschi. The consensus number of a cryptocurrency. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC 2019, Toronto, ON, Canada, July 29 - August 2, 2019, pages 307-316. ACM, 2019. URL: https://doi.org/10.1145/3293611.3331589.
  13. Saurabh Gupta. A non-consensus based decentralized financial transaction processing model with support for efficient auditing. Arizona State University, 2016. Google Scholar
  14. Maurice Herlihy. Atomic cross-chain swaps. In Proceedings of the 2018 ACM Symposium on Principles of Distributed Computing, PODC 2018, Egham, United Kingdom, July 23-27, 2018, pages 245-254, 2018. URL: https://dl.acm.org/citation.cfm?id=3212736.
  15. Maurice P. Herlihy and Jeannette M. Wing. Linearizability: a correctness condition for concurrent objects. ACM Transactions on Programming Languages and Systems (TOPLAS), 12(3):463-492, 1990. Google Scholar
  16. T. Koens and E. Poll. Assessing interoperability solutions for distributed ledgers. Pervasive and Mobile Computing, 59:101079, 2019. URL: https://doi.org/10.1016/j.pmcj.2019.101079.
  17. Zarko Milosevic, Martin Hutle, and André Schiper. On the reduction of atomic broadcast to consensus with byzantine faults. In SRDS 2011, pages 235-244, 2011. Google Scholar
  18. Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system. https://bitcoin.org/bitcoin.pdf, 2008. [Online; accessed 22-February-2021].
  19. Michel Raynal. Concurrent Programming: Algorithms, Principles, and Foundations. Springer, 2013. Google Scholar
  20. Michel Raynal. Fault-Tolerant Message-Passing Distributed Systems - An Algorithmic Approach. Springer, 2018. URL: https://doi.org/10.1007/978-3-319-94141-7.
  21. Marc Shapiro, Nuno Preguiça, Carlos Baquero, and Marek Zawirski. Conflict-free replicated data types. In 13th International Symposium Stabilization, Safety, and Security of Distributed Systems, SSS 2011, Grenoble, France, pages 386-400. Springer, 2011. URL: https://doi.org/10.1007/978-3-642-24550-3_29.
  22. Werner Vogels. Eventually consistent. Commun. ACM, 52(1):40-44, 2009. URL: https://doi.org/10.1145/1435417.1435432.
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail