Computer Science > Distributed, Parallel, and Cluster Computing
[Submitted on 22 Oct 2020 (v1), revised 28 Oct 2020 (this version, v3), latest version 3 Nov 2022 (v10)]
Title:Fast-HotStuff: A Fast and Resilient HotStuff Protocol
View PDFAbstract:The HotStuff protocol is a recent breakthrough inByzantine Fault Tolerant (BFT) consensus that enjoys responsiveness and linear view change. It uses a clever three-chain commit rule to achieve responsiveness while the vast majority of BFT protocols are using the standard two-chain commit rule. This brings us to a fundamental question: Is a three-chain commit rule really necessary to achieve responsiveness? In this paper, we answer this question by designing a two-chain variant ofHotStuff called Fast-HotStuff that still enjoys responsiveness with simplified view change. Compared to the three-chain HotStuff, Fast-HotStuff has lower latency and is more resilient against forking attacks. Moreover, Fast-HotStuff can be combined with Proof-of-Stake (PoS) while still maintaining safety and liveness. In sharp contrast, HotStuff and its variant LibraBFT (which plans to use PoS) fail to have this property as malicious nodes can takeover the network. In order to achieve all of these advantages, Fast-HotStuff adds a small amount of overhead information during the block proposal phase, which is only needed if the previous primary node fails. The correctness of Fast-HotStuff is established in terms of safety and liveness. The effectiveness of Fast-HotStuff is demonstrated through experimental results.
Submission history
From: Mohammad Jalalzai [view email][v1] Thu, 22 Oct 2020 05:30:39 UTC (623 KB)
[v2] Sat, 24 Oct 2020 00:00:29 UTC (626 KB)
[v3] Wed, 28 Oct 2020 16:34:46 UTC (626 KB)
[v4] Mon, 16 Nov 2020 20:56:33 UTC (592 KB)
[v5] Wed, 23 Dec 2020 22:34:28 UTC (1,008 KB)
[v6] Fri, 25 Dec 2020 06:25:17 UTC (744 KB)
[v7] Thu, 11 Feb 2021 16:36:53 UTC (769 KB)
[v8] Tue, 23 Mar 2021 06:55:39 UTC (1,084 KB)
[v9] Mon, 4 Oct 2021 03:25:29 UTC (1,017 KB)
[v10] Thu, 3 Nov 2022 21:55:25 UTC (1,075 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
Connected Papers (What is Connected Papers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.