On the performance of Pipelined Hotstuff
This is a summary of this paper.
This paper developed multi-metric evaluation framework for Pipelined Hotstuff performance with respect to its growth rate, chain quality, and latency. Then, the paper compares the pipelined hotstuff performance with libraBFT performance.
The pipelined hotstuff and libraBFT algorithms are the same with some difference in LibraBFT. First, instead of sending vote of QCs back to the leader, nodes send their votes to the next round’s leader. Second, LibraBFT has a Nil block that uses when there is a timeout and nodes have not received a proposal for the round.
Chain growth rate: it corresponds to liveness in the context of blockchain and is measured in terms of rounds. It has the following formula.
Forking attack will override an honest proposed block at round i by an adversarial leader in round (i+1) or (i+2). From both Lemma 1 and theorem 1, we have the following result:
Chain quality defines as the fraction of honest blocks included in the main chain. has the following formula.
Adversary expected to produce 𝛂m adversarial blocks over m rounds. From theorem 2, chain quality under forking attack is
Hence, for instance, if 𝛂 = 1/3, then chain quality =8/17, and 2/3 without attacks.
Latency is measured in terms of rounds.
It has four states defined as follow: S0 is a state where previous round is a timeout. S1,2,3 are states where there exists i consecutive blocks that are not committed.
From theorem 3, where 𝛂 = 1/3, and β=2/3, the average latency for committing a block under delay attacks is 8.33, and without attack is 3 rounds. LibraBFT is 10.25 rounds caused by a vulnerable optimization that sending QCs to the next leader’s round.
This paper has two attacks strategies called Forking and delay. The aims for forking attack are to minimize the chain growth rate and chain quality. Delay attack aims to maximize the latency by delaying the commitment of honest blocks.
Forking is to create a sub-chain from the main chain and builds upon it instead of the main chain.
Delay attack is to break the three rules commitment and let leaders build a new three consecutive blocks again.
Broadcasting Qcs for all leaders. This has two benefits. 1) leaders are avoiding forking attacks by updating locked_round. 2) Broadcasting Qcs can fasten block commitments. Chain rate improves by 1.5X, quality by 1.2X, and latency is 5.63 rounds.