国家重点研发计划(2019YFB1703601); 国家自然科学基金联合基金重点项目(U2001204); 国家自然科学基金面上项目(6227071709); 天津市杰出青年基金(20JCJQJC00250); 之江实验室开放课题(2021KF0AB02)
委员会共识和混合共识通过选举委员会来代替全网节点完成区块验证, 可有效加快共识速度, 提高吞吐量, 但恶意攻击和收买易导致委员会发生腐败问题, 严重时将影响共识结果甚至造成系统瘫痪. 现有工作虽引入信誉机制降低委员会节点腐败的可能性, 但开销大、可信度低且无法降低腐败问题对系统的影响. 提出一种带有预验证机制的区块链动态共识算法(DBCP), 通过预验证机制在较小开销的前提下对委员会的进行可靠的信誉评估, 及时淘汰委员会中的恶意节点. 若腐败问题已影响到共识结果, DBCP会通过动态共识将区块验证权转移到全网节点, 并淘汰给出错误意见的委员会节点, 避免系统瘫痪. 若委员会通过迭代达到高可信状态, DBCP会将区块验证权交由委员会, 全网节点将认同委员会的共识结果并不再对区块进行验证, 进而加快共识速度. 经实验验证, DBCP的吞吐量较比特币提升两个数量级且与Byzcoin相近, 可在一个出块周期内快速应对委员会腐败问题, 安全性优于Byzcoin.
The committee consensus and hybrid consensus elect the committee to replace the whole nodes for block validation, which can effectively speed up consensus and improve throughput. However, malicious attacks and bribes can easily lead to committee corruption, affect consensus results, and even cause system paralysis. Although the existing work proposes the reputation mechanism to reduce the possibility of committee corruption, it has high overhead and poor reliability and cannot reduce the impact of corruption on the system. Therefore, this study proposes a dynamic blockchain consensus with pre-validation (DBCP). DBCP realizes reliable reputation evaluation of the committee through pre-validation with little overhead, which can eliminate malicious nodes from the committee in time. If serious corruption has undermined the consensus result, DBCP will transfer the authority of block validation to the whole nodes through dynamic consensus and eliminate the committee nodes that give wrong suggestions to avoid system paralysis. When the committee iterates to the high-credibility state, DBCP will hand over the authority of block validation to the committee, and the whole nodes will accept the consensus result from the committee without verifying the block to speed up the consensus. The experimental results show that the throughput of DBCP is two orders of magnitude higher than that of Bitcoin and similar to that of Byzcoin. In addition, DBCP can quickly deal with committee corruption within a block cycle, demonstrating better security than Byzcoin.