没有合适的资源?快使用搜索试试~ 我知道了~
高性能区块链关键技术研究综述.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 98 浏览量
2022-06-26
12:44:47
上传
评论
收藏 52KB DOCX 举报
温馨提示
![preview](https://dl-preview.csdnimg.cn/85784187/0001-e3f406563d6486b39daf89ae9b64339b_thumbnail-wide.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
试读
11页
高性能区块链关键技术研究综述.docx
资源推荐
资源详情
资源评论
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/release/download_crawler_static/85784187/bg1.jpg)
1 引言
区块链是比特币系统
[1]
的底层技术,采用分布式架构,可以将其定义为去中心
化的分布式账本数据库,具有安全、不可篡改、可访问、无第三方等特性。去中
心化是指区块链中不存在中心,或者每个节点都是区块链的中心;分布式账本数据
库是指区块链的记录方式不仅将每笔交易数据都存储到各个节点中 ,而且每个节
点同步共享复制整个账本的数据。
由于区块链的特性,其产业价值也逐渐确定。近年来,区块链的应用不仅涉及
金融
[2,3]
、供应链
[4]
、医疗
[5]
、政务司法
[6]
等多个领域,同时也为公益慈善
[7]
以及公益
环保
[8]
等公共服务领域带来新一轮的发展机遇。针对区块链现阶段以及未来的发
展与应用,陈纯院士提出提高区块链和联盟链的高性能是实现发展的关键步骤。
关键技术需要在各个方面进行突破,通过高性能的共识算法、高效智能合约引擎
以及新型的共识机制能够提高区块链共识效率与安全性
[9]
。
本文对实现区块链高性能的共识算法与智能合约的发展及其关键技术进行
综述。首先对区块链中的共识算法展开介绍,按照共识算法的选主策略进行分类,
以不同类别中共识算法性能的提升为主线,介绍其共识思想,并对其性能以及优缺
点进行分析;其次,对智能合约展开介绍,阐述智能合约的基本概念,并且从智能合
约的特点出发阐述其工作原理以及与区块链的关系 ,接着以智能合约的关键技术
为主线,从平台的性能角度对实现智能合约的技术平台展开叙述并分析各个平台
的优缺点。
2 高性能共识算法
2.1 共识算法概述
在区块链系统中,各个节点中的账本数据需要保持一致。在传统分布式系统
中,要保持各节点数据的一致性,其他节点只需要与中心服务器同步即可。但是由
于区块链去中心化的结构,系统中没有中心服务器或者“主节点”的存在,在区块链
中如何保持参与节点数据的一致性是核心问题。解决此问题的方法即是共识算
法。共识算法的本质是通过去中心化的思想使得区块链中所有参与节点的状态
达成统一的规则,使每个参与的节点按照制定的规则确认各自的数据,从而保持数
据一致。基于任务共识算法的目标包括如下几个方面。
(1)达成一致:确保区块链系统中数据的真实性与准确性。
(2)激励机制:作为一个去中心化并且无信任的分布式系统,需要调动每个
参与者的积极性。而共识算法通过奖励积极行为、惩治消极行为的赏罚机制来
完成参与者积极性调用这一任务。
(3)公平公正:由于区块链去中心化的特性,任何节点都可以参与到区块链
中,这就要求参与到区块链中的所有节点都需要被平等地对待,所以共识算法需要
确保参与到区块链中的每个节点都是公平的,即在区块链中不存在区别对待的现
象。
(4)容错机制:容错是指分布式系统在出现故障、面临威胁或面对恶行攻
击时仍能正常运行。因此,共识算法需要确保区块链具有容错性,达到可靠和一致
的目的。
![](https://csdnimg.cn/release/download_crawler_static/85784187/bg2.jpg)
2.2 共识算法关键技术
作为以时间为顺序依次存储数据的数据结构 ,区块链系统中可应用不同的共
识算法
[10]
。区块链系统中利用共识算法保证整个系统的一致性,所以共识算法也
成为区块链设计的核心部分
[11]
。
共识算法有多种分类方法,按照容错方式可分为拜占庭容错和非拜占庭容错
两类;按照部署方式可分为公有链共识算法、私有链共识算法和联盟链共识算法
三类。按照共识过程中选主策略的不同,本文将区块链共识算法分为选举类、证
明类、随机类、联盟类
[12]
,并将基于拜占庭容错的算法作为一类进行介绍。
以共识算法的 5 种类型为单位,介绍不同类型共识算法的基本概念,按照其发
展脉络以及共识算法的性能展开介绍,以共识算法的去中心化程度、交易速度、
容错性能以及安全机制为性能指标,着重关注共识性能的提升与发展。
(1) 选举类共识算法
在选举类共识算法中,节点通过投票的方式选举出当前轮次记账节点,获得半
数 以上 投 票 的 节 点会 成 为 领 导 者获 得 记 账 权。 Paxos 算 法、 Raft 算 法以 及
Zyzzyva 算法便属于此类共识算法。
①Paxos
Paxos 算法的思想
[13]
由 Lamport 首次提出,用于解决分布式系统中各节点的
共识问题。假设分布式系统中各节点的初始状态完全一致,并且接收到的信息也
完全一致,按照信息指令执行相同的操作,那么各节点最终的状态一定是一致的。
为了达到每个节点都执行相同命令的目的 ,需要在每一条指令上执行“一致性算
法”,确保系统中的每个节点接受到的指令以及执行的指令完全一致。
系统中节点之间的通信模式分为消息传递和内存共享两种。Paxos 是基于
消息传递模式的一致性算法
[14]
,将系统中的角色分为提议者、决策者和学习者。
提议者负责提案,提案信息包括提案编号和提议内容;决策者参与决策,负责回
应提议者的提案,如果提案被半数以上的决策者接受,则提案通过;学习者负责学习
决策者最新达成一致的提案。Paxos 算法使用“大多数机制”进行容错,在有 2F+1
个节点的系统中允许 F 个节点同时出现故障。由于其强大的容错性能,Paxos 算
法容忍信息丢失、乱序以及不可靠的消息传递
[15]
。
很长时间以来,Paxos 算法都是一致性的事实标准。但是它存在两大缺点:
难以理解和证明、难以在实际工程中实现。于是在 Paxos 算法的基础上,衍生出
易于理解和实现的 Raft 算法。
②Raft
Paxos 算法具有强大的容错能力但其原理太过复杂并且难以实现。 2014 年,
斯坦福大学的 Ongaro 等提出 Raft 共识算法
[16]
。Raft 算法在借鉴 Paxos 算法强
大容错性能的基础上,对其复杂的实现过程进行简化,将系统中的角色分为领导者、
跟从者和候选者,根据角色赋予不同的权限与职能。Raft 算法主要用于管理日志
的一致性,为了达到易懂易用的目的,此算法将分布式系统中的一致性问题进行分
解,将复杂的分布式共识问题拆分为领导选举、日志复制和安全性三个子问题
[17]
。在容错方面,Raft 算法允许具有 N 个节点的区块链系统中有(N-1)/2 个节
点同时出现故障。
在性能方面,相比于 Paxos 算法,Raft 算法的性能并未明显提升,但是它的可
理解性好,可操作性高,改进了 Paxos 算法难以理解和证明、难以实现的缺点,按
![](https://csdnimg.cn/release/download_crawler_static/85784187/bg3.jpg)
照协议即可以实现出稳定、健壮的算法。与 Paxos 算法相比,Raft 算法更容易理
解和实现。
③Zyzzyva
Zyzzyva 算法也是通过选举出领导者进行共识事务的组织发起、其余参与
者跟随验证或确认的方式,同时使用推测降低成本并简化拜占庭容错状态机副本
的共识算法
[18]
。Zyzzyva 中的主节点会对客户端发出的请求进行排序,排序完成
后才会按照顺序依次转发给其他的节点。节点会根据历史记录执行客户端发出
的请求,并且将执行结果反馈给客户端,接着客户端根据节点的反馈结果分别执行
不同的操作。
在容错方面,Zyzzyva 共识算法无法容忍恶意节点与不可控节点,所以不具备
容错性。在性能方面,Zyzzyva 共识算法中的领导者有绝对权限,有中心化的潜在
风险,但是由于提前选举出领导者,节点之间不需要额外计算消耗争夺记账权,所以
整体性能校高
[18]
。
(2) 证明类共识算法
证明类共识算法通过竞争的方式完成任务,每个节点在共识过程中必须通过
一份证明来确认做过一定量的工作,或者是具备某种特定的能力来竞争获得记账
权。Pow、PoS、PoB 属于此类共识算法。
①PoW
工作量证明(Proof of Work,PoW)算法
[19]
的核心思想是根据节点的计算力
进行竞争使得数据能够达成一致,在此条件下,共识的安全性能够得到保障。可以
将 PoW 算法简单理解为通过一份证明确认做过一定量的工作,在比特币系统中,
得到合理的区块哈希值(Block Hash)需要经过大量尝试计算,当某个节点提供
出一个合理的区块哈希值,说明该节点确实经过了大量的尝试计算。
在性能方面,工作量证明算法有着安全、完全去中心化、适用等优点,主流的
数字币都采用了这种方案,是最原始的区块链共识算法。由于节点需要通过消耗
强大的算力资源竞争记账权,所以计算过程中造成大量算力资源的浪费是 PoW 算
法最明显的缺点。交易时间过长导致效率低下,平均每秒只能处理 5~7 笔交易,挖
矿活动集中容易形成中心化等都是 PoW 算法的缺点。
②PoS
由于工作量证明算法消耗算力过大、交易时间过长等缺点 ,2012 年 King 等
提出了权益证明(Proof of Stake,PoS)算法
[20]
,并基于 PoW 和 PoS 的混合机制
发布了点点币 PPCoin。
权益证明算法的思想与在银行中存款获得利息这一现象相似 ,根据数字货币
的持有数量与持有时间获得相应利息,而银行存款获得利息的多少也是根据存款
的数量和存款的时间而定。参与者需要投资系统中的货币并且需要在系统指定
的时间内完成验证,查看自己是否是下一个区块的创造者,如果是则参与到下一个
区块的创建中完成区块创建。而区块的创造者根据特定的方式确定,每个参与者
都有可能是下一个区块的创造者,在此算法下参与者被选中为区块创造者的概率
与其拥有的货币数量成正比。
在权益证明算法中,用户所获得的货币利息与币龄相关。在该模式下,每个数
字货币每天产生一币龄。比如,系统中的某用户拥有 300 个系统货币,并且持有时
间为 20 天,按照计算规则,此用户的币龄为 300×20=6 000。如果在该用户持有
货币的第 20 天验证了区块,那么该用户拥有的 6 000 币龄会被清空,与此同时,该
用户获会得相应的货币利息。
剩余10页未读,继续阅读
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/3f07197aad004e4fa57ac5a008eb6aaf_weixin_57147647.jpg!1)
罗伯特之技术屋
- 粉丝: 4059
- 资源: 1万+
![benefits](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-1.c8e153b4.png)
下载权益
![privilege](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-2.ec46750a.png)
C知道特权
![article](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-3.fc5e5fb6.png)
VIP文章
![course-privilege](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-4.320a6894.png)
课程特权
![rights](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-icon.fe0226a8.png)
开通VIP
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)