区块链PBFT共识算法的可扩展性优化探讨与实现

论文价格:150元/篇 论文用途:硕士毕业论文 Master Thesis 编辑:硕博论文网 点击次数:
论文字数:42122 论文编号:sb2023040718091950228 日期:2023-04-14 来源:硕博论文网

本文是一篇计算机论文,笔者认为共识算法是区块链技术的核心要素,也是近年来分布式系统研究的热点。本文对基于区块链的防伪溯源系统中主要采用的PBFT共识算法进行了可扩展性优化,提高了PBFT的可扩展性。
第一章 绪论
1.1研究背景与意义
防伪溯源系统旨在探寻事务的根本、源头,从而起到防伪的作用。传统的防伪溯源系统大多基于无线射频识别(Radio Frequency Identification,RFID)技术、二维码技术和条形码技术实现,溯源信息覆盖商品从生产到销售的每个环节。在传统防伪溯源系统中,商品从生产到销售环节的每个实体都需要各自维护自己的信息系统。这不但造成更多的核对和检验工作,也存在溯源数据被篡改的可能性。一旦出现商品问题,也很难明确事故的主要责任人。区块链技术[1]以其去中心化存储、数据不可篡改、数据可追溯等特性为防伪溯源系统带来了新的希望[2]。
区块链技术起源于2008年,是由化名为“中本聪”的学者提出的比特币系统所使用的底层技术。比特币是一种去中心化的电子现金系统[3],它通过共识算法发行虚拟的加密数字货币。之后,以比特币为代表的货币区块链技术开始了发展。2013年,Vitalik提出了以太坊区块链平台,以太坊首次将智能合约[4]应用到区块链中,智能合约的提出将区块链应用从虚拟货币拓展到金融领域。2015年,Linux基金会提出了Hyperledger Fabric区块链平台[5]。Hyperledger Fabric专为在企业环境中使用而设计,具有高度模块化和可配置的架构,Hyperledger Fabric的提出标志着区块链技术进入了广泛应用阶段[6-8]。
按照区块链的参与准入机制,区块链可以分为公有链、联盟链和私有链。公有链、联盟链与私有链最大的不同在于使用的共识算法不同[9],以比特币、以太坊为代表的公有链采用工作量证明(Proof of Work,PoW)算法,以Hyperledger Fabric为代表的联盟链多选用PBFT作为共识算法。因为PoW共识算法有着能源浪费、区块确认时间长、容易产生分叉、没有最终性等问题,目前基于区块链的防伪溯源系统大多基于PBFT算法实现。相比于PoW算法,PBFT共识算法不会产生分叉且共识效率高。但是PBFT也存在着主节点选举随意、三阶段广播过程通信复杂度高、频繁的视图变更系统开销大等问题,特别是随着参与共识的节点数量增加,PBFT的运行效率会变低,这些问题严重阻碍了防伪溯源系统的性能。因此,一个高效可扩展的区块链共识算法对防伪溯源系统是至关重要的。
..............................
1.2国内外研究现状
如何高效地在分布式系统中达成共识是分布式计算领域的根本问题之一,已经有很长的研究历史。早期共识算法的研究一般聚集于分布式一致性,即如何确保数据能够在分布式系统中保持一致。随着区块链概念的提出,基于区块链的共识算法研究也随之展开[10, 11]。
自2009年起,随着加密货币的繁荣,因比特币而走进大众视野的区块链技术发展十分迅速[12],各种区块链应用持续落地[13, 14]。共识算法作为区块链技术的核心,也因此进入快速发展、百花齐放的时期。许多研究者提出了新的共识算法[15, 16],有对原有算法进行了改进[17-19],有为了提升性能而做出了优化[20, 21],有为了适应场景或需求而做出了重大创新[22, 23]。从创新角度来看,这些共识算法可以分为两类:PBFT共识算法的改进算法、PoW共识算法的改进算法。
(1)PBFT共识算法的改进算法
为了优化PBFT的共识流程,Kwon等人在PBFT和权益证明(Proof of Stake,PoS)算法的基础上提出了Tendermint[24],Tendermint通过空块和锁机制简化了PBFT的共识流程。为了防止Sybil攻击,Tendermint为每张投票分配了不同的权重,若投票权重超过2/3即可达成共识。
为了适应于高延迟网络,Miller等人提出了HoneyBadgerBFT[25],HoneyBadgerBFT是首个实用的异步拜占庭容错共识算法。在不做任何时间假设的情况下,HoneyBadgerBFT通过可靠广播协议和异步二进制拜占庭协议保证区块链系统的活性。
........................
第二章 相关背景知识介绍
2.1区块链共识算法概述
按照区块链的参与准入机制,区块链可以分为公有链、联盟链[39]和私有链[40]。在公有链中,主要使用PoW。在联盟链中,主要使用PBFT。在私有链中,主要使用RAFT[41]。因此,本文将对PoW、PBFT、RAFT进行介绍。

