论文部分内容阅读
区块链是一种去中心化的分布式账本,是以比特币为代表的数字加密货币体系的核心支撑技术。由于区块链改变了传统支付方式中需要一个可信任的第三方机构的问题,引起了各行各业的广泛关注,在金融,公共事务管理,数字版权等领域都具有广泛的应用前景。在区块链中如何制定一套规则来使得各个节点之间达成统一是区块链的核心,而共识算法则承担着在各个节点之间达成统一这一个重要的职责,并且影响着系统的吞吐量,交易确认时延以及容错性。基于上述背景,本文提出了基于信用奖惩的VPBFT共识算法,并且对该算法通过实验进行了性能分析,本文的主要工作内容如下:(1)对经典的区块链共识算法,工作量证明算法(POW),权益证明算法(POS),股份授权算法(DPOS)进行研究,研究分析其基本原理,同时将它们进行对比分析,分析其优缺点。(2)针对经典区块链共识算法存在的吞吐量低,交易确认时延迟高的问题,在联盟链场景下,提出了一种基于信用奖惩的VPBFT共识算法。该算法将节点分为记账节点与普通节点,只有记账节点参与共识,减少了参与共识节点的数目。同时将节点分为不同的状态,根据节点的信用进行奖惩,更新节点的状态,实现了记账代表成员的更新以及节点的动态变化。其次,采用了基于监听的检查点协议以及混合群组拜占庭容错一致性协议,进一步减少了通信开销。在此基础上,设计并实现了VPBFT共识算法。(3)设计实验对VPBFT共识算法进行性能分析,从吞吐率,交易确认时延,容错性三个方面进行分析,并与经典共识算法进行比较分析。(4)将Radix-Merkle树替代Merkle树运用到区块链中,改变了Merkle树不能验证状态信息的弊端,同时由于Radix树的高检索效率,结合Merkle树特性,提高了检索效率。同时基于Radix-Merkle树设计了账户状态树,实现了账户查询功能,提高了交易的安全性。