<p>In order to formalize Distributed Ledger Technologies and their interconnections, recent research has introduced the concept of a Distributed Ledger Object (denoted <InlineEquation ID="IEq1"> <EquationSource Format="TEX">\(\mathcal {O}^L\)</EquationSource> </InlineEquation>), a concurrent abstraction that maintains a totally ordered sequence of records, capturing the essence of blockchains and distributed ledgers. In this work, we introduce the <i>Distributed Grow-only Set object</i> (denoted <InlineEquation ID="IEq2"> <EquationSource Format="TEX">\(\mathcal {O}^{GS}\)</EquationSource> </InlineEquation>), a novel abstraction that, unlike the <InlineEquation ID="IEq3"> <EquationSource Format="TEX">\(\mathcal {O}^L\)</EquationSource> </InlineEquation>, maintains an immutable set of records by supporting only <span>Add</span> and <span>Get</span> operations. This object is inspired by the Grow-only Set (G-Set) a well-known Conflict-free Replicated Data Type (CRDT). We formally define the <InlineEquation ID="IEq4"> <EquationSource Format="TEX">\(\mathcal {O}^{GS}\)</EquationSource> </InlineEquation> and present a Byzantine-tolerant, consensus-free implementation (denoted as <InlineEquation ID="IEq5"> <EquationSource Format="TEX">\(\mathcal {O}^{GS}_B\)</EquationSource> </InlineEquation>) that ensures eventual consistency. Building on this implementation, we propose consensus-free algorithmic solutions to two fundamental problems: the Atomic Appends problem, which concerns atomically appending multiple records to distinct ledgers, and the Atomic Adds problem, its counterpart in the context of G-Sets. Additionally, we show how the <InlineEquation ID="IEq6"> <EquationSource Format="TEX">\(\mathcal {O}^{GS}_B\)</EquationSource> </InlineEquation> can be leveraged to construct a consensus-free, Single-Writer Byzantine-tolerant <InlineEquation ID="IEq7"> <EquationSource Format="TEX">\(\mathcal {O}^L\)</EquationSource> </InlineEquation>. We argue that the applicability of the <InlineEquation ID="IEq8"> <EquationSource Format="TEX">\(\mathcal {O}^{GS}_B\)</EquationSource> </InlineEquation> extends well beyond these specific use cases, offering a lightweight and efficient foundation for a variety of distributed applications.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Byzantine-tolerant distributed grow-only sets: specification and applications

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

摘要

In order to formalize Distributed Ledger Technologies and their interconnections, recent research has introduced the concept of a Distributed Ledger Object (denoted \(\mathcal {O}^L\) ), a concurrent abstraction that maintains a totally ordered sequence of records, capturing the essence of blockchains and distributed ledgers. In this work, we introduce the Distributed Grow-only Set object (denoted \(\mathcal {O}^{GS}\) ), a novel abstraction that, unlike the \(\mathcal {O}^L\) , maintains an immutable set of records by supporting only Add and Get operations. This object is inspired by the Grow-only Set (G-Set) a well-known Conflict-free Replicated Data Type (CRDT). We formally define the \(\mathcal {O}^{GS}\) and present a Byzantine-tolerant, consensus-free implementation (denoted as \(\mathcal {O}^{GS}_B\) ) that ensures eventual consistency. Building on this implementation, we propose consensus-free algorithmic solutions to two fundamental problems: the Atomic Appends problem, which concerns atomically appending multiple records to distinct ledgers, and the Atomic Adds problem, its counterpart in the context of G-Sets. Additionally, we show how the \(\mathcal {O}^{GS}_B\) can be leveraged to construct a consensus-free, Single-Writer Byzantine-tolerant \(\mathcal {O}^L\) . We argue that the applicability of the \(\mathcal {O}^{GS}_B\) extends well beyond these specific use cases, offering a lightweight and efficient foundation for a variety of distributed applications.