{"title":"拜占庭状态机复制的有效性和延迟","authors":"Manuel Bravo, Gregory Chockler, Alexey Gotsman","doi":"10.1007/s00446-024-00466-4","DOIUrl":null,"url":null,"abstract":"<p>Byzantine state-machine replication (SMR) ensures the consistency of replicated state in the presence of malicious replicas and lies at the heart of the modern blockchain technology. Byzantine SMR protocols often guarantee safety under all circumstances and liveness only under synchrony. However, guaranteeing liveness even under this assumption is nontrivial. So far we have lacked systematic ways of incorporating liveness mechanisms into Byzantine SMR protocols, which often led to subtle bugs. To close this gap, we introduce a modular framework to facilitate the design of provably live and efficient Byzantine SMR protocols. Our framework relies on a <i>view</i> abstraction generated by a special <i>SMR synchronizer</i> primitive to drive the agreement on command ordering. We present a simple formal specification of an SMR synchronizer and its bounded-space implementation under partial synchrony. We also apply our specification to prove liveness and analyze the latency of three Byzantine SMR protocols via a uniform methodology. In particular, one of these results yields what we believe is the first rigorous liveness proof for the algorithmic core of the seminal PBFT protocol.\n</p>","PeriodicalId":50569,"journal":{"name":"Distributed Computing","volume":"17 1","pages":""},"PeriodicalIF":1.3000,"publicationDate":"2024-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Liveness and latency of Byzantine state-machine replication\",\"authors\":\"Manuel Bravo, Gregory Chockler, Alexey Gotsman\",\"doi\":\"10.1007/s00446-024-00466-4\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>Byzantine state-machine replication (SMR) ensures the consistency of replicated state in the presence of malicious replicas and lies at the heart of the modern blockchain technology. Byzantine SMR protocols often guarantee safety under all circumstances and liveness only under synchrony. However, guaranteeing liveness even under this assumption is nontrivial. So far we have lacked systematic ways of incorporating liveness mechanisms into Byzantine SMR protocols, which often led to subtle bugs. To close this gap, we introduce a modular framework to facilitate the design of provably live and efficient Byzantine SMR protocols. Our framework relies on a <i>view</i> abstraction generated by a special <i>SMR synchronizer</i> primitive to drive the agreement on command ordering. We present a simple formal specification of an SMR synchronizer and its bounded-space implementation under partial synchrony. We also apply our specification to prove liveness and analyze the latency of three Byzantine SMR protocols via a uniform methodology. In particular, one of these results yields what we believe is the first rigorous liveness proof for the algorithmic core of the seminal PBFT protocol.\\n</p>\",\"PeriodicalId\":50569,\"journal\":{\"name\":\"Distributed Computing\",\"volume\":\"17 1\",\"pages\":\"\"},\"PeriodicalIF\":1.3000,\"publicationDate\":\"2024-05-03\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Distributed Computing\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://doi.org/10.1007/s00446-024-00466-4\",\"RegionNum\":4,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q3\",\"JCRName\":\"COMPUTER SCIENCE, THEORY & METHODS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Distributed Computing","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1007/s00446-024-00466-4","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
Liveness and latency of Byzantine state-machine replication
Byzantine state-machine replication (SMR) ensures the consistency of replicated state in the presence of malicious replicas and lies at the heart of the modern blockchain technology. Byzantine SMR protocols often guarantee safety under all circumstances and liveness only under synchrony. However, guaranteeing liveness even under this assumption is nontrivial. So far we have lacked systematic ways of incorporating liveness mechanisms into Byzantine SMR protocols, which often led to subtle bugs. To close this gap, we introduce a modular framework to facilitate the design of provably live and efficient Byzantine SMR protocols. Our framework relies on a view abstraction generated by a special SMR synchronizer primitive to drive the agreement on command ordering. We present a simple formal specification of an SMR synchronizer and its bounded-space implementation under partial synchrony. We also apply our specification to prove liveness and analyze the latency of three Byzantine SMR protocols via a uniform methodology. In particular, one of these results yields what we believe is the first rigorous liveness proof for the algorithmic core of the seminal PBFT protocol.
期刊介绍:
The international journal Distributed Computing provides a forum for original and significant contributions to the theory, design, specification and implementation of distributed systems.
Topics covered by the journal include but are not limited to:
design and analysis of distributed algorithms;
multiprocessor and multi-core architectures and algorithms;
synchronization protocols and concurrent programming;
distributed operating systems and middleware;
fault-tolerance, reliability and availability;
architectures and protocols for communication networks and peer-to-peer systems;
security in distributed computing, cryptographic protocols;
mobile, sensor, and ad hoc networks;
internet applications;
concurrency theory;
specification, semantics, verification, and testing of distributed systems.
In general, only original papers will be considered. By virtue of submitting a manuscript to the journal, the authors attest that it has not been published or submitted simultaneously for publication elsewhere. However, papers previously presented in conference proceedings may be submitted in enhanced form. If a paper has appeared previously, in any form, the authors must clearly indicate this and provide an account of the differences between the previously appeared form and the submission.