计算机论文怎么写
计算机论文怎么写

2.1.1 PoW
目前三大公有链项目中比特币和以太坊都使用PoW共识算法,EOS使用授权股份证明(Delegated Proof of Stake,DPoS)共识算法。2008年,中本聪基于PoW共识算法设计了比特币。
在生成区块时,PoW算法要求所有节点计算一个随机值。该使得区块头中元数据的哈希值小于PoW设定的目标难度值,即满足公式2-1。其中,为SHA256哈希函数,为区块头中的元数据,主要包括父区块哈希、默克尔树根节点、时间戳等。公式2-1求解复杂但验证容易,第一个求解出的节点将获得记账权。由于SHA256哈希函数是散列函数,所以只能通过穷举的方法求解,节点求解的过程也称为“挖矿”。
PoW算法将共识过程与经济激励相结合,促使了更多的节点参与挖矿[42]。通过算力竞争,PoW能够有效地防止51%攻击[43]和Sybil攻击[44]。但同样因为算力竞争,PoW需要消耗大量的能源,这些消耗的能源绝大部分都用于计算随机值。因此,使用PoW的区块链系统处理交易的性能非常低[45]。同时,算力竞争也会导致矿工的集中化,形成矿池。尽管比特币是想通过PoW实现一个去中心化的系统,但现在的比特币却被中心化程度很高的5大矿池垄断了90%以上的算力。
............................
2.2区块链中的加密技术
加密算法为区块链的不可篡改性和不可伪造性提供支撑,同时保障区块数据的安全性。下文将介绍第三章中阈值签名所使用到的双线性配对和BLS签名、第四章中可验证随机函数所使用到的Ed25519签名。
2.2.1 BLS签名
BLS签名[49]由Boneh等人于2001年提出,BLS签名可以实现签名聚合和密钥聚合。2019年,国际互联网工程任务组开始提出BLS签名标准草案。
BLS签名采用基于双线性配对的椭圆曲线配对技术来实现签名验证与聚合。相比于Schnorr签名,BLS签名不需要随机数生成器,且可以避免签名者之间的多余通信。相比于椭圆曲线数字签名算法(Elliptic Curve Digital Signature Algorithm,ECDSA),BLS签名的长度更短,签名是椭圆曲线上的一个点而非两个点。
状态机复制是一种实现容错服务的方法,它通过复制服务器来解决分布式系统中的各种容错问题。分布式系统通常由客户端和服务器组成,每个服务部署在一个或多个服务器上。使用单个中心化服务器是实现服务的最简单方式,但这种方式使得服务的容错性最多和服务器的处理器相同,大规模的分布式系统通常使用一组服务器来部署服务。

计算机论文参考
计算机论文参考

