Atomic Appends in Asynchronous Byzantine Distributed Ledgers
MetadatosMostrar el registro completo del ítem
A Distributed Ledger Object (DLO) is a concurrent object that maintains a totally ordered sequence of records. In this work we formalize a linearizable Byzantine-tolerant Distributed Ledger Object (BDLO), which is a linearizable DLO where clients and servers processes may deviate arbitrarily from their intended behavior (i.e. they may be Byzantine). The proposed formal definition is accompanied by algorithms that implement BDLOs on top of an underlying Byzantine Atomic Broadcast service. Then we develop a suite of algorithms, based on the previous BDLO implementations, that solve the Atomic Appends problem in the presence of asynchrony, Byzantine clients and Byzantine servers. This problem occurs when clients have a composite record (set of basic records) to append to different BDLOs, in such a way that either each basic record is appended to its BDLO (and this must occur in good circumstances), or no basic record is appended. Distributed algorithms are presented, which solve the Atomic Appends problem when the clients (involved in the Atomic Appends) and the servers (which maintain the BDLOs) may be Byzantine. Finally we provide proof of concept implementations and an experimental evaluation of the presented algorithms.