2. 浙江工商大学 工商管理学院, 杭州 310018;
3. 杭州电子科技大学 计算机学院, 杭州 310018
2. School of Business Administration, Zhejiang Gongshang University, Hangzhou 310018, China;
3. School of Computer Science and Technology, Hangzhou Dianzi University, Hangzhou 310018, China
开放科学(资源服务)标志码(OSID):
传统溯源系统采用将溯源信息集中存放在单一节点上的中心化方案[1],这会影响系统的安全性、透明度和互操作性[2],而区块链技术的出现为溯源系统的构建提供了更可信、安全和高效的解决方案[3]。由于公有链中实体可随意加入或离开区块链网络,而参与溯源系统中代表各利益方的实体则受到约束,因此与比特币[4]等公有链不同,溯源系统更适合采用联盟链。溯源区块链包含来自生产、加工、运输、存储和消费等领域中兴趣各异的利益方[5],这种复杂性对该联盟链的共识策略提出了拜占庭容错能力的要求。在区块链技术中,共识策略能够确保在部分节点失效的情况下整个区块链网络中的节点仍能达成一致。由于节点通常由不同利益方维护,所构成的共识网络具有显著的异构特性,因此溯源区块链的性能开销较大,受到内外部恶意攻击的安全风险高,其共识策略还需要保障系统的性能和安全性。然而,传统基于证明的共识策略主要应用在公有链场景下,伴随巨大的计算开销和性能瓶颈,导致它们不适用于联盟链场景下的溯源区块链。基于拜占庭容错状态机复制的策略(BFT)[6]可以在不引入额外开销的情况下使全体非故障节点最终都达成共识,其中实用拜占庭容错(PBFT)是联盟链场景下应用最广泛的共识策略。但是,由于PBFT采用主节点(primary node)和多轮相互广播的方式,并且缺少故障节点排除机制[7],导致其在溯源区块链场景下依然存在通信开销大、可靠性低、易受恶意攻击等问题。
本文提出一种基于信誉的二阶段溯源区块链共识策略RTsBFT。通过对溯源区块链进行分析,构建将共识节点分散在多个本地组中的系统模型,以模拟溯源系统多利益方、共识网络异构的特性。同时建立一个信誉模型,将信誉作为节点参与共识过程的凭据,并根据节点信誉来排除故障节点。在此基础上,将共识设计为一个包含代表选择和代表共识两个阶段的过程,实现异构网络通信。
1 背景知识 1.1 溯源区块链区块链技术可以解决供应链系统中信任相关的问题[8],溯源区块链能够通过信息获取、传输、分享等过程,为供应链生产、加工、仓储、销售等各环节提供可追溯性的可靠信息[9]。溯源区块链继承了区块链技术的众多特性,如提供一种安全可共享的去中心化数据库,为物品、数据、金融等资源的交易提供基于透明性和可追溯性的信任强化。随着射频识别(RFID)、近场通信(NFC)等技术的发展,溯源区块链被应用到众多领域[10]。溯源区块链可采用无权限(公有链)和有权限(联盟链、私有链)系统,但无权限系统在设计上允许任意实体随时加入和退出区块链系统,并且拥有任意的读写权限,因此需要花费巨大的代价来保障安全性,如采用资源浪费极为严重的基于证明的共识策略[11]。同时,无权限系统的事务吞吐量受其设计的限制,无法满足供应链溯源过程中的高频交易需求,而有权限系统则可以通过优化共识策略来实现性能的显著提升[12],因此,共识策略设计对溯源区块链十分重要。
1.2 共识策略共识策略由传统分布式系统中的一致性算法演化而来,一致性算法最初由PEASE等[13]提出,考虑到分布式系统中可能存在故障节点,研究者又在共识策略中引入了拜占庭将军问题。1985年证明的FLP不可能性定理指出,对于具有错误过程的异步系统的共识问题,没有有限时间的理论解决方案,只能探索可行的“工程解”[14]。因此,早期探索的共识策略几乎都是非拜占庭容错的。直到2008年比特币被提出,拜占庭容错共识策略才得到广泛关注,这类策略大致上可分为基于证明和基于投票两类。比特币区块链中采用一种基于证明的共识策略——工作量证明(Proof of Work,PoW)[15]。但是,PoW是一种十分浪费算力的共识策略[16],因此KING提出了权益证明(Proof of Stake,PoS)[17]机制来改善PoW。自提出PoW和PoS之后,研究者在不同的应用场景下提出了一系列基于证明的共识策略,如改进原始PoW和PoS的策略、结合PoW和PoS优点的策略[18]等,这类机制要求共识节点提供某种凭据以竞争区块打包和上链并获得收益,这类共识策略将区块链视作有限状态机,对于给定的顺序输入,它们能保证分布式系统最终的一致性,代价是牺牲系统的吞吐量和延迟性能。同时,由于上述共识策略的设计主要考虑公有链场景,因此并不适用于溯源区块链的联盟链场景。在基于投票的共识策略的每轮共识中,共识节点“相互投票”,将得到超过半数节点投票的节点选为打包区块上链的节点。通常基于投票的共识协议在分布式一致性算法中更为常见,如Paxos和Raft[19],当前应用最为广泛的基于投票的共识策略是实用拜占庭容错(PBFT)策略。
1.3 PBFT策略PBFT是一种典型的BFT状态机复制策略,其将分布式一致性算法的复杂性由指数时间级降低到多项式时间级。PBFT采用了主节点(Primary Node)和视图转换(View Change)的概念,主节点负责对请求和共识过程进行排序,视图转换则用于选择新的主节点。PBFT最多可容忍
溯源区块链吸引着众多利益方,共识策略需要满足联盟链对性能和安全性的需求[12],溯源区块链的特性对共识策略的设计十分重要。
2 共识策略设计不同于比特币的公有链,溯源区块链通常采用联盟链,涉及的各利益方均可执行业务功能和权限管理,并通过投资区块链节点、计算能力、带宽等,与其他利益方竞争话语权,这形成了溯源区块链多利益方和共识网络异构的特性,引起了性能和拜占庭容错的需求。针对上述需求,本文提出基于信誉的两阶段拜占庭容错共识策略RTsBFT,其主要包括系统建模、信誉建模及共识过程3个部分,其中,共识过程分为代表选择阶段和代表共识阶段。
2.1 系统建模将溯源区块链中的节点分为3类,分别为事务节点、共识节点(
![]() |
Download:
|
图 1 溯源区块链系统模型 Fig. 1 Traceability blockchain system model |
当事务到达本地组时,组内所有共识节点会在进入共识过程前与一个可靠的NTP服务器同步时间。同一本地组中的每个共识节点都维护一个本地共识节点表LCNT= < 本地组标识,事务标识,节点标识,节点公钥,节点IP:端口对,节点信誉值,节点状态 > ,整个系统中所有LCNT的初始配置都相同。
2.2 信誉模型溯源区块链作为一种联盟链,比公有链更加可靠和安全,无需应用基于证明的共识策略以及增加额外的开销。但是,内部利益方和外部对手的恶意行为导致共识节点不能始终被视为值得信赖,从而需要考虑共识策略的拜占庭容错性。因此,本文建立一种信誉模型,以监督共识节点的行为,识别并排除有缺陷或恶意的故障节点,避免其影响共识过程。在该模型中,共识节点花费一定数量的自身信誉对共识过程中的提案进行签名,当代表共识阶段最终达成共识时,对共识提案签名的代表节点对应的本地组,可取回其在该轮共识中花费的信誉,这些本地组被标记为获胜组(
在系统初始化时,所有共识节点的信誉被设置为相同,对于共识节点
$ R\left({g}_{i}^{\mathrm{local}}\right)=\sum \limits_{\mathrm{node}_{i}^{con}}{w}^{\mathrm{sep}}, \mathrm{node}_{i}^{\mathrm{con}}\in {g}_{i}^{\mathrm{local}}, {r}_{i}>{T}^{\mathrm{rep}} $ | (1) |
其中,
$ {r}_{i}=\left\{\begin{array}{c}{r}_{i}-{w}^{\mathrm{sep}}, {r}_{i}>{T}^{\mathrm{rep}}\\ {r}_{i}, {r}_{i}\le {T}^{\mathrm{rep}}\end{array}\right. $ | (2) |
在代表共识阶段,本地组
对于一个获胜组,其组内签名了共识提案的节点
$ {r}_{w}={r}_{w}+{w}^{\mathrm{rep}}+{R}_{\mathrm{R}\mathrm{W}\mathrm{D}} $ | (3) |
$ {R}_{\mathrm{R}\mathrm{W}\mathrm{D}}=\frac{\sum \limits_{{g}_{k}^{\mathrm{fail}}\in {G}^{\mathrm{fail}}}R\left({g}_{k}^{\mathrm{fail}}\right)}{L\left({G}^{\mathrm{winning}}\right)\times L\left(\mathrm{Nodes}_{\mathrm{sig}}^{\mathrm{rep}}\right)}+\frac{\sum \limits_{\mathrm{node}_{u}\in \mathrm{Nodes}_{\mathrm{unsig}}^{\mathrm{rep}}}{w}^{\mathrm{rep}}}{L\left(\mathrm{Nodes}_{\mathrm{sig}}^{\mathrm{rep}}\right)} $ | (4) |
来自失败组的信誉首先平均分配给各获胜组,然后在每个获胜组内进行分配,
对于一个失败组,其组内共有3类节点,分别是失败代表本身
$ {r}_{\mathrm{f}}=\left\{\begin{array}{l}{r}_{\mathrm{f}}, {r}_{\mathrm{f}}\le {T}^{\mathrm{rep}}\\ {r}_{\mathrm{f}}-L\left(\mathrm{Nodes}_{\mathrm{sig}}^{\mathrm{fail}}\right)\times {w}^{\mathrm{rep}}, {r}_{\mathrm{f}}>{T}^{\mathrm{rep}}\end{array}\right. $ | (5) |
$ {r}_{\mathrm{u}}={r}_{\mathrm{u}} $ | (6) |
$ {r}_{\mathrm{s}}=\left\{\begin{array}{l}{r}_{\mathrm{s}}, {r}_{\mathrm{f}}\le {T}^{\mathrm{rep}}\\ {r}_{\mathrm{f}}+{w}^{\mathrm{rep}}, {r}_{\mathrm{f}}>{T}^{\mathrm{rep}}\end{array}\right. $ | (7) |
若失败组中有节点签名了共识提案,则它们应该被视作比同组中其他未签名共识提案的节点更可靠,失败代表应该为这些节点的信誉损失负责,并从它们的信誉值中减去这些节点花费的信誉,以补偿这些节点的信誉损失,其他节点则不会得到任何形式的信誉补偿。
2.3 共识过程基于PBFT策略中的主节点在共识过程中发挥着重要作用,但存在引入拜占庭节点作为主节点的风险,从而对系统性能造成影响。RTsBFT采用代表节点机制,每个代表节点仅对其本地组负责,一个代表节点的错误不会影响到整个共识网络。对于一个有
在代表选择阶段,事务被共识节点接收,并产生代表节点。RTsBFT中采用固定区块大小的方法来生成区块,当共识节点收到用于生成新区块的最后一个事务时,它与NTP服务器同步时钟,并对区块进行验证、摘要和签名。当完成上述工作且未收到来自其他节点的代表声名信息
![]() |
Download:
|
图 2 代表选择阶段的共识过程 Fig. 2 Consensus process of representative selection stage |
代表选择阶段的详细步骤如下:
步骤1 进入Broadcast流程,用于生成新区块
步骤2
1)与NTP服务器同步时钟。
2)将
3)对区块进行摘要和签名。
4)生成
5)构造代表声名信息
步骤3 进入Claim流程,若节点未完成步骤1和步骤2且收到其他节点
1)若其信誉低于
2)若其信誉高于
步骤4 进入Preprepare流程,在
1)从LCNT中检查发送过
2)根据信誉对上述节点进行排序。
3)仅当多个节点信誉值相同时对其按照
4)将排序在第1位的节点状态标记为
步骤5 代表节点根据信誉模型计算
与PBFT不同,RTsBFT中提案信息只会被本地组的代表节点接收,因此,共识过程会被限定在所有代表节点中进行。代表节点发送含有本地组id、代表节点信息、提案(含区块头)、本组
![]() |
Download:
|
图 3 代表共识阶段的共识过程 Fig. 3 Consensus process of representative consensus stage |
代表共识阶段的详细步骤如下:
步骤1 所有代表节点向其他本地组广播
步骤2 进入Prepare流程,所有代表节点验证收到的
步骤3 进入Commit流程,收到
步骤4 进入Store & Feedback流程,获胜代表节点将提案对应的区块发送给存储节点,并将共识提案广播给所有本地组,在各本地组内节点更新信誉值。
2.4 正确性分析溯源区块链中的拜占庭节点不可靠,可能会通过恶意行为来阻碍共识的达成,RTsBFT用信誉模型和二阶段过程设计识别这些节点,以避免拜占庭故障节点成为代表节点,从而保障共识过程的安全性。
引理1 在本地组中,正确节点的信誉始终高于故障节点的信誉。
证明 令
1)若节点为
2)若节点为
综上所述,
引理2 只要代表节点中的故障节点不超过
证明
本文构建一个模拟溯源区块链特性的原型系统,并在相同条件下运行RTsBFT、PBFT和CSBFT,以验证本文RTsBFT模型的性能。
3.1 原型系统构建本文构建一个简单的联盟链原型系统,包含一个事务模块和一个共识模块,原型系统架构如图 4所示。事务模块生成事务,并将事务通过组间链路广播至共识模块的本地组内,该模块生成的事务大小一致(256 B),以确保达到RTsBFT设计中固定区块大小的要求。共识模块通过分别运行这些共识策略来监测其性能。为了模拟溯源区块链的共识节点分布于受不同利益方管理的异构网络的特性,将同一本地组内的节点用高速本地链路连接,各本地组间则通过相对低速的组间链路连接。整个原型系统的共识模块由10台多核计算机组成(Intel Core i5-9500,32 GB内存),每台计算机作为一个本地组宿主,在其上运行整个本地组的节点。组间链路由一个1 000 Mb/s的交换网络实现,高速本地链路则由Hypervisor的system bus实现。
![]() |
Download:
|
图 4 原型系统架构 Fig. 4 Prototype system architecture |
溯源区块链的特点对共识策略的性能和安全性提出了更高的要求。本文通过吞吐量、延迟和故障节点率3个指标[25]来评估共识策略的性能和安全性。
1)吞吐量:衡量共识策略在给定时间内处理的事务数量,用每秒事务处理量(Transaction Per Second,TPS)来表示,TPS越高,系统性能越好。
2)延迟:从一个区块被生成到它的共识过程完成所需要的时间,由新生成区块的时刻
3)故障节点率:当前共识网络中故障节点的数量与总节点数量的比值,故障节点率反映当前区块链系统共识策略的安全性和可靠性,该指标越低,系统安全性和可靠性越高。
由于RTsBFT采用固定区块大小的策略,区块生成时间不可控,因此可以考察区块大小对系统性能的影响。同时,节点数量决定共识网络的复杂性,本文将在不同区块大小和节点数量情况下对比RTsBFT、PBFT和CSBFT的吞吐量、延迟以及故障节点率。
3.3 吞吐量和延迟对比本文分别设计0.5 KB、1.0 KB、2.0 KB、4.0 KB和8.0 KB这5个不同的区块大小,原型系统配置为5个本地组宿主,每宿主运行10个节点。评估指标取运行中某一段20 s时间内的平均值,结果如图 5所示。从图 5可以看出,在相同区块大小下,RTsBFT的吞吐量总是高于PBFT和CSBFT,延迟低于PBFT。随着区块大小的增加,所有共识策略的吞吐量均有下降,延迟均有升高,说明区块大小会影响共识策略的性能。
![]() |
Download:
|
图 5 不同区块大小下吞吐量和延迟的对比 Fig. 5 Comparison of throughput and latency under different block sizes |
将原型系统分别配置为运行35个、70个、105个和140个节点,这些节点以两种方式分别分配到5个(每宿主运行7个、14个、21个和28个节点)和7个(每宿主运行5个、10个、15个和20个节点)本地组宿主上。区块大小配置为1 KB,评估指标也取运行中某一段20 s时间内的平均值,结果如图 6所示。从图 6可以看出,在不同节点数量和分组方式下,RTsBFT的吞吐量均高于PBFT和CSBFT,延迟均低于PBFT和CSBFT,节点数量的增加降低了共识策略的吞吐量,但PBFT和CSBFT的吞吐量下降更为显著,同时,节点数量的增加提高了共识策略的延迟,但PBFT和CSBFT的延迟提高幅度更大。
![]() |
Download:
|
图 6 不同节点数量下吞吐量和延迟的对比 Fig. 6 Comparison of throughput and latency under different numbers of nodes |
在相同区块大小和相同节点数量这两种情况下,RTsBFT在吞吐量和延迟上的性能表现均优于PBFT和CSBFT。尽管随着区块大小的增加和节点数量的增加,各策略性能均有一定程度的下降,但RTsBFT下降得更少。因此,RTsBFT具有更高的性能,且在系统复杂性增加的情况下能够更好地控制性能下降。研究表明,通信复杂性对共识策略的性能有重要影响[26],在RTsBFT的设计中,本地组内的通信发生在代表选择阶段,组间通信只发生在代表共识阶段,同时共识的核心过程仅在少数代表节点中发生,降低了节点间通信开销,特别是组间节点的通信开销。而在两阶段的共识过程中,不需要向所有节点广播区块并等待它们的响应,这与引入的信誉模型一起简化了共识过程,同时避免了故障节点带来的额外开销,降低了共识过程的复杂性。在不同的节点分组方式中,RTsBFT的延迟差异几乎是恒定的,而PBFT和CSBFT在不同节点分组下的延迟差异随着节点数量的增加而提高,这也证明对通信开销的控制给RTsBFT带来了性能提升。
3.4 性能与安全性随时间的变化情况故障节点引入了拜占庭错误,本文对比2个共识策略在开始运行20 s内的吞吐量、延迟和故障节点率的变化情况。原型系统配置为在5个本地组宿主上运行50个共识节点,区块大小为1 KB,初始故障节点为12个。该过程中3个共识策略的吞吐量和延迟随时间变化的统计信息如表 1所示,变化趋势如图 7所示。
![]() |
下载CSV 表 1 3个共识策略吞吐量和延迟随时间变化的统计信息 Table 1 Statistics of the throughput and latency of three consensus strategies over time |
![]() |
Download:
|
图 7 吞吐量和延迟随时间的变化情况 Fig. 7 The change of throughput and latency with time |
从表 1和图 7可以看出,RTsBFT的吞吐量随时间变化的均值高于另两个策略,延迟低于另两个策略,且RTsBFT的吞吐量和延迟随时间变化的波动比另两个策略平缓。
3个共识策略故障节点率随时间的变化趋势如图 8所示,可以看出,PBFT的故障节点率保持在24%左右,而RTsBFT几乎在前5 s就将所有故障节点排除在外,CSBFT大约在10 s完成故障节点的排除。RTsBFT具有排除故障节点的能力,因此相比PBFT,其具有更好的安全性和可靠性,相比CSBFT的故障节点排除能力更强。RTsBFT在性能和安全性波动上的优势来自于其设计中的信誉模型所带来的排除拜占庭故障节点的能力,故障节点会加重系统的负载,从而对系统性能和安全性产生不利影响。RTsBFT能消除故障节点恶意行为对共识过程的影响,减少共识过程中需要通信的节点数量,从而提高系统性能和安全性。而CSBFT在没有摆脱PBFT主节点和视图转换弊端的情况下引入信誉模型,虽然具备一定的故障节点排除能力,但增加了大量额外开销[21],因此,其性能较PBFT差。
![]() |
Download:
|
图 8 故障节点率随时间的变化情况 Fig. 8 The change of failure node rate with time |
本文提出一种基于信誉的二阶段溯源区块链共识策略RTsBFT,在多利益方、共识网络异构的联盟链场景下实现对溯源区块链性能和安全性的提升。通过建立溯源区块链系统模型与信誉模型及设计二阶段共识过程,使得RTsBFT具有排除拜占庭故障节点的能力并降低节点通信开销。实验结果表明,在不同区块大小和节点数量的情况下,RTsBFT的吞吐量、延迟和故障节点率均优于PBFT和CSBFT策略。下一步将对RTsBFT中的信誉模型进行优化,使其适用于更多类型的联盟链系统模型架构。
[1] |
KHAN M A, SALAH K. IoT security: review, blockchain solutions, and open challenges[J]. Future Generation Computer Systems, 2018, 82: 395-411. DOI:10.1016/j.future.2017.11.022 |
[2] |
HELO P, HAO Y. Blockchains in operations and supply chains: a model and reference implementation[J]. Computers & Industrial Engineering, 2019, 136: 242-251. |
[3] |
KAMBLE S S, GUNASEKARAN A, SHARMA R. Modeling the blockchain enabled traceability in agriculture supply chain[J]. International Journal of Information Management, 2020, 52: 101967-101969. DOI:10.1016/j.ijinfomgt.2019.05.023 |
[4] |
NAKAMOTO S, BITCOIN A. A peer-to-peer electronic cash system[EB/OL]. [2021-01-05]. http://ondoc.logand.com/d/4354/pdf.
|
[5] |
PAPPA I C, ILIOPOULOS C, MASSOURAS T. What determines the acceptance and use of electronic traceability systems in agri-food supply chains?[J]. Journal of Rural Studies, 2018, 58: 123-135. DOI:10.1016/j.jrurstud.2018.01.001 |
[6] |
SOUSA J, BESSANI A. From Byzantine consensus to BFT state machine replication: a latency-optimal transformation[C]//Proceedings of 2012 European Dependable Computing Conference. Washington D.C., USA: IEEE Press, 2012: 37-48.
|
[7] |
JIANG Y J, LIAN Z. High performance and scalable Byzantine fault tolerance[C]//Proceedings of 2019 IEEE Information Technology, Networking, Electronic and Automation Control Conference. Washington D.C., USA: IEEE Press, 2019: 1195-1202.
|
[8] |
XU X W, LU Q H, LIU Y, et al. Designing blockchain-based applications a case study for imported product traceability[J]. Future Generation Computer Systems, 2019, 92: 399-406. DOI:10.1016/j.future.2018.10.010 |
[9] |
ZHANG L, LIU B X, ZHANG R Y, et al. Overview of blockchain technology[J]. Computer Engineering, 2019, 45(5): 1-12. (in Chinese) 张亮, 刘百祥, 张如意, 等. 区块链技术综述[J]. 计算机工程, 2019, 45(5): 1-12. |
[10] |
FU Y Y, LIANG Z J. Blockchain based trace-ability system of cross-border skin care product e-commerce logistics[J]. China Business & Trade, 2018(14): 7-9. (in Chinese) 伏阳阳, 梁子婧. 基于区块链的护肤品跨境电商物流溯源体系研究[J]. 中国商论, 2018(14): 7-9. |
[11] |
EYAL I, GENCER A E, SIRER E G, et al. Bitcoin-NG: a scalable blockchain protocol[EB/OL]. [2021-01-05]. https://www.usenix.org/system/files/conference/nsdi16/nsdi16-paper-eyal.pdf.
|
[12] |
DEMESTICHAS K, PEPPES N, ALEXAKIS T, et al. Blockchain in agriculture traceability systems: a review[J]. Applied Sciences, 2020, 10(12): 4113-4115. DOI:10.3390/app10124113 |
[13] |
PEASE M, SHOSTAK R, LAMPORT L. Reaching agreement in the presence of faults[J]. Journal of the ACM, 1980, 27(2): 228-234. DOI:10.1145/322186.322188 |
[14] |
FISCHER M J, LYNCH N A, PATERSON M S. Impossi-bility of distributed consensus with one faulty process[J]. Journal of the ACM, 1985, 32(2): 374-382. DOI:10.1145/3149.214121 |
[15] |
JAKOBSSON M, JUELS A. Proofs of work and bread pudding protocols(extended abstract)[EB/OL]. [2021-01-05]. http://www.arijuels.com/wp-content/uploads/2013/09/PoW.pdf.
|
[16] |
ULLRICH J, STIFTER N, JUDMAYER A, et al. Proof-of-blackouts?How proof-of-work cryptocurrencies could affect power grids[C]//Proceedings of International Symposium on Research in Attacks, Intrusions, and Defenses. Berlin, Germany: Springer, 2018: 184-203.
|
[17] |
KING S, NADAL S. PPcoin: peer-to-peer crypto-currency with proof-of-stake[EB/OL]. [2021-01-05]. http://www.sysu.edu.cn/403.html.
|
[18] |
DUONG T, FAN L, KATZ J, et al. 2-hop blockchain: combining proof-of-work and proof-of-stake securely[C]//Proceedings of European Symposium on Research in Computer Security. Berlin, Germany: Springer, 2020: 697-712.
|
[19] |
WANG R H, ZHANG L F, ZHOU H, et al. A Byzantine fault tolerance Raft algorithm combines with BLS signature[J]. Journal of Applied Sciences, 2020, 38(1): 93-104. (in Chinese) 王日宏, 张立锋, 周航, 等. 一种结合BLS签名的可拜占庭容错Raft算法[J]. 应用科学学报, 2020, 38(1): 93-104. DOI:10.3969/j.issn.0255-8297.2020.01.007 |
[20] |
BACH L, MIHALJEVIC B, ZAGAR M. Comparative analysis of blockchain consensus algorithms[C]//Proceedings of 2018 International Convention on Information and Communication Technology, Electronics and Microelectronics. Washington D.C., USA: IEEE Press, 2018: 1545-1550.
|
[21] |
LEI K, ZHANG Q C, XU L M, et al. Reputation-based Byzantine fault-tolerance for consortium block-chain[C]//Proceedings of 2018 IEEE International Conference on Parallel and Distributed Systems. Washington D.C., USA: IEEE Press, 2018: 604-611.
|
[22] |
REN S G, HE Z M, ZHOU Z J, et al. Design and implementation of information tracing platform for crop whole industry chain based on CSBFT-blockchain[J]. Chinese Society of Agricultural Engineering, 2020, 36(3): 279-286. (in Chinese) 任守纲, 何自明, 周正己, 等. 基于CSBFT区块链的农作物全产业链信息溯源平台设计[J]. 农业工程学报, 2020, 36(3): 279-286. |
[23] |
AUBLIN P L, MOKHTAR S B, QUEMA V. RBFT: redundant Byzantine fault tolerance[C]//Proceedings of 2013 IEEE International Conference on Distributed Computing Systems. Washington D.C., USA: IEEE Press, 2013: 297-306.
|
[24] |
CASTRO M, LISKOV B. Practical Byzantine fault tolerance and proactive recovery[J]. ACM Transactions on Computer Systems, 2002, 20(4): 398-461. DOI:10.1145/571637.571640 |
[25] |
BAMAKAN S M H, MOTAVALI A, BONDARTI A B. A survey of blockchain consensus algorithms performance evaluation criteria[J]. Expert Systems with Applications, 2020, 154: 113385-113390. DOI:10.1016/j.eswa.2020.113385 |
[26] |
HAO Y, LI Y, DONG X H, et al. Performance analysis of consensus algorithm in private blockchain[C]//Proceedings of 2018 IEEE Intelligent Vehicles Symposium. Washington D.C., USA: IEEE Press, 2018: 280-285.
|