This paper revisits the ubiquitous problem of achieving state machine replication in blockchains based on repeated consensus, like Tendermint. To achieve state machine replication in blockchains built on top of consensus, one needs to guarantee fairness of user transactions. A huge body of work has been carried out on the relation between state machine replication and consensus in the past years, in a variety of system models and with respect to varied problem specifications. We systematize this work by proposing novel and rigorous abstractions for state machine replication and repeated consensus in a system model that accounts for realistic blockchains in which blocks may contain several transactions issued by one or more users, and where validity and order of transactions within a block is determined by an external application-dependent function that can capture various approaches for order-fairness in the literature. Based on these abstractions, we propose a reduction from state machine replication to repeated consensus, such that user fairness is achieved using the consensus module as a black box. This approach allows to achieve fairness as an add-on on top of preexisting consensus modules in blockchains based on repeated consensus.
翻译:本文回顾了在反复协商一致的基础上实现国家机器在块链中复制的无处不在的问题,比如Tendermint。 为了在协商一致的基础上在块链中实现国家机器复制,人们需要保证用户交易的公平性。 在过去几年中,国家机器复制和共识之间的关系方面,在各种系统模型中,以及在各种问题规格方面,已经做了大量工作。我们提出了用于国家机器复制的新颖和严格的抽象概念,并在一个系统模型中反复提出共识,从而将这项工作系统化。 这个模型考虑到现实的块链可能包含一个或一个以上的用户所发行的若干交易,而块块内交易的有效性和顺序是由外部应用功能决定的,这种功能能够捕捉到文献中各种秩序公正的方法。基于这些抽象观点,我们建议减少国家机器复制到重复的共识,从而利用协商一致模块作为黑盒实现用户的公平性。 这种方法可以实现公平性,在块链中基于反复协商一致的预先存在的共识模块之上添加公平性。