沈 瑞,李玲娟
(南京邮电大学 计算机学院,江苏 南京 210023)
比特币诞生于2008年,由一个化名为中本聪的学者在论文中首次提出[1],其背后的区块链技术得到越来越多的重视与发展。区块链是一种计算机技术在价值互联网时代的创新应用模式,是数据库、密码学、网络技术等多种技术整合集成的结果,具有去中心化、去信任化、集体维护、不可篡改等特点[2]。从数据的角度,可以把区块链看成由一个个区块组成,区块记录着经过验证的、区块创建过程中发生的所有交易记录。近年来,区块链技术的价值不断被挖掘,在金融、身份验证、社交通讯等多个领域都有着广泛的应用,并得到了许多国家政府的高度重视。
共识算法是区块链技术的核心,用于解决在去中心化的分布式互连网络中,如何判断区块数据正确性和所有权,以使所有的节点达成共识的问题[3]。由于应用场景的不同,共识算法的侧重点也不同。公有链大部分采用PoW算法[4]、PoS算法[5]、DPoS算法[6]和它们的变形算法,而目前落地的实际应用大多数基于联盟链运行,其采用的共识算法主要是基于消息传递,主流算法有PBFT算法[7]、Paxos算法[8]和Raft算法[9]。
PBFT算法在区块链中得到广泛应用,但也存在一些不足,不能完全适应所有的应用场景。为了解决PBFT算法通信开销大、节点参与共识的积极性不够高等问题,该文提出一种基于积分制的改进的实用拜占庭算法(improved practical Byzantine algorithm based on point system,P-PBFT)。
按照应用场景和设计体系的不同,区块链可分为公有链、联盟链、私有链[10]。……