本文是软件工程论文,本文针对联盟链的特点对区块链架构中的共识层和激励层进行了改进和设计。本文的工作总结如下:(1)对现有的共识算法和激励机制进行了梳理。根据共识依据的不同将区块链共识算法分为基于证明的共识算法和基于投票的共识算法。其中,公有链通常使用基于证明的共识算法以确保其完全去中心化的特性,但存在资源浪费、51%攻击和速度慢吞吐量小等问题;联盟链和私有链通常使用基于投票的共识算法以确保一定的共识速度,但网络规模扩展受限,对节点安全性具有极高的要求。根据通证在激励机制中关键作用的不同将激励机制分为基于金融型通证的激励机制和基于激励型通证的激励机制。其中,基于金融型通证的激励机制突出通证的融资功能,主要适用于完全去中心化且节点规模较大的公有链;基于激励型通证的激励机制完全摒弃了融资功能,着重突出通证的激励功能,主要适用于节点规模不太大的联盟链和私有链,用以减少交易摩擦,提高节点积极性。(2)首先描述了在中心化的电子商务应用中,传统的积分激励和星级评价方式存在激励规则不透明、积分流通具有局限性和评价信息易篡改等问题。然后提出采用基于联盟链的积分型通证代替传统的中心化积分,并描述了具体的发行和分配机制,设计了通证的使用规则。最后,通过联盟链开发平台HyperledgerFabric对该激励机制进行了智能合约的开发,并对实验结果进行了可行性和有效性分析。第五章,对本文的主要内容和研究成果进行了总结,分析了研究内容中存在的不足,并对未来仍需继续的研究工作进行了展望。
.....
第一章绪论
针对联盟链重要场景之一的电子商务中,传统的激励方法存在激励规则不透明、积分流通具有局限性和评价信息易篡改等问题,本文提出了一种基于积分型通证可累计评价的激励机制,用于对联盟链网络中节点的积极行为进行激励,以促进共识过程的持续和稳定运行。首先提出使用基于联盟链的积分型通证代替传统的中心化积分,用户使用一定数量的通证进行交易满意度量化,从而实现了通证在用户和商家之间的流通性。然后提出对用户的通证余量进行时间衰减的设计,旨在激励用户通过消费来获取通证的积极行为;通证的可累计特性旨在激励商家形成良好的竞争环境。本文一共有五章,具体内容安排如下:第一章,首先阐述了区块链共识算法和激励机制的研究背景和意义,然后介绍了国内外现有的共识算法和激励机制的研究现状,最后对本文的主要研究内容进行了具体的章节安排。第二章,首先介绍了区块链技术的原理和架构,然后对区块链的核心技术进行了具体说明,最后对现有的共识算法进行了整理,分析了不同共识算法的优缺点以及适用的区块链类型,对现有的激励机制进行了归纳,分析了代表不同权益内容的通证以及对应的适用场景。第三章,提出了一种基于信用模型的Raft共识算法CRaft。首先描述了为了提高联盟链性能而将私有链共识算法Raft改进后用于联盟链时存在的问题。然后针对联盟链网络中节点的特点提出了节点信用评价模型,用以解决联盟链网络中存在少量拜占庭节点的问题;同时提出了TNL机制,用以解决共识过程中非拜占庭节点间的通信问题。最后,对节点信用评价模型的准确率进行了验证,在不同节点规模上对CRaft和联盟链共识算法PBFT进行了比较,并对实验结果进行了分析。第四章,提出了一种基于积分型通证可累计评价的激励机制,用以对电子商务模式下联盟链网络中节点的积极行为进行激励。
.....
第二章区块链相关技术理论
2.1区块链技术架构
数据层作为区块链架构中的最底层定义了区块链系统的数据结构和数据模型。每个区块包括区块头和区块体两个部分,区块体中包含了由区块链系统产生的一系列交易数据,并以merkle根的形式保存在区块头中,与前一区块的哈希值、时间戳和版本号等组成一个完整的区块。图2.2表示的是比特币的区块结构,其区块头中还包含了难度目标、随机数Nonce等数据,以支持PoW共识机制中的挖矿运算。区块间采用链式结构进行连接,具体表现为每个区块的区块头中都包含了前一区块的哈希值,从而形成一条不可更改的完整区块数据链。链式结构带来的好处是能够顺藤摸瓜的定位到任意一条数据的位置,使得区块链具有溯源的功能。区块链系统可以采用基于交易的数据模型或基于账户的数据模型。基于交易的数据模型将表明交易来源的输入和表明交易去向的输出组合到一起,使得每笔交易可追溯[46]。基于账户的数据模型能够快速查询用户余额和业务状态数据。由于智能合约需要执行复杂的业务逻辑,因而更适合通过基于账户的数据模型进行构建。时间戳用于标记区块顺序。如果说数据层和网络层构成了区块链系统的物理实体,共识层和激励层维持了区块链系统的整体运行,那么合约层为区块链技术的实际落地提供了商业逻辑和策略规划的实现。尤其是智能合约的提出使得区块链步入了可编程阶段,不仅实现了去中心化的分布式存储,而且实现了去中心化的分布式计算,为区块链技术灵活应用于各类场景奠定了基础。智能合约的概念将在2.2.3节做具体介绍。
2.2区块链核心技术
非对称加密要求在加密和解密的过程中使用不同的密钥,且使用其中一个密钥加密的信息只能通过对应的另一个密钥进行解密。通过密钥生成算法生成公钥和私钥,公钥用于公开,但私钥必须自己保存。生成公钥的过程是不可逆的,即使知道公钥也无法反推出私钥,从而保证了交易的私密性。此外,区块链用户通过公钥实现了匿名,从而使得交易信息无法得到具体的对应。这种通过非对称加密进行隐私保护的方法将用户身份与具体的交易相分离,颠覆了传统的基于第三方的隐私保护模型。区块链中常用的加密算法有ElGamal、Rabin和椭圆曲线加密算法等等。数字签名的实现依赖于非对称加密,能够保证信息的真实性、完整性和不可抵赖性。数字签名的过程如图2.5。发送方使用签名算法将待签名消息M和私钥S作为输入,从而得到对该消息的数字签名sig。接收方使用签名验证算法将消息M和数字签名sig以及公钥P作为输入进行验证,从而判断该消息是否是由发送方签名的,以及消息M的内容是否完整。区块链系统中收发双方进行交易时,发送方使用接收方的公钥对交易内容进行加密,以确保只有接收方才能通过自己的私钥进行解密;同时,发送方使用自己的私钥对交易内容进行数字签名,使得接收方通过发送方的公钥对交易内容进行验证,以确保该交易确实来自发送方。在区块链交易数据需要进行全网广播的情况下,非对称加密的使用保证了交易内容和收发双方身份的保密。
区块链系统的架构
第三章基于信用模型的Raft共识算法...............................................................................................................20
3.1问题描述..................................................................................................................................................20
3.2CRaft共识算法.........................................................................................................................................21
第四章基于积分型通证可累计评价的激励机制................................................................................................33
4.1问题描述..................................................................................................................................................33
4.2基于CPTC的激励机制..........................................................................................................................34
第五章总结与展望...............................................................................................................................................48
3.2CRaft共识算法.........................................................................................................................................21
第四章基于积分型通证可累计评价的激励机制................................................................................................33
4.1问题描述..................................................................................................................................................33
4.2基于CPTC的激励机制..........................................................................................................................34
第五章总结与展望...............................................................................................................................................48
第四章基于积分型通证可累计评价的激励机制
4.1问题描述
联盟链网络要求加入的节点需要经过其余节点的验证,从而保证了节点的可管理性,节点数量也因此受到限制。存储在联盟链上的数据分为公开数据的内部数据,可以根据节点权限的不同实现严格的访问控制。因此联盟链适用于用户群体有限但具有一定数量、数据访问需要权限控制的应用场景,例如金融业、电子商务、各类协会、上下游企业。这些应用场景具有特定的用户群体,联盟链能够保证所有数据的完全可信和隐私数据的安全访问,同时能够充分发挥联盟链多中心化的节点管理和验证机制。尽管如此,目前仍然没有出现一个已落地运行的现象级联盟链应用。这是因为对于一个区块链应用而言,不仅需要共识算法能够满足现实场景的验证速度和吞吐量需求,而且需要激励机制能够充分激励节点以促进共识算法的持续运行。电子商务使用范围广泛,涵盖了衣食住行等生活的方方面面,是联盟链应用中亟需落地的场景之一。传统形式的电商平台一般采用中心化的积分形式进行用户激励,采用星级评价的方式进行商家激励。中心化的积分激励方式中,积分的发行具有隐蔽性,分配方式也是不透明的,用户无从核实是否如实分配,因而缺乏公信力;积分的使用规则往往朝令夕改,具有不确定性,用户权益因此受损;积分的流通主要局限于用户之间,缺乏一定的流通性,积分对用户的激励效果也因此受到影响;积分的清算需要耗费大量的技术支持和时间成本,积分生态形成缓慢。
比特币的区块结构
4.2基于CPTC的激励机制
本章提出了一种基于积分型通证可累计评价(CumulativePointTokenforComment,CPTC)的激励机制,采用基于积分形式的激励型通证代替传统的中心化积分。通证的发行和分配是根据用户与商家的交易订单金额进行兑换实现的,用以激励用户的消费行为;用户使用一定数量的通证量化对交易订单的评价态度,从而实现通证从用户到商家的流通;用户的通证可以进行累积,以便减少无效的评价信息,但为了防止用户恶意囤积通证的行为,用户的通证会随时间进行衰减;为了使得评价内容无法篡改,用户的评价信息上传至区块链保存,商家为了减少差评,只能提高自身品质,从而加强对商家的激励,同时促使全行业的良性竞争。用户的评价账户中存放通过交易订单兑换得到的通证,且受到时间衰减函数的约束;商家的评价账户中分别存放好评通证、差评通证以及评价信息,且通证不会随时间衰减。当交易订单结束后,用户根据对该笔交易的满意程度使用评价账户中一定数量的通证进行好评或差评的量化评价,并使用文字和图片进行补充评价。使用越多的通证进行评价,就表示好评或差评的程度越深。如果用户感觉一般,则可以使用0通证的方式进行评价,从而实现尽可能的减少无效的评价信息。评价结束后,商家的好评或差评账户中就会增加一定数量的通证和对应的评价信息,其余用户则可以根据商家拥有的好评通证和差评通证的数量来对该商家进行评估和判断。图4.1对通证的分配和流通进行了描述。
.............
第五章总结与展望
与公有链性能较差、私有链去中心化程度较低相比,联盟链不但因节点数量有限而具有优秀的性能,且部分去中心化的特点提高了对区块链网络中节点安全的可控性,因而能够适用于现实场景中的各类应用。然后提出了TNL机制,用以解决共识过程中非拜占庭节点之间的通信问题。最后,对节点信用评价模型的准确性以及CRaft的吞吐量和时延进行的实验结果表明,节点信用评价模型能够将联盟链网络中所有的拜占庭节点识别出来,与联盟链共识算法PBFT相比CRaft具有更高的吞吐量和更小的时延。(3)针对联盟链重要场景之一的电子商务中激励机制存在的规则不透明、积分流通具有局限性和评价信息易篡改等问题,本文提出了一种基于CPTC的激励机制,用以对联盟链网络中节点的积极行为进行激励,促进共识过程的持续和稳定运行。时间戳表示自格林威治时间1970年1月1日0时0分0秒到当前时刻的总秒数,是一种完整且可验证的电子证据,能够为某一数据提供特定时间点的存在性证明。区块链根据时间戳的先后顺序通过链式结构将一个个区块关联起来,因此篡改区块数据的难度以时间的指数倍增加,区块链越长篡改难度就越高,这也是确保区块链不可更改性的重要因素之一。合约层包括了脚本代码、算法机制和智能合约。最后采用经星际文件系统(theInterPlanetaryFileSystem,IPFS)转存的方法实现用户评价信息的链外存储,用以确保评价信息的不可篡改。通过联盟链开发平台HyperledgerFabric对该激励机制进行了智能合约的开发,实验结果表明该激励机制能够正确运行,且具有一定的可行性和有效性,能够作为电子商务场景下联盟链应用的激励机制。
参考文献(略)