摘要: |
区块链共识算法保证了区块链中的区块按时间戳有序生成,算法优劣直接影响区块链系统性能。PoS共识算法是一种区块链公有链采用的主流共识算法,但生成区块的时间具有随机性,有些情况下区块间隔时间过长,不能满足商业应用场景需要;针对PoS共识算法生成区块的速度存在的性能局限,改进设计的Silkworm算法,通过智能合约对最快生成区块时间和最慢生成区块时间进行定义,结合Raft算法进行主节点选举;在有交易的情况下,当PoS共识算法未在定义的最快时间内生成区块时,Silkworm算法确保由主节点自动快速生成区块;在无交易情况下,当PoS共识算法未在定义的最慢时间内生成区块时,Silkworm算法也由主节点生成区块。而当主节点关闭或出故障时,PoS共识算法仍然生效正常生成区块。通过实验验证:Silkworm算法能较大提升基于PoS共识算法的区块链的性能,保证了区块链的安全性和健壮性,更能满足商业应用场景的需要。 |
关键词: 区块链 共识算法 PoS PoW Raft |
DOI: |
分类号: |
基金项目: |
|
An Improvement on Blockchain-Based PoS Consensus Algorithm |
ZHONG Zeng-sheng1,2
|
1.School of Computer Science, Central South University, Changsha 410083,China;2.Admission Office, Chongqing Technology and Business University, Chongqing 400067,China
|
Abstract: |
While ensuring that blocks in the blockchain are generated in an orderly manner according to the timestamp, Blockchain consensus algorithm has a direct effect on the performance of the blockchain system. PoS consensus algorithm is a mainstream one adopted in the public chain of blockchain, blocks are generated randomly and in some cases the time interval between blocks is too long, making it difficult to meet the needs of commercial scenarios. To address performance limitations of PoS consensus algorithm, we design a Silkworm algorithm, which defines the fastest and slowest time for the generation of blocks through smart contract, and which selects the master node by combining Raft algorithm. When there are transactions, if PoS consensus algorithm does not generate blocks within the defined fastest time, the Silkworm algorithm ensures that blocks are automatically generated by the master node. In the case of no transactions, when the PoS consensus algorithm does not generate blocks within the defined slowest time, the Silkworm algorithm also generates blocks through the master node. It still generates blocks normally when the master node shuts down or fails. As verified in experiment, Silkworm algorithm can greatly improve the performance of blockchain based on PoS consensus algorithm, ensure the security and robustness of blockchain, and better meet the needs of commercial application scenarios. |
Key words: blockchain consensus algorithm PoS PoW Raft |