一种拜占庭容错的方法及其通证经济的治理系统技术方案

技术编号:19098446 阅读:36 留言:0更新日期:2018-10-03 02:37
本发明专利技术公开了一种拜占庭容错的方法及其通证经济的治理系统,方法包括:拟参与区块链运营的节点委托自己的权益到区块链网络节点,得到权益值;构建权益表,其长度是节点总数系数倍,每个节点的信息在权益表中占据长度,和其权益值成正比;用随机函数产生随机数在权益表中选数值从而选若干节点参与运营;参与运营的节点分配不同的工作提案、背书、确认从而完成共识;如有备选区块得到所述确认节点的确认,所有共识节点保存完成共识的区块。系统包括区块链网络、控制单元、侦测单元、运营单元、分配单元,侦测不同节点算力分配不同工作并据此分配利益。以综合考虑权益占比,算力,投入运维成本情况并合理分配权重和利益。

【技术实现步骤摘要】
一种拜占庭容错的方法及其通证经济的治理系统
本专利技术涉及一种区块链(Blockchain)网络的共识算法(consensusmechanism),尤其涉及一种拜占庭容错(ByzantineFaultTolerance,BFT)方法及其通证经济的治理系统。
技术介绍
目前,区块链技术得到了广泛应用,其去中心化的模式保证了数据不易被篡改,从而提升了安全性。在实际应用中,包含多个节点(节点可认为是区块链中参与处理业务的设备)的区块链网络能够为客户端提供相应的业务服务。具体而言,区块链网络中的各节点将针对客户端的业务请求进行处理,并向客户端反馈处理结果,在此过程中,独立运行的各节点所生成的处理结果有可能不一致,为了保证客户端能够接收到正确的处理结果,故采用共识算法以使各节点在预设规则下通过交互对某些数据、行为或流程达成一致。常见的共识算法包括实用拜占庭容错(PracticalByzantineFaultTolerance,PBFT)算法、授权拜占庭容错(DelegatedByzantineFaultTolerance)算法等。但上述拜占庭容错算法没有考虑通证(token)所有者节点,参与运营节点和普通节点的权重和分润问题,其中,分润指通过一定的规则将共识网络的收益分配给特定的节点。通证所有者是利益相关人,和区块链网络之间拥有更多的利益联系;参与运营节点参与了区块链网络的更多工作,他们和普通节点拥有相同的权重和分润是不适宜的。在目前的很多区块链网络和拜占庭容错算法中,经常会出现算力较强的矿工节点、权益较大的节点和无关的节点获得较高的权重和分润问题,例如受委托挖矿的矿工利用算力占据网络大量资源,而其根本不在意区块链网络的运营情况,而利益相关人却没有足够的权重,而权重决定了其成为记账节点的几率,同时权重还也是分润比例的基础。此外,区块链技术基于计算机网络技术和用户参与,由于计算机和网络都不可避免的有故障存在,而参与一种经济模型的人,不可避免的会理性的自私的获取不应得的权益,所以区块链网络中不可避免的会有停止工作的节点和因为各种目的而作恶的节点。传统的拜占庭容错算法中,区块链网络中超过1/3的节点停止工作后,区块链网络将无法提供服务,当有1/3的节点联合作恶,且其他所有的节点若恰被分割为两个孤岛,会使区块链产生分叉。因此,有必要开发一种新型拜占庭容错方法和通证经济的治理系统以解决上述技术问题。
技术实现思路
本专利技术所要解决的技术问题是:传统拜占庭算法超过1/3的节点停止工作后无法工作,以及现有区块链网络部分比例的通证所有者节点,参与运营节点和普通节点的权重和分润不合理导致节点参与积极性受挫,降低投入乃至退出网络,造成区块链网络的退化。为解决上述技术问题,本专利技术提供了一种拜占庭容错方法,包括如下步骤;步骤S1:拟参与区块链运营节点委托自己的权益到区块链网络,得到权益值,并成为运营节点,所述区块链网络包括共识网络和非共识网络,所述共识网络中包含运营节点;步骤S2:根据权益值构建权益表,所述权益表的长度的数值是所述运营节点的数量的系数倍,所述系数为正数,每个所述运营节点的信息各自在所述权益表中占据权益表长度,占据的权益表长度和所述权益值成正比,每个所述运营节点的信息占据的权益表长度互无重合部分,且所有所述运营节点的信息占据的长度之和小于或等于所述权益表的总长度,所述运营节点拥有自身占据的长度和在所述权益表总长度中的坐标范围;步骤S3:用随机数发生函数产生随机数,所述随机数为多位,将所述随机数的选出部分位数作为长度数值,若所述长度数值落在一个在所述运营节点所占据的长度坐标范围内,则该节点被选中成为功能节点;步骤S4:按照步骤S3用所述随机数的不同部分位数从所运营节点中选中多个节点作为功能节点,所述功能节点分配不同工作成为提案节点、背书节点或确认节点;所述提案节点构建新的备选区块,签名后在所述区块链网络中广播;所述背书节点对收到的备选区块进行验证并背书,签名后在所述区块链网络中广播;所述确认节点对得到所述背书节点的背书的备选区块进行确认,签名后在区块链网络中广播;步骤S5:如有备选区块得到所述确认节点的确认,则所述备选区块完成共识,成为完成共识的区块,所述区块链网络中的所有运营节点保存所述完成共识的区块。本专利技术的有益效果在于:通过在共识前引入权益抵押过程,使区块链网络中的共识网络正常工作的节点比例提高,因为其是主动申请参与共识网络,为停机的节点可能性较少。同时其委托权益,增加了节点作恶的成本,并且作恶后更可能被追溯、处罚。同时根据其委托的权益分配不同的权益值达到不同权重,调动节点参与区块链网络的积极性。优选的,所述步骤S2中,所述权益表由表项构成,每个表项可存储一个运营节点的信息,所述权益表的长度单位是表项的个数,即表项数。其有益效果在于:方便计算以及符合计算机存储逻辑。优选的,所述步骤S3和S4中,所述部分位数的区间数值与所述权益表的长度的数值相同。其有益效果在于:方便计算和选取。优选的,所述步骤S2中,所述权益表的表项数等于所述运营节点的数量和所述系数的乘积,所述权益表的表项分别包含一个运营节点的信息,包含一个运营节点信息的表项数量和其委托的权益成正比。其有益效果在于:方便计算,和分配不同节点的权益占比,类似企业股份中的拆股作用。优选的,所述区块链网络运营中,所述运营节点可以退出或被踢出,所述共识网络在所述区块链网络中选择新的所述拟参与区块链运营节点参与区块链运营,是否进行所述退出由运营节点自己决定,是否踢出一个运营节点由权益表中的其他节点投票决定。其有益效果在于:修正,减少停止工作节点的比例,增加惩罚机制,增加节点作恶的成本。优选的,所述权益表中所述包含一个运行节点信息的表项不连续,每次选择运营节点前,用洗牌算法对所述权益表中全部所述表项进行洗牌,以打乱原有表项的排序。其有益效果在于:使共识节点产生更加随机以避免被恶意的用户预测并攻击。优选的,其特征在于,所述确认节点加入背书功能,成为背书节点。其有益效果在于:适用于小型网络节点数量紧张的情况,或减少共识所需的节点和步骤以增加共识速度。优选的,所述区块链网络中的每个节点维护权益表。其有益效果在于:公正透明的向各节点展示权重和收益基础,有利于网络健康发展,同时增加冗余备份以增加权益表的安全性。优选的,将所述拟参与区块链运营节点的运维成本、算力投入、委托的权益计算权益值,其占据的权益表长度和权益值成正比。其有益效果在于:较为平衡的分配权重,综合考虑各种情况,调动节点参与的积极性。本专利技术还提供了一种基于所述的拜占庭容错方法的通证经济的治理系统,其特征在于,包含区块链网络、控制单元、侦测单元、运营单元、分配单元,所述权益为通证,区块链网络运营需要不同的功能节点,所述功能节点负责区块链网络中的不同工作,所述功能节点根据工作不同有不同的算力需求,所述控制单元计算不同功能节点所需的最低算力发送给所述侦测单元,所述侦测单元侦测所述参与区块链运营节点的算力将符合条件的节点编为运营节点,并将信息反馈给所述控制单元,所述控制单元收到所述侦测单元反馈的信息计算不同功能节点的算力需求发送给所述运营单元,所述运营单元根据需求所述区块链运营节点分配不同工作成为不同功能节点并计算其工作情况反馈给本文档来自技高网
...

