




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
区块链导论新一代信息技术系列教材区块链导论新一代信息技术系列教材《联盟链——更灵活的区块链架构》第六章《联盟链——更灵活的区块链架构》第六章6.1联盟链概述6.2联盟链与公有链的区别6.3联盟链的共识机制6.4联盟链的准入机制6.1联盟链概述6.2联盟链与公有链的区别6.3联盟链联盟链概述6.1联盟链概述6.16.1.1.联盟链的提出与意义公有链面临的问题:技术角度:数据记录效率低下记录成本高昂操作灵活性不足应用角度:内生数字资产激励机制存在法律监管风险6.1.1.联盟链的提出与意义公有链面临的问题:6.1.1.联盟链的提出与意义有限信任下联盟链的应用:确保参与节点有限,对参与的节点设置准入条件。参与节点设置不同的数据行为权限。6.1.1.联盟链的提出与意义有限信任下联盟链的应用:6.1.2联盟链的定义许可链:相较于公有链,许可链存在用户准入与授权机制,其中用户需要得到准入许可与授权后才能加入相应的许可链。联盟链:在许可链中,如果参与者由多个利益相关实体组成联盟,参与单位具有不同数据操作权限的认证授信节点,并由联盟成员共同参与区块链的数据治理的多中心区块链,称为联盟链。6.1.2联盟链的定义许可链:6.1.3联盟链的优势联盟链的优势灵活可控的数据操作性能与安全性的提高更好的数据隐私性法律法规的兼容更低的对账成本与开发成本不同节点可配置多样化数据权限方便数据修改、“回滚”更方便与应用需求对接联盟链上数据并不对所有参与节点公开、例如超级账本Fabric、R3的Corda节点少、多中心的分布式共识采用PoS、拜占庭容错算法、Raft共识算法等联盟链具有明确的责任主体不需要内生数字通证作为激励机制联盟链成员使用统一数据库,降低对账成本无需进行接口开发,降低开发与维护成本6.1.3联盟链的优势联盟链的优势灵活可控的数据操作性能与6.1.4知名联盟链项目介绍联盟链项目:当前,国内外知名的代表性联盟链项目有:超级账本Fabric、Corda、Quorum、Diem(原Libra)和国内开源项目FISCO
BCOS等。6.1.4知名联盟链项目介绍联盟链项目:6.1.4知名联盟链项目介绍超级项目Fabric由Linux基金会托管的超级账本Fabric是第一个支持以标准编程语言编写的分布式应用程序执行的区块链系统,属于企业级开源许可区块链平台,通过可信任的模型和可插拔的组建实现可定制性。应用场景包括:全球贸易数字化、安全密钥、贸易物流、合同管理等特点:对共识机制、身份验证等组件进行模块化设计,多场景适用;通过证书管理机构为传输层安全证书、注册证书和交易证书提供安全支持等;采用松耦合设计,引入多通道技术实现通道间数据隔离;引入链码处理区块链系统,采用容器技术将链码放入应用容器引擎Docker中运行,支持编码和插件添加新链码编程语言。6.1.4知名联盟链项目介绍超级项目Fabric6.1.4知名联盟链项目介绍CordaCorda是一个用于记录和处理财务协议的分布式分类账平台,用于受监管的金融机构,旨在让所有经济行为体相互作用时,使任何各方能够以安全、一致、可靠、私人和权威的方式记录和管理彼此之间的协议和数据。特点:无区块链结构,无挖矿环节,无全局账本;无中央控制器记录公司之间的工作流程;支持纳入监管和监督观察员节点;无广播,采取点对点的信息交流方式,仅在交易各方之间验证交易。6.1.4知名联盟链项目介绍Corda6.1.4知名联盟链项目介绍QuorumQuorum是以太坊平台的开源许可版本,被用于实现私有事物和权限系统来控制网络访问。其支持智能合约和拜占庭容错共识算法。特点:准入机制的实施限制参与者为一组已知节点,其被配置为网络的一部分,参与事务的验证、智能合约的运行等维护账本状态行为;在已知参与节点的环境中,为崩溃容错提供RAFT共识,为拜占庭容错提供Istanbul-BFT共识。支持可插拔的共识实现;运行大联盟集团中的子集团相互交易;消除了以太坊中的Gas对交易增加成本的概念,统一设置为0。6.1.4知名联盟链项目介绍Quorum6.1.4知名联盟链项目介绍Diem
Diem是一个开源许可区块链系统,是Facebook提出的一种支付系统。它基于许可型区块链,旨在为数字支付和其他金融服务的生态系统提供支持。其货币称为DiemDollar(之前称为“Libra”)成为美元稳定币,未来打算将其主要业务转移到美国,纳入美国监管范围。6.1.4知名联盟链项目介绍Diem6.1.4知名联盟链项目介绍FISCOBCOSFISCO
BCOS由国内企业主导研发,并对外开源的企业级金融联盟链底层平台特点:采用群组架构,支持快速组建联盟和建链;基于有向无环图(DirectedAcyclicGraph,DAG)并行执行交易,大幅提升性能;通过预编译合约提升合约性能,可以突破以太坊虚拟机的性能瓶颈。6.1.4知名联盟链项目介绍FISCOBCOS联盟链与公有链的区别6.2联盟链与公有链的区别6.2联盟链与公有链之间的区别联盟链与公有链的区别在:数据层、网络层、身份层、共识层、合约层以及应用层与其他。数据层网络层身份层共识层合约层应用层与其他联盟链与公有链之间的区别数据层网络层身份层共识层合约层应用6.2.1数据层公有链联盟链分布式程度完全分布式多中心模式数据读写权限任何人具备记账权的节点数据修改权限不可修改内部达成共识即可“回滚”数据数据的分布式存储每个节点都能下载完整数据更加注重隐私性,节点存放特定数据6.2.1数据层公有链联盟链分布式程度完全分布式多中心模6.2.2网络层公有链联盟链P2P网络拓扑规模大混合式结构化的拓扑结构规模小可灵活设计网络中的消息传递全网广播通道独立广播点对点通信6.2.2网络层公有链联盟链P2P网络拓扑规模大规模小网6.2.3身份层功能比特币FabricCordaLibraXuperchainFISCOBCOS准入控制无FabricCA根网络CA、doorman、节点CA、合法身份CALibra联盟、主节点(访问控制列表)内置合约张航权限系统网络准入机制、群组准入机制数据存储全节点、个人矿工节点排序节点、主节点、锚节点、提交节点、背书节点节点验证节点、主节点节点共识节点、观察节点数据共识/验证矿工节点提交节点公证人节点验证节点矿工节点验证节点共识节点通信服务无中心排序节点、主节点、锚节点网络地图主节点无中心链上信使协议AMOP智能合约无背书节点纯函数移动模块WASM字节码二进制代码6.2.3身份层功能比特币FabricCordaLibr6.2.4共识层共识算法区别:1.自然分叉与区块确定性公有链存在自然分叉概率,即使交易已通过验证,也无法确定交易数据是否将最终留在主链上;因此公有链中确定区块的响应时间一般较长;联盟链通过共识算法可以实现区块确定性。一旦区块被验证就被保留在主链上,并且不允许分叉;因此联盟链有较快的系统响应。2.分叉与软件更新公有链上软件同步非常复杂,可能导致硬分叉联盟链达成一致的软件更新相对容易6.2.4共识层共识算法区别:6.2.4共识层公有链联盟链准入机制完全开放严格的准入控制共识每个节点都有记账权由预先选择的节点进行控制效率通过“挖矿”,效率低耗电大可预知节点效率高、成本低分叉情况会不会同步速度慢、不易快、容易6.2.4共识层公有链联盟链准入机制完全开放严格的准入控6.2.5合约层合约层区别:公有链将会为智能合约的执行支付Gas,而联盟链大多不需要;相比公有链,联盟链在智能合约上增加了管控元素6.2.5合约层合约层区别:6.2.6应用层与其他公有链联盟链应用层应用创建无限制有限制数字资产有内置代币不一定激励机制必须不必须监管兼容弱强6.2.6应用层与其他公有链联盟链应用层应用创建无限制有6.2.7小结公有链联盟链参与者所有人特定成员分布式程度完全分布式多中心维护治理社区众包方式联盟成员选举制度数据修改防篡改可回滚记账权利所有人预选记账节点激励措施需要可选是否分叉会不会特点匿名、低性能、公开、规模大、共识困难成本低、高性能、隐私保护、规模小行业代表比特币、以太坊超级账本、Corda6.2.7小结公有链联盟链参与者所有人特定成员分布式程度完联盟链的共识机制6.3联盟链的共识机制6.36.3.1
PBFT算法定义PBFT算法是第一个具有最佳拜占庭容错能力的高性能算法设计的主要目的设计一个低延迟存储系统将算法的时间复杂度由指数级降低到多项式级使拜占庭容错算法在实际系统应用中得以实现优势PBFT解决了早期传统拜占庭算法的低性能问题,并具备拜占庭容错能力。它可以接受系统中至多存在1/3的恶意节点而不影响系统的正常运行实现过程请求(Request)预准备(Pre-prepare)准备(Prepare)提交(Commit)回答(Reply)6.3.1PBFT算法定义请求(Request)预准备准备6.3.1
PBFT算法基本原理PBFT算法是一种状态机复制算法,状态机在分布式系统的不同节点进行副本复制。每个状态机的副本都保存了服务的状态,同时也实现了服务的操作。节点:客户端:负责发送请求消息主节点:接收消息并将消息按序号排列从节点:检查主节点接收消息并判断是否超时组成协议:一致性协议:对共识过程的描述,用于对客户端请求达成共识检查点协议:用于安全地从日志中丢弃消息,从而减少节点的内存开销,还可以用干帮助滞后节点同步最新状态。视图切换协议:当共识失败时,可使用视图切换协议来帮助系统继续正常工作。6.3.1PBFT算法基本原理6.3.1
PBFT算法算法流程第一阶段∶请求(Request)阶段,这个阶段是客户端发消息给主节点。第二阶段∶预准备(Pre-prepare)阶段,主节点接收到信息后,对其签名并分配一个唯一的序号,并将该消息发送给其他从节点。第三阶段∶准备(Prepare)阶段,在所有的从节点接收到主节点发来的Pre-prepare消息后,将一个包含当前视图号、消息序号和消息摘要的Prepare信息发给所有其他节点。如果节点收到了所有节点2/3以上的Prepare消息后,则进入到下一阶段并且该消息处于Prepared状态。第四阶段:提交(Commit)阶段,即每个节点广播一个包括当前视图号、消息序号的Commit消息。当节点收到2/3个相同的Commit消息并且小于消息序号的消息都已被执行时,当前消息会被执行并被标记为Committed状态。第五阶段:回答(Reply)阶段,即所有节点将执行结果,返回给客户端。这代表一次共识完成。6.3.1PBFT算法算法流程6.3.1
PBFT算法算法流程6.3.1PBFT算法算法流程6.3.1
PBFT算法特点将所有工作放在服务器端进行,因此一致性协议设计较复杂虽然解决了拜占庭问题,但实际算法流程依然基于中心化假设易受攻击,当攻击发生时将会对服务的性能造成影响应用超级账本Fabric早期版本Istanbul-BFT受PBFT的启发,经过修改在Quorum中实现FISCOBCOS项目在早期也采用了FBFT算法6.3.1PBFT算法特点6.3.2
Raft算法定义Raft是一种非拜占庭容错共识算法。Raft既明确定义了算法中每个环节的细节,也考虑到了整个算法的简单性和完整性,被分布式系统广泛采用。它是一种基于领导者的算法,领导者选举是其共识协议的重要组成部分。选举出来的主节点负责提出交易命令并广播给其他节点,如果主节点动作超时,将会进行主节点的重新选举。基本原理一种利用状态复制机,通过日志复制来实现的一致性算法每一台节点服务器保存着一份日志,日志中包含一系列的命令,状态机会按顺序执行这些命令给定任意时间,每个节点都处于领导者、跟随者和候选人三种状态之一6.3.2Raft算法定义6.3.2
Raft算法算法实现流程Raft算法实现流程包含三个环节:领导者选举、分类账复制以及安全性步骤1.领导者选举:Raft使用一种心跳机制来触发领导人的选举,具体流程如下图所示6.3.2Raft算法算法实现流程6.3.2
Raft算法步骤2.分类账复制:具体过程如下:客户端发出增加一个交易日志的要求;领导者将收到的新日志内容复制追加到跟随者各自的日志中。此时,该条目仍未提交,并保持易失状态。大多数跟随者服务器将交易记录写入账本,确认追加完毕,发出成功确认信息领导者收到大多数已撰写条目的跟随者确认反馈后,在下一个心跳通知所有跟随者此条目已提交6.3.2Raft算法步骤2.分类账复制:6.3.2
Raft算法步骤3.安全性:确保每个节点都执行相同序列的安全机制。Raft算法增加了以下两个约束条件用以实现安全性:被选为领导的服务器,其日志必须包含所有已提交的操作命令;新的领导者通过当前周期的日志提交来间接完成之前周期的日志提交6.3.2Raft算法步骤3.安全性:6.3.1
RAFT算法特点高效解决分布式系统中各节点日志内容一致性问题集群具备一定的容错能力通过超时设置控制选举过程应用Etcd集群Corda、Quorum以及FISCOBCOS项目也采用了Raft共识算法6.3.1RAFT算法特点6.3.3其他共识算法简介(1)Tendermint算法Tendermint是一种易于理解的拜占庭共识算法,其设计初衷是针对联盟链的应用程序;参与者包括验证者和提议者;采用锁定机制,当预投票时将会锁定区块。锁定机制有效避免了重复提交区块造成的冲突;以Tendermint为基础,提供了独立的共识引擎应用于HyperledgerBurrow和Ethermint的EVM(2)哈希图算法一种异步的拜占庭容错算法,核心是基于gossip协议,通过虚拟投票得出共识结果;跟踪网络中已充分传播并获得共识的事件,确保在同一个哈希图算法中的节点具备相同的算法;Swirlds分布式共识平台就是使用哈希图算法作为共识算法6.3.3其他共识算法简介(1)Tendermint算法6.3.3其他共识算法简介(3)Stellar共识协议SCP建立在联邦拜占庭协议之上的成果,是一种围绕复制状态机所设计的分布式一致性算法。是第一个可证明的安全协议机制具有完全分布式的控制、低时延、灵活信任和渐进安全四个关键属性(4)消逝时间算法(PoET)基于特定的可信执行环境的随机共识算法,旨在通过利用兼容可信执行环境(TEE)的硬件PoET与基于PoW的共识机制相同,不同的是,密码难题被硬件强制的等待过程代替PoET主要用于HyperledgerSawtooth平台(5)Libra拜占庭容错算法(LibraBFT)LibraBET是专为Libra区块链设计的高效的复制状态机系统,旨在实现可扩展性,支持更多实体基于HotstuffBFT的一种新型BFT算法,在HotStuff的基础上引入活跃机制并提供延时分析6.3.3其他共识算法简介(3)Stellar共识协议联盟链的准入机制6.4联盟链的准入机制6.4什么是准入机制?认证授权准入联盟链区别于公有链的核心就在于它具有一定的准入限制,即参与联盟链网络的节点必须具有明确可识别、可验证的身份。联盟链实现准入的过程本质是身份认证和权限管理的结合,即准入=认证+授权什么是准入机制?认证授权准入联盟链区别于公有链的核心就在于它6.4.1认证与授权的基本概念1.什么是认证?身份认证就是通过某种凭据验证用户的身份,即“自己证明自己是自己”。一般凭据有三类:用户知道的信息:只有用户本人知道,而其他人不知道的信息;用户拥有的东西:只有用户本人持有,而其他人没有的东西;用户本身的特征:属于用户的独有属性——视网膜、指纹等2.什么是授权?授权以认证为基础。授权是确定经过身份验证的用户是否可以访问特定资源的过程。通过授权后,验证用户拥有访问特定信息的权限。6.4.1认证与授权的基本概念1.什么是认证?6.4.1认证与授权的区别认证授权确认用户身份是否真实可信确定用户是否有进行特定数据操作的权限是验证用户凭据以获得用户访问权限的必备过程是验证是否允许访问的过程身份验证通常需要用户名和密码授权所需的身份验证因素可能有所不同,具体取决于安全级别身份认证是授权的第一步授权在成功验证后完成案例:特定大学的学生在访问大学官网网址的学生链接之前需要进行认证,这称为身份认证案例:确定成功认证后的学生有权在大学网站上执行哪些操作,称为授权6.4.1认证与授权的区别认证授权确认用户身份是否真实可信6.4.2联盟链中的认证机制认证的内容对用户身份的简单认证用户参与交易活动的全流程认证认证的机制
联盟链对用户身份进行认证的基本原理是基于密钥的数字证书机制基本流程:每个参与网络的用户通过向特定机构申请,获得一个包含一对代表用户身份密钥的数字身份证书,该证书和其中的密钥是用来验证用户身份的主要凭据6.4.2联盟链中的认证机制认证的内容6.4.3联盟链中的授权机制授权的内容对节点进行身份认证后,基于认证结果给予节点一定的授权,即为联盟链的授权,包含两种情况:给予节点简单的网络或通道接入权给予节点预先设定的角色权限,节点以该角色身份参与网络,同时具有与该角色绑定的权限授权的机制授予新节点权限基于公钥的节点授权基于证书
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江国企招聘2025宁波宁海传媒集团下属公司招聘7人笔试参考题库附带答案详解
- 菏泽2025年菏泽市市直事业单位引进87名高层次急需紧缺人才笔试历年参考题库附带答案详解
- 信阳师范大学《工程机械液压传动》2023-2024学年第二学期期末试卷
- 宿迁泽达职业技术学院《炎黄服饰文化产品设计》2023-2024学年第二学期期末试卷
- 安徽邮电职业技术学院《场馆经营与管理》2023-2024学年第二学期期末试卷
- 河北资源环境职业技术学院《工商行政管理》2023-2024学年第二学期期末试卷
- 贵州体育职业学院《工科大学化学-物理化学(一)》2023-2024学年第二学期期末试卷
- 北京理工大学珠海学院《数字取证技术》2023-2024学年第二学期期末试卷
- 眉山药科职业学院《冲压工艺与模具设计》2023-2024学年第二学期期末试卷
- 湖北黄冈应急管理职业技术学院《预测与决策》2023-2024学年第二学期期末试卷
- 民法典知识题库110题(含答案)
- 小学数学小升初小升初专题复习小升初专题复习
- GB/T 4942.1-2001旋转电机外壳防护分级(IP代码)
- GB/T 24675.2-2009保护性耕作机械深松机
- GB/T 224-2008钢的脱碳层深度测定法
- 中等职业学校艺术课程标准(2020年版)(word精排版)
- GB/T 1355-2021小麦粉
- 无人机结构与系统-第1章-无人机结构与飞行原理课件
- (完整)中小学教师高级职称专业水平能力试题库及答案(通用版)
- 2023年STD温盐深剖面仪行业分析报告及未来五至十年行业发展报告
- 护理管理中的组织沟通课件
评论
0/150
提交评论