...........................
第三章 基于阈值签名的PBFT共识算法可扩展性优化 ................................ 14
3.1研究背景 .................................... 14
3.32模型假设 ........................................ 14
第四章 基于可验证随机函数的PBFT共识算法可扩展性优化 .............................. 30
4.1研究背景 ............................................ 30
4.2模型假设 ................................ 30
第五章 基于区块链PBFT算法的防伪溯源系统设计与实现 ......................... 47
5.1应用场景描述 ........................................ 47
5.2原型系统设计 ........................................ 47
第五章  基于区块链PBFT算法的防伪溯源系统设计与实现
5.1应用场景描述
区块链在防伪溯源方面的应用是学术界和工业界的研究热点。目前,在国内市场中的互联网巨头如阿里、腾讯、百度、京东等都纷纷开始这方面的研究。本章结合本文第三章的基于阈值签名的PBFT可扩展性优化算法和第四章的基于可验证随机函数的PBFT可扩展性优化算法,针对实际的防伪溯源系统,提出了一种基于区块链PBFT共识算法的防伪溯源系统的实现方案。该系统主要面向生产商、运输商和消费者,适用于各类食品、物品的防伪溯源。该系统内的每个商品都会贴有一个二维码,二维码用于唯一标识一个商品。在商品的生产、加工、仓储、运输和消费环节,本系统通过温度传感器、湿度传感器、压力传感器以及GPS获取商品的温湿度、重量以及地理位置信息,这些信息组成商品的溯源数据。生产商和运输商在采集的溯源数据基础上进行生产和运输操作,生产商和运输商对溯源数据的所有操作都会被记录在区块链中。消费者收到商品之后,通过小程序进行商品的溯源。由于每个用户进入系统时都会被分配一对公钥和私钥,所以溯源失败时可以快速定位到出现问题的环节。同时由于身份的不可抵赖性,可以快速进行举证和追责。
在生产和运输环节,生产商和运输商需要审核通过才能加入本系统,同时对于溯源数据的存储效率有较高的要求。因此在这两个环节,采用第三章中的基于阈值签名的PBFT可扩展性优化算法来处理生产商和运输商的请求。在消费环节,消费者通过注册就可以加入本系统,同时需要消费者对单个商品进行扫码溯源,这对商品防伪溯源的可靠性和效率有较高的要求,也需要网络可以支持更多节点的加入。因此在这个环节,采用第四章中的基于可验证随机函数的PBFT可扩展性优化算法来处理消费者的请求。
.............................
第六章  总结与展望
6.1论文总结
区块链是结合了共识算法、加密算法、分布式数据存储、点对点传输等计算机技术的新型应用模式。因为区块链去中心化、数据不可篡改、数据可追溯性等特点,工业界将区块链应用于防伪溯源系统中。基于区块链的防伪溯源系统可以识别假冒伪劣商品,同时可以在商品溯源失败时快速定位到出现问题的环节。然而区块链为防伪溯源系统带来安全的同时,其使用的PBFT共识算法却限制了防伪溯源系统的可扩展性。特别随着网络中节点的增加,防伪溯源系统的性能逐渐降低。因此,本文从优化PBFT的可扩展性入手,主要研究内容如下:
(1)首先,对课题的研究背景做了简单的介绍。其次,在阅读大量参考文献的基础上,系统性地对区块链共识算法研究现状和国内外研究成果进行了研究,并最终确定本文的研究方向。最后,在确定了论文研究方向的基础上,对区块链中主要使用的共识算法、本文使用到的相关加密技术和存储技术进行了介绍。
(2)针对PBFT三阶段共识过程通信复杂度高、视图变更开销大的问题,本文提出了基于阈值签名的PBFT可扩展性优化算法TBFT,TBFT通过阈值签名技术、默克尔树技术以及纠删码技术提高PBFT的可扩展性。通过对TBFT的算法分析可知,TBFT具有较低的通信成本以及较高的可扩展性。同时相比于其他的PBFT优化算法,TBFT具有更低的共识过程开销以及较低的视图变更开销。仿真实验结果表明,TBFT具有更高的吞吐量以及更低的请求延迟。
(3)针对PBFT主节点选举随意、可扩展性低的问题,本文提出了基于可验证随机函数的PBFT可扩展性优化算法VBFT,VBFT通过可验证随机函数以及分片技术提高PBFT的可扩展性。通过对VBFT的算法分析可知,VBFT可以保证分片的安全性以及主节点选举的安全性,同时具有更高的可扩展性。仿真实验结果表明,VBFT能有效提高PBFT的可扩展性,可以适用于大规模节点。
参考文献(略)


上一篇:基于Mixup的黑盒对抗攻击探讨
下一篇:没有了
如果您有论文相关需求,可以通过下面的方式联系我们
点击联系客服
QQ 1429724474 电话 18964107217