摘要： Fast-HotStuff区块链共识算法采用两轮投票的共识过程，当主节点在第一轮投票后发生错误时，吞吐量将大幅降低，为解决该问题，提出一种改进的Fast-HotStuff算法。该算法引入一个新的区块扩展方式，在某一区块的共识过程中，当主节点在第一轮投票发生错误而导致视图更换时，副本节点将其投票消息传递至新的视图，新视图中的主节点收到足够多的投票消息，根据该区块进行扩展生成新区块并发起共识，以使更多区块上链并提高吞吐量。实验结果表明，当主节点在第一轮投票后发生错误时，HotStuff与Fast-HotStuff算法在节点数量为19时吞吐量降至3 500TPS以下，节点数量为61时降至1 500TPS以下，而改进算法的吞吐量在节点数量为19时高于6 500TPS，在节点数量为61时高于2 500TPS。
Abstract: The consensus process of the Fast-HotStuff blockchain consensus algorithm consists of two rounds of voting. When the leader node fails after the first round of voting, the throughput will be greatly reduced. To solve this problem, an improved Fast-HotStuff consensus algorithm is proposed, which introduces a new block generation strategy. In the consensus process of a block, if the leader node fails after the first round of voting and causes the view change, the replica node delivers its voting message to the new view. If the leader node in the new view receives enough voting messages, it expands the block of the previous view to generate a new block and initiates consensus, making more blocks added to the blockchain to improve the throughput. The experimental results show that when the leader node fails after the first round of voting, the throughput of HotStuff and Fast-HotStuff is reduced to less than 3 500TPS when the number of nodes is 19, and to less than 1 500TPS when the number of nodes is 61; while the throughput of the improved algorithm is more than 6 500TPS when the number of nodes is 19, and more than 2 500TPS when the number of nodes is 61.