【技术保护点】
1.一种拜占庭容错方法,其特征在于,包括:步骤S1:拟参与区块链运营节点委托自己的权益到区块链网络,得到权益值,并成为运营节点,所述区块链网络包括共识网络和非共识网络,所述共识网络中包含运营节点;步骤S2:根据权益值构建权益表,所述权益表的长度的数值是所述运营节点的数量的系数倍,所述系数为正数,每个所述运营节点的信息各自在所述权益表中占据权益表长度,占据的权益表长度和所述权益值成正比,每个所述运营节点的信息占据的权益表长度互无重合部分,且所有所述运营节点的信息占据的长度之和小于等于所述权益表的总长度,所述运营节点拥有自身占据的长度和在所述权益表总长度中的坐标范围;步骤S3:用随机数发生函数产生随机数,所述随机数为多位,将所述随机数的选出部分位数作为长度数值,若所述长度数值落在一个在所述运营节点所占据的长度坐标范围内,则该节点被选中成为功能节点;步骤S4:按照步骤3用所述随机数的不同部分位数从所运营节点中选中多个节点作为功能节点,所述功能节点分配不同工作成为提案节点、背书节点或确认节点,所述提案节点构建新的备选区块,签名后在所述区块链网络中广播,所述背书节点对收到的备选区块进行验证并背书,签名后在所述区块链网络中广播,所述确认节点对得到所述背书节点的背书的备选区块进行确认,签名后在区块链网络中广播;步骤S5:如有备选区块得到所述确认节点的确认,则所述备选区块完成共识,成为完成共识的区块,所述区块链网络中的所有运营节点保存所述完成共识的区块。...

