CN110727731A 区块链网络中加入节点的方法和区块链系统 (阿里巴巴集团控股有限公司)_第1页
CN110727731A 区块链网络中加入节点的方法和区块链系统 (阿里巴巴集团控股有限公司)_第2页
CN110727731A 区块链网络中加入节点的方法和区块链系统 (阿里巴巴集团控股有限公司)_第3页
CN110727731A 区块链网络中加入节点的方法和区块链系统 (阿里巴巴集团控股有限公司)_第4页
CN110727731A 区块链网络中加入节点的方法和区块链系统 (阿里巴巴集团控股有限公司)_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

区块链网络中加入节点的方法和区块链系统本申请实施例公开了一种区块链网络中加中已有共识节点的编号的基础上为所述待添加22.如权利要求1所述的方法,其中,所述添加节点的交易请求包括调用合约的交易请所述待添加节点向连接的一个已有节点发出同步请求,本地共识节点列表中的共识节点标识与当前视图中3本地共识节点列表中的激活的共识节点数量与当前视图中的激活的共识节点数量存本地共识节点列表中激活的的共识节点标识与当前视图中激活的共识节点标识存在第一已有共识节点,用于接收添加节点的交17.如权利要求16所述的区块链系统,其中,所述调用的合约包括创世合约或系统合4所述待添加节点向连接的一个已有节点发出同步请求,反馈的相同的最大区块号与本地最大区块号一致本地共识节点列表中的共识节点标识与当前视图中本地共识节点列表中的激活的共识节点数量与当前视图中的激活的共识节点数量存本地共识节点列表中激活的的共识节点标识与当前视图中激活的共识节点标识存在56[0028]区块链一般被划分为三种类型:公有链(PublicBlockchain),私有链(Private有链则相反,该网络的写入权限由某个组织或者机构控制,数据读取权限受组织/机构规7[0034]创建智能合约和调用智能合约的示意图如图3所示。以太坊中要创建一个智能合[0036]区块链技术区别于传统技术的去中心化特点之一,就是在各[0037]以PBFT算法为例,有一些已知的结合PBFT实现动态加入节点的尝试。例如《DynamicPracticalByzanti了在基于PBFT算法情况下如何让节点能够动态的加入区块链网络,需要一个证书授权8[0040]图4示出了传统的PBFT算法的流程图。该算法是MiguelCastro(卡斯特罗)和[0041]而且,所有的副本(replica)在一个被称为视图(View)的轮换过程(succession[0046]4.客户端需要等待f+1个不同副[0049]2.(PRE-PREPARE预准备阶段)主节点0收到客户端请求(或一组客户端的请求requests)后,对requests排序(对于一组客户端请求而言)并打包为消息m后,发送pre-3,节点3例如是因为宕机而无法广播的坏节点。而且,每一节点还接收其他节点广播的prepare消息。每一节点将自己发送的prepare消息(代表自己的认可)和收到的prepare消息(代表其它节点的认可)都添加到本地Log中。如果某一节点接收到来自不同节点的[0051]4.(COMMIT提交阶段)参与共识节点中的每一个在进入prepared状态后,发送9[0052]5.(REPLY响应阶段)所有参与共识的节点中的每一个在本地状态机中顺序执行pre-prepare消息m中的一个request或一组有序requests,并返回应答消息reply至由客户端发起,进而针对客户端发起的RE[0055]在联盟链场景中,共识过程可以由某个节点发起,即主要包括上述图4中的PRE-一定量的交易后发起PBFT共识,即图4过程中的REQUEST并不直接导致PRE-PREPARE阶段的Replica1可能由于网络延迟还没有对proposem5进入committed状态,而是prepared状需要把处于prepared状态的proposem5重发一遍,让Replica1-3执行完毕,才能与Replica1-3在新视图V+1中对新的消息m6的执行是在与replica0不同的状态上开始的,消息的集合;P是可选项,如果有则表示当前发出VIEW-CHANGE消息的副本节点已经达到prepared状态的若干个消息的集合(对应每个prepared状态的<v,n,d>,包括pre-prepare[0063]1.选取V中最小的stablecheckpoint编号min-s有共识节点可以接收该请求。所述请求例如可以是一个客户端发起的添加节点的交易请[0071]第一已有共识节点,可以通过接收添加节点的交易请求而触发添加节点的[0072]添加节点的交易请求一般会在区块链网络中基于底层的对等(peer-to-peer,地节点列表中具有相同的编号,既不会出现在一个共识节点的本地节点列表中节点m编号共识节点的基础上将所述待添加节点的标识添加至列表尾部,并顺序编号。这样,至少Quorum数量的已有共识节点本地维护的共识节点列表中也已具有了相同顺序的待添加节容。所述共识节点列表,在一些区块链项目中,可以从逻辑上存在于世界状态(world添加的节点m,各已有共识节点在本地维护的共识节点列表基础上,执行本申请实施例的拟机中执行指明的创世合约/系统合约中的方法,该方法定义了按照某一属性对本地节点[0079]经过本申请实施例的过程,待添加节点会加入区块链网络并成为其中的一个节行的从创世区块到最新区块链的交易与其它共识节点从创世区块到最新区块中的交易相加节点后续成为共识节点后才能与其它已有共识节点保持相同的初始状态来执行后续的[0083]在前述的PBFT三阶段过程中,每个Replica在发出一个消息或者接收到其它节点发来的消息(包括pre-prepare、prepare、commit消息)时,都会在Replica本地内存的执行完1条propose,向其它节点发出广播,就是否可以清除Log在全网达成一致。每个checkpoint消息达到Quorum数量,则清除日志中n之前的所有消息(包括pre-prepare、[0084]前述提到的待添加节点可以通过checkpoint消息来判断是否完成了区块数据的与待添加节点自身同步到的区块中的最大区块号一致时,可以确定完成了所有区块的同数节点反馈的相同的最大区块号与本地最大区块号一[0091]其中,视图切换过程中的R(即视图切换过程中的副本集合个数)为包括待添加节[0092]类似前面所述,已有共识节点可以向其他副本节点广播<VIEW-CHANGE,v+1,n,C,P,i>消息。n是最新的stablecheckpoint(稳定检查点)的编号,C是2f+1个验证过的以指明调用的创世合约/系统合约中的方法,并可以包括节点标识,节点IP地址,节点端口[0097]类似的,激活节点的交易请求一般会在区块链网络中基于底层的对等(peer-to-有共识节点会检测到本地共识节点列表中的激活的共识节点数量与当前视图中的激活的[0099]需要说明的是,激活节点的交易请求通过共识后会形成一个新的区块(该区块中还可能包括除所述激活节点的交易以外的其它交易)。该新生成的区块经过共识后存在于至少Quorum个已有共识节点上,而并不存在于所述刚激活的节点(即之前的待添加节点)。[0121]所述待添加节点802向连接的一个已有节点发出同步请求,从该已有节点上获取[0125]本地共识节点列表中的共识节点数量与当前视图中的[0128]其中,所述待添加节点802同步完成区块链上的区块数据后发送激活节点的交易[0130]本地共识节点列表中的激活的共识节点数量与当前视图中的激活的共识节点数[0131]本地共识节点列表中激活的的共识节点标识与当前视图中激活的共识节点标识[

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论