【技术特征摘要】
1.一种拜占庭容错方法,其特征在于,包括:步骤S1:拟参与区块链运营节点委托自己的权益到区块链网络,得到权益值,并成为运营节点,所述区块链网络包括共识网络和非共识网络,所述共识网络中包含运营节点;步骤S2:根据权益值构建权益表,所述权益表的长度的数值是所述运营节点的数量的系数倍,所述系数为正数,每个所述运营节点的信息各自在所述权益表中占据权益表长度,占据的权益表长度和所述权益值成正比,每个所述运营节点的信息占据的权益表长度互无重合部分,且所有所述运营节点的信息占据的长度之和小于等于所述权益表的总长度,所述运营节点拥有自身占据的长度和在所述权益表总长度中的坐标范围;步骤S3:用随机数发生函数产生随机数,所述随机数为多位,将所述随机数的选出部分位数作为长度数值,若所述长度数值落在一个在所述运营节点所占据的长度坐标范围内,则该节点被选中成为功能节点;步骤S4:按照步骤3用所述随机数的不同部分位数从所运营节点中选中多个节点作为功能节点,所述功能节点分配不同工作成为提案节点、背书节点或确认节点,所述提案节点构建新的备选区块,签名后在所述区块链网络中广播,所述背书节点对收到的备选区块进行验证并背书,签名后在所述区块链网络中广播,所述确认节点对得到所述背书节点的背书的备选区块进行确认,签名后在区块链网络中广播;步骤S5:如有备选区块得到所述确认节点的确认,则所述备选区块完成共识,成为完成共识的区块,所述区块链网络中的所有运营节点保存所述完成共识的区块。2.如权利要求1所述的拜占庭容错方法,其特征在于,所述步骤S2中,所述权益表由表项构成,每个表项可存储一个运营节点的信息,所述权益表的长度单位是表项的个数,即表项数。3.如权利要求2所述的拜占庭容错方法,其特征在于,所述步骤S2和S3中,所述部分位数的区间数值与所述权益表的长度的数值相同。4.如权利要求2所述的拜占庭容错方法,其特征在于,所述步骤S2中,所述权益表的表项数等于所述运营节点的数量和所述系数的乘积,所述权益表的表项分别包含一个特定所述选出参与区块链运营的节点的信息,包含一个的特定节点信息的表项总的数量和其委托的权益成正比。5.如权利要求1所述的拜占庭容错方法,其特征在于,所述区块链网络运营中,所述运营节点可以退出或被踢出,所述共识网络在所述区块链网络中选择新的所述拟参与区块链运营节点参与区块链运营,是否进行所述退出由运营节点自己决定,是否踢出一个运营节点由权益表中的其他节点投票决定。6.如权利要求4所述的拜占庭容错方法,其特征在于,权益表中所述包含一个的特定节点信息的表项不连续,每次选择运营节点前,用洗牌算法对所述权益表中全部所述表项进行洗牌,以打乱原有表项的排序。7.如权利要求1所述的拜占庭容错方法,其特征在于,所述确认节点加入背书功能,成为背书节点。8.如权利要求1所述的拜占庭容错方法,其特征在于,所述区块链网络中的每个节点维护所述权益表。9.如权利要求1所述的拜占庭容错方法,其特征在于,根据所述拟参与区块链运营节点的运维成本、算力投入、委托的权益计算权益值。10.一种基于如权利要求1-9任意一项所述的拜占庭容错方法的通证经济的治理系统,其特征在于,包含区块链网络、控制单元...

【专利技术属性】
技术研发人员:丛宏雷胡凝肖旻周强周喜司帅帅
申请(专利权)人:上海分布信息科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1