CN108961017B - 一种区块链共识机制和基于该共识机制的区块链系统 - Google Patents
一种区块链共识机制和基于该共识机制的区块链系统 Download PDFInfo
- Publication number
- CN108961017B CN108961017B CN201810643702.XA CN201810643702A CN108961017B CN 108961017 B CN108961017 B CN 108961017B CN 201810643702 A CN201810643702 A CN 201810643702A CN 108961017 B CN108961017 B CN 108961017B
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- accounting
- assets
- block chain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/08—Auctions
Abstract
本发明实施例公开了一种区块链共识机制和基于该共识机制的区块链系统,涉及区块链领域。该机制包括:响应竞争记账节点事件,获取参与竞争的各节点的投标金额;比较所述投标金额,根据比较结果确定出记账节点,由所述记账节点产生指令发送给其他节点执行;从所述记账节点的账户中减去所述记账节点所投注金额的资产。本发明实施例提供一种区块链共识机制和基于该共识机制的区块链系统,解决了区块链的适用场景非常有限的问题。
Description
技术领域
本发明实施例涉及区块链领域,尤其涉及一种区块链共识机制和基于该共识机制的区块链系统。
背景技术
共识机制是指,区块链事务达成分布式共识的算法。
区块链是一种去中心化的分布式账本系统,它可以用于登记和发行数字化资产、产权凭证、积分等,并以点对点的方式进行转账、支付和交易。区块链系统与传统的中心化账本系统相比,具有完全公开、不可篡改、防止多重支付等优点,并且不依赖于任何的可信第三方。
目前主流的共识机制主要针对的区块链事务是转账、支付和交易等事务,从而使得区块链的适用场景非常有限。
发明内容
本发明实施例提供一种区块链共识机制和基于该共识机制的区块链系统,以解决区块链的适用场景非常有限的问题。
第一方面,本发明实施例提供了一种区块链共识机制,该机制包括:
响应竞争记账节点事件,获取参与竞争的各节点的投标金额;
比较所述投标金额,根据比较结果确定出记账节点,由所述记账节点产生指令发送给其他节点执行;
从所述记账节点的账户中减去所述记账节点所投标金额的资产。
第二方面,本发明实施例还提供了一种区块链系统,该系统包括至少一个底层组织,
每个所述底层组织由设定数量的底层组织节点构成,用于执行不同任务,其中所述底层组织节点基于本发明实施例中任一所述的共识机制实现数据同步共识。
本发明实施例通过投标金额确定记账节点,在确地记账节点后将记账节点投标的资产从其账户中扣除,从而实现利用支付投标金额的资产的方式换取一次记账权,实现对各节点的指挥。进而实现了指挥权的流动,而非由统一的后台系统支配。
换而言之,也就是基于该共识机制可以实现通过发送指令给其他节点执行的事务的处理。从而增加区块链技术的应用场景,解决区块链技术适用场景有限的问题。
附图说明
图1为本发明实施例一提供的一种区块链共识机制的执行流程图;
图2是本发明实施例二提供的一种区块链共识机制的执行流程图;
图3是本发明实施例三提供的一种区块链共识机制的执行流程图;
图4是本发明实施例四提供的一种区块链共识机制的执行流程图;
图5是本发明实施例五提供的区块链共识机制的执行流程图;
图6是本发明实施例六提供的一种区块链系统的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种区块链共识机制的执行流程图。本实施例可适用于集群在不受后台系统控制,自动协作完成某项任务的情况。可选的,集群中的服务实体可以是任意具有通信功能的设备。通常单个服务实体称为节点,多个节点通过局域网或公网连接,但也有其它的可能连接方式。该共识机制可以由区块链关联的节点(也即服务实体)来执行。参见图1,本实施例提供的区块链共识机制包括:
S110、响应竞争记账节点事件,获取参与竞争的各节点的投标金额。
竞争记账节点事件可以由设定时间点触发,例如每隔50毫秒自动触发一次竞争记账节点事件。可选的,也可以在所有节点执行完成记账节点发送的指令后,触发竞争记账节点事件。竞争记账节点事件的触发方式可以根据实际场景需求进行设定,本实施例对此并不进行任何限定。
参与竞争的各节点是参与竞争记账节点的节点。投标金额是参与竞争的节点为当一次记账节点所愿意支付的资产,也即参与竞争的节点为换取一次记账权所愿意支付的资产。
此处对资产的形式不做限定,可以是任意形式的资产,例如数字化资产、产权凭证、积分或能量等形式。
S120、比较所述投标金额,根据比较结果确定记账节点,由所述记账节点产生指令发送给其他节点执行。
具体的,可以通过直接比较所述投标金额,将最大投标金额对应的节点确定为记账节点。类似的,也可以根据投标金额占总投标金额的比重,将比重最大的投标金额对应的节点确定为记账节点。
但是,直接比较投标金额的方式存在如下问题:若所有节点不愿意竞争记账节点,则无法实现记账节点的确定。以及,有些节点因为资产较少,很难竞争成功作为记账节点。
因此,比较所述投标金额,从所述节点中确定出记账节点可以包括:
结合统计得到的所述节点的所得票数和投标金额,从节点中确定出记账节点。
节点被投票结果的结合可以达如下效果:即便所有节点不愿意支付资产竞争记账节点,也可以通过投票选出记账节点。因为考虑了节点的被投票结果,所以即使有些节点因为资产较少,也有通过头片成功作为记账节点的可能。
具体的,每个节点都具有1张选票。节点可以将该选票投给一个节点,也可以对该选票进行拆分,分别投给多个节点。例如,节点将选票拆分为0.5个选票、0.3个选票和0.2个选票,并将0.5个选票投给本节点,并将0.3个选票投给第一节点,将0.2个选票投给第二节点。
将选票拆分使得节点可以投票给多个节点,更能准确反应节点的投票意愿,投票结果也就更准确。示例性的,第三节点想选举第一节点和第二节点,第四节点想选第一节点和第三节点,如果选票不可以拆分,那么第三节点在比较后将选票投给了第二节点,第四节点在比较后将选票投给了第三节点。如此下来,即便第三节点和第四节点都想选第一节点,但是投票结果中第一节点仍为0票。
继续以上述示例为例,如果选票可以拆分,那么第三节点将0.4的选票投给第一节点,将0.6的选票投给第二节点;第四节点将0.4的选票投给第一节点,将0.6的选票投给第三节点。如此下来,投票结果为第一节点0.8票,第二节点和第三节点均为0.6票。由此可见,选票的拆分能更准确的反应投票节点的意愿。S130、从所述记账节点的账户中减去所述记账节点所投注金额的资产。
具体的,上述记账节点的确定过程可以描述为:
参与竞争记账权的节点向本网络内的其他节点广播本节点的投标金额;
本网络内的各节点对接收的所有参与竞争指挥权的节点的投标金额进行比较,根据比较结果确定记账节点。
进一步的,本网络内的各节点对接收的所有参与竞争指挥权的节点的投标金额进行比较,根据比较结果确定记账节点还可以描述为:
本网络内的各节点接收所有参与竞争指挥权的节点的投标金额,并向网格内各节点投票,同时将投票结果广播给其他节点;
各节点根据所有节点的投注金额和统计的所有节点所得票数,确定记账节点,其中没有参与竞争记账权的节点的投标金额可以默认为0。
需要说明的此处的投票可以是向参与竞争记账权的节点投票,也可以是向没有参与竞争记账权的节点投票。
本实施例中,至少有一个节点中存储有需要完成的任务,节点在成功竞争为记账节点(也即获得一次记账权)时,节点会根据自身状态和需求完成的任务生成指令发送给其他节点,以使其他节点协助共同完成任务。
示例性的,将一条生产线上的每个加工设备看作一个节点,每个节点中存储有其需要完成的任务。当其中一设备在设定时间内处于“饥饿”状态(也即设备作业速度大于产品的供给速度)时,设备会竞争记账权,并在成功竞争到记账权后,向其他设备发送提速指令。其他设备在接收到提速指令后,结合自身加工的实际情况进行提速,并将提速情况广播给除自身以外的其他设备。
其中,在设备竞争记账权时会向其他设备广播投标金额,并在成功竞争到记账权后从其账户中扣除投标金额的资产。在其他设备成功执行提速指令后,将上述投标金额按设定资产分配规则添加至成功执行提速指令的设备的账户中。
需要说明的是,资产扣除和添加过程可发生在之后的区块中。因为如果确定的记账节点不唯一,那么直接扣除投标金额资产的方式将导致对节点资产的误调整。所以,在之后的区块中实现对资产的调整具体可以描述为:当因为确定的记账节点不唯一导致的区块链分岔为多个分支时,按照设定分支确定规则确定正确的分支,并根据正确的分支从不唯一的多个记账节点中确定出正确的记账节点;根据正确的记账节点对网络内的节点的资产进行扣除和添加。
如果资产扣除和添加的过程发生在之后的区块中,那么可能存在记账节点利用未扣除的资产进行下一次记账权的竞争的问题。为解决该问题,在节点成功竞争为记账节点后,对记账节点账户中记账节点所投标金额的资产进行冻结。
为提高资产分配的准确率,各节点也可以对记账节点确定的资产扣除和添加的结果进行验证。在验证成功后,由记账节点将各节点扣除或添加后的资产记录在区块中。
继续上述示例,其他设备在接收到提速指令后,结合自身加工的实际情况进行提速包括:其他设备在接收到提速指令后,会判断自身的作业速度是否拉低了整体的作业速度。若拉低了整体的作业速度,则进行提速,否则不进行提速。
其中,设备自身的作业速度是否拉低了整体的作业速度的判断可以描述为:识别等待设备加工的产品的数量;若数量大于设定产品数量阈值,则确定设备自身的作业速度拉低了整体的作业速度。等待设备加工的产品的数量的识别可以通过采集到的等待设备加工的产品的图像识别,也可以通过重力传感器获取到的等待设备加工的产品的重量确定,还可以有其他确定方式,此处不做限制。
上述示例也仅为实际场景中的一种应用的说明,并不起任何限定作用。根据上述内容的记载,本领域技术人员有动机将该方法应用于不同场景,本实施例对应用场景不做任何限定。
本发明实施例通过投标金额确定记账节点,在确地记账节点后将记账节点投标的资产从其账户中扣除,从而实现利用支付投标金额的资产的方式换取一次对各节点的指挥权。同时实现了指挥权的流动,而非由统一的后台系统支配。
换而言之,也就是基于该共识机制可以实现通过发送指令给其他节点执行的事务的处理。从而增加区块链技术的应用场景,解决区块链技术适用场景有限的问题。
为避免区块链的分岔,当确定的记账节点有多个时,依据所得票数、自身资产的多少以及加入网络的时间对记账节点进行过滤,以保证记账节点的唯一性。
具体的,当确定出多个记账节点时,优先选择比较多个记账节点的所得票数,将所得票数最高的记账节点作为最终的记账节点,其他记账节点作为普通节点;如果仍有多个记账节点,那么根据多个记账节点自身的资产,将资产最多的记账节点作为最终的记账节点,将其他记账节点作为普通节点;如果仍有多个记账节点,那么根据加入网络的时长,将最早加入网络的记账节点作为最终的记账节点,将其他记账节点作为普通节点。
其中,普通节点是除记账节点外的其他节点。根据应用场景的不同,上述对记账节点的筛选条件可以根据实际需求设定。本实施例对此并不进行限定。
为保证新加入的节点被网络中的其他节点获知其存在。从加入网络开始,新加入节点不进行任何投票和记账节点的竞争;新加入节点向全网广播其初始化资产和加入时间,供网络其他节点更新,直到在加入网络后经历了设定个数的区块生成。
其中,设定个数可以根据实际需要确定。
可选的,节点在接收到新加入节点的广播消息后,返回一响应消息给新加入的节点。在新加入的节点收到超过设定响应数量的响应消息后,新加入的节点开始进行正常的投票和竞争。
为实现对确定的记账节点的进一步确认,各节点可以将本节点确定的记账节点发送给其他节点。各节点在接收到的记账节点的确定结果后进行统计,将统计结果中最多节点确定的记账节点作为最终的记账节点。
进一步的,由所述记账节点产生指令发送给其他节点执行包括:
基于已生成的区块链,向前追溯设定区块个数的区块,将追溯到的区块作为待结算区块;
从生成所述待结算区块的旧记账节点的账户中减去所述旧记账节点为竞争记账节点所投标金额的资产,并将所述资产添加至相关节点的账户中;
根据节点需要处理的事务生成指令,并根据所述指令生成区块,其中,所述区块至少包括所述指令、各节点的当前状态和各节点账户中的资产,各节点的当前状态是在节点执行所述区块链中上一个区块所包括的指令后的状态;
将所述区块发送给除所述记账节点以外的其他节点,使得所述其他节点执行所述区块中的指令。
其中,设定区块个数可以根据实际需要限定。
为避免多次通信带来的资源消耗,典型的,在节点投票时,节点将本节点投票的结果和本节点的当前状态一起打包发送给其他节点。
实施例二
图2是本发明实施例二提供的一种区块链共识机制的执行流程图。本实施例是在上述实施例的基础上提出的一种可选方案。参见图2,本实施例提供的区块链共识机制包括:
S210、响应竞争记账节点事件,获取参与竞争的各节点的投标金额。
S220、结合统计得到的节点的所得票数和投标金额,确定节点的得分。
典型的,所述得分按照如下公式确定,
其中,Ci为i节点的得分,αij是其他节点投给i节点的票数,Ri是i节点的投标金额,表示其他节点投给i节点的票数之和,也即i节点所得总票数。表示各节点投标金额之和。μ是调节投标金额和所得票数的均衡系数,该系数用于维持系统内投票和投标金额在确定记账节点中的比重,该系数可以根据实际需求设定。
S230、若所述节点的得分大于设定得分阈值或所述节点的得分最大,则将所述节点作为记账节点。
其中,设定得分阈值可以根据实际需要设定。
典型的,在确定记账节点之后还包括:若记账节点为多个,则对记账节点进行过滤,确定唯一的记账节点。
S240、从所述记账节点的账户中减去所述记账节点所投标金额的资产。
典型的,上述方法可以适用于这样一种场景,所有节点都不愿意支付资产换取指挥权。这时可以根据各节点所得票数确定出记账节点,避免无法确定记账节点的情况发生。该情况中,因为所有节点都不愿意支付资产换取指挥权,所以也就没有资产的变更。因此,也无需对给节点账户中的资产进行更新。
本发明实施例的技术方案,通过结合统计得到的节点的所得票数和投标金额占总投标金额的比重,确定记账节点。
进一步的,在本实施例的基础上,本领域技术人员有动机对记账节点的确定方法进一步改进,以更好的确定记账节点。示例性的,可以将节点所得票数替换为所得票数占总票数的比重。以及根据实际场景,再结合新的考虑因素,以提高指挥界点的确定准确率。
为激励节点积极参与投票,将所述资产添加至相关节点的账户中包括:
根据所述相关节点投给所述旧记账节点的票数占所述旧记账节点所得的总票数的比例,确定添加至所述相关节点账户中的资产数量,其中,所述相关节点是投票给所述旧记账节点的节点;
将所述资产数量的资产添加至所述相关节点的账户中,其中所述相关节点成功执行了所述待结算区块包括的指令。
其中,票数所占比例越大,从所述资产中分发到的资产数量越大。换而言之,投给记账节点的票数越多,其收获到的“报酬”越多。
为避免资产的集中,此处采用对选票进行拆分,将拆分后的选票投给多个节点的形式进行投票。从而增加节点被分得资产的概率。
实施例三
图3是本发明实施例三提供的一种区块链共识机制的执行流程图。本实施例是在上述实施例的基础上提出的一种可选方案。参见图3,本实施例提供的区块链共识机制包括:
S310、响应竞争记账节点事件,获取参与竞争的各节点的投标金额。
S320、判断每个节点每次所投票数是否超过投票值范围。
其中,投票值范围可以根据实际需要设定,也可以由与被投票节点的环境参数和对被投票节点的喜好参数确定。
典型的,投票值范围可以是0至投票数最大值。投票数最大值可以按照如下公式确定:
γij=τF(eij)
γij是i节点投给j节点的票数最大值,τ是由i节点对j节点的喜好参数,F是对于所有节点一致的环境函数,eij是表征i节点和j节点间的环境参数。具体的,该环境参数可以是任意物理参数,例如距离、位置、速度和温度中的至少一个。
典型的,eij具有互推导性,也就是根据已知eij和ekj就可以推导出eik。这样,可以确定出网络内各节点的环境参数,依据环境参数可以计算出节点的投票值范围,根据投票范围判断节点投票数量是否超过投票范围。若投票数量超范围,则可以认为该节点作弊。从而网络内任何节点都无法作弊。
S330、若超过投票值范围,则降低对所述节点的喜好参数。
投票数量超过投票值范围表明该节点作弊,因此降低对该节点的喜好参数。
S340、若所述节点的喜好参数小于设定喜好参数阈值,则删除所述节点。
其中,喜好参数阈值可以根据实际需要确定。不同节点对所述节点的喜好参数可以相同,也可以不同。
当不同节点对所述节点的喜好参数不同时,若超过设定节点数量的节点对所述节点的喜好参数小于设定喜好参数阈值,则删除所述节点。
设定节点数量可以是根据实际需要确定,例如网络内节点总数的2/3。
S350、结合统计得到的节点的所得票数和投标金额,从所述节点中确定出记账节点。
S360、从所述记账节点的账户中减去所述记账节点所投标金额的资产。
可选的,喜好参数的确定还与环境参数有关,例如第一节点在接收到记账节点发出的5秒内到达指定目的地的指令后,若判断出当前位置距离指定目的地的距离无法在5秒内移动实现,则降低对记账节点的喜好参数,可放弃执行该指令。
本发明实施例的技术方案,通过与被投票节点的环境参数和对被投票节点的喜好参数确定投票值范围。根据投票值范围判断每个节点每次所投票数是否超过范围投票。从而避免节点通过超过范围投票实现作弊的情况。
实施例四
图4是本发明实施例四提供的一种区块链共识机制的执行流程图。本实施例是在上述实施例的基础上提出的一种可选方案。参见图4,本实施例提供的区块链共识机制包括:
S410、响应竞争记账节点事件,获取参与竞争的各节点的投标金额。
S420、比较所述投标金额,从所述节点中确定出记账节点,由所述记账节点产生指令发送给其他节点执行。
S430、获取所述记账节点距离上次作为记账节点的时间。
其中,该时间为节点两次成功竞争到记账节点的时间间隔。
S440、根据所述时间确定应缴竞争代价税。
其中,所述时间越短,应缴竞争代价税越多。
具体的,应缴竞争代价税的确定包括:
确定所述记账节点应缴竞争代价税的税率,所述税率按照如下公式确定,
将所述税率乘以所述记账节点的账户中的总资产,得到所述记账节点的应缴竞争代价税。
S450、从所述记账节点的账户中减去所述记账节点所投标金额的资产以及所述竞争代价税。
具体的,从所述记账节点的账户中减去的金额根据如下公式确定,
本发明实施例的技术方案,通过增设应缴竞争代价税的支付,且两次成功竞争到记账节点的时间间隔越短,应缴竞争代价税越多。从而避免独占记账节点的情况。因为独占记账节点本身就意味着中心化。
实施例五
图5是本发明实施例六提供的区块链共识机制的执行流程图。本实施例是在上述实施例的基础上提出的一种可选方案。参见图5,本实施例提供的区块链共识机制包括:
参与竞争的节点广播投标金额;
节点投票并将本节点的投票结果和本节点的当前状态发送给其他节点;
节点接收投票结果,若判断出有节点的投票数超过投票值范围,则降低对该节点的喜好参数,并将降低后的喜好参数广播其他节点;
若节点统计出超过设定数量的节点对某节点的喜好参数小于设定喜好参数阈值,则删除该节点;
根据统计得到的各节点的所得票数和投标金额,确定各节点的得分,并根据得分确定记账节点;
根据当前记账节点距离上次作为记账节点的时间确定应缴竞争代价税;
根据记账节点所投注金额的资产以及所述竞争代价税确定记账节点应支付的资产金额;
将所述记账节点账户中所述资产金额的资产冻结;
基于已生成的区块链,向前追溯设定区块个数的区块,将追溯到的区块作为待结算区块;
从生成所述待结算区块的旧记账节点的账户中减去所述旧记账节点成功竞争为记账节点应支付的上述资产金额的资产;
将该资产按照相关节点投票给所述旧记账节点的票数占所述旧记账节点所得总票数的比例,添加至相关节点的账户中;
记账节点根据节点需要处理的事务生成指令,并根据所述指令生成区块,其中,所述区块包括所述指令、各节点的当前状态和各节点账户中的资产;
其中,节点的当前状态是节点在投票时的状态,该状态实际是在节点执行所述区块链中上一个区块所包括的指令后的状态。
记账节点将所述区块发送给除所述记账节点以外的其他节点,使得所述其他节点执行所述区块中的指令;
所述其他节点在接收到所述区块后对区块进行验证,在验证成功后将所述区块接入所述区块链中。
在本实施例中对上述步骤的执行顺序不做限定,可以根据实际需要进行实际执行顺序的调整。
本发明实施例的技术方案,通过对于有需要借助记账权限对网络内节点发送指令的,允许其使用自身资产竞争记账节点,在成功竞争为记账节点后发送指令给网络内节点。通过增设应缴竞争代价税,避免节点连续竞争记账节点,导致节点独占指挥权的情况。通过将从记账节点账户中扣除的资产添加至成功执行指令的相关节点的账户中,从而实现资产的流转。
实施例六
图6是本发明实施例六提供的一种区块链系统的结构示意图。参见图6,本实施例提供的区块链系统,包括至少一个底层组织1,
每个所述底层组织1由设定数量的底层组织节点11构成,用于执行不同任务,其中所述底层组织节点11基于本实施例中任一所述的共识机制实现数据同步共识。
由于网络存在延时,这种延时在有限的网络范围内还是可以接受的。但是一旦区块链的组成网络复杂起来(也即网络内节点数量较大时),那么延时的不确定性往往会造成若干节点的投票信息不能及时广播到网络上其它节点。
本发明实施例的技术方案,通过将整个网络分成多个组织的结构。每个组织内维护一个区块链,用于执行不同任务。从而实现不同任务的分工,降低网络的复杂度,有效解决了上述若干节点的投票信息不能及时广播给网络上其它节点的问题。
进一步的,所述区块链系统还包括:至少一个上层组织,
每个所述上层组织由设定数量的上层组织节点构成,其中所述上层组织节点与至少一个所述底层组织的组织代表节点通信获取所述组织内信息,生成上层区块。
组织代表节点的确定可以描述为:任何一个底层组织内的记账节点在发现上层组织节点后,将本节点设定为组织代表节点。底层组织内之后竞争出的记账节点都会查询周围是否具有上层组织节点,并会对比原来的组织代表节点维护的区块链是否与本节点维护的区块链一致。若不一致,且发现了上层组织节点,则向组织内广播,并取代原来的组织代表节点。
该方法将整个网络划分为包括上层组织和底层组织的层次结构。每个底层组织具有不同功能,上层组织记录底层组织产生的底层区块,从而实现底层组织用于执行,上层组织负责数据的完整记录。同时保证在整个网络上区块链具有去中心和去信任的能力。
换而言之,本实施例采用了多层区块链的方式,底层区块链优先保证效率,负责执行组织内指令和数据。同时底层区块链又作为上层区块链的交易数据,记入上层区块链。从而上层区块链和底层区块链构成了一个在对等透明的方式下进行的不可篡改的区块链系统。
此外,在上层组织节点记账时,各底层组织维护的底层区块作为交易记入上层区块中。由于底层组织内维护着一条完整的底层区块链,但是在各底层组织维护的底层区块作为交易记入上层区块中时,仅记入上层区块两次出块之间组织内增长的底层区块。这种机制既保证了上层组织的出块效率,也保证了每次交易的区块容量基本恒定。
本实施例对以组织为单位的层次结构的层次数量不做限定,可以是2层,在任务复杂时可以是更多层。上层组织内节点所使用的共识机制可以是上述任一实施例所述的共识机制,也可以是现有的共识机制,例如DPOS.
示例性的,完整工业产品的生产需要上下游的协同配合,这就对生产信息的有效性提出了要求。同时也对产品的生产进度提出要求。以机械臂为例,其本体、控制主板和减速器,分别来自不同厂家。由于信息共享的问题,可能导致减速器备货不足或者控制主板厂家库存积压。这都影响到生产过程的有效进行。当应用本案的区块链系统后,各厂家维护本厂的底层区块链,用于厂级的生产调度和信息记录等。然后厂家之间构成一条上层区块链,用于共享厂级的信息。从而实现透明和去中心。进而大幅提升生产效能。
进一步的,根据该至少一个底层区块生成一个上层区块,可以是将该至少一个底层区块全部写入上层区块中,也可以对该至少一个底层区块进行重要信息提取,将提取的重要信息写入上层区块。
上述对区块链系统的多层次结构的划分,增大了区块链的扩展性。从而使得区块链更适用于类似于物联网这种要求低功耗低延时的区块链应用中。
需要说明的是,基于上述实施例的技术教导,本领域技术人员有动机将上述实施方式进行组合,实现去除中心控制,组织内各节点自动协作完成任务。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种区块链共识机制,其特征在于,包括:
响应竞争记账节点事件,获取参与竞争的各节点的投标金额,其中,所述竞争记账节点事件在所有节点执行完成记账节点发送的指令后触发,所述投标金额为参与竞争的节点为换取一次记账权所支付的资产;
比较所述投标金额,根据比较结果确定出记账节点,由所述记账节点产生指令发送给其他节点执行,其中,所述记账节点为拥有对其他节点的指挥权的唯一节点;
从所述记账节点的账户中减去所述记账节点所投标金额的资产。
2.根据权利要求1所述的共识机制,其特征在于,比较所述投标金额,根据比较结果确定出记账节点包括:
结合统计得到的节点的所得票数和投标金额,从节点中确定出记账节点。
4.根据权利要求2所述的共识机制,其特征在于,在结合统计得到的节点的所得票数和投标金额,从节点中确定出记账节点之前,还包括:
判断每个节点每次所投票数是否超过投票值范围,其中投票值范围由与被投票节点的环境参数和/或对被投票节点的喜好参数确定;
若超过投票值范围,则降低对所述节点的喜好参数;
若所述节点的喜好参数小于设定喜好参数阈值,则删除所述节点。
5.根据权利要求1所述的共识机制,其特征在于,从所述记账节点的账户中减去所述记账节点所投标金额的资产包括:
获取所述记账节点距离上次作为记账节点的时间;
根据所述时间确定应缴竞争代价税;
从所述记账节点的账户中减去所述记账节点所投标金额的资产以及所述竞争代价税。
7.根据权利要求1所述的共识机制,其特征在于,由所述记账节点产生指令发送给其他节点执行包括:
基于已生成的区块链,向前追溯设定区块个数的区块,将追溯到的区块作为待结算区块;
从生成所述待结算区块的旧记账节点的账户中减去所述旧记账节点为竞争记账节点所投标金额的资产,并将所述资产添加至相关节点的账户中;
根据节点需要处理的事务生成指令,并根据所述指令生成区块,其中,所述区块包括所述指令、各节点的当前状态和各节点账户中的资产,各节点的当前状态是在节点执行完所述区块链中上一个区块所包括的指令后的状态;
将所述区块发送给除所述记账节点以外的其他节点,使得所述其他节点执行所述区块中的指令。
8.根据权利要求7所述的共识机制,其特征在于,将所述资产添加至相关节点的账户中包括:
根据所述相关节点投给所述旧记账节点的票数占所述旧记账节点所得的总票数的比例,确定添加至所述相关节点账户中的资产数量,其中,所述相关节点是投票给所述旧记账节点的节点;
将所述资产数量的资产添加至所述相关节点的账户中,其中所述相关节点成功执行了所述待结算区块包括的指令。
9.一种区块链系统,其特征在于,包括至少一个底层组织,
每个所述底层组织由设定数量的底层组织节点构成,用于执行不同任务,其中所述底层组织节点基于权利要求1-8中任一所述的共识机制实现数据同步共识。
10.根据权利要求9所述的区块链系统,其特征在于,还包括:至少一个上层组织,
每个所述上层组织由设定数量的上层组织节点构成,其中所述上层组织节点与至少一个所述底层组织的组织代表节点通信获取所述底层组织内信息,生成上层区块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810643702.XA CN108961017B (zh) | 2018-06-21 | 2018-06-21 | 一种区块链共识机制和基于该共识机制的区块链系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810643702.XA CN108961017B (zh) | 2018-06-21 | 2018-06-21 | 一种区块链共识机制和基于该共识机制的区块链系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108961017A CN108961017A (zh) | 2018-12-07 |
CN108961017B true CN108961017B (zh) | 2022-09-13 |
Family
ID=64492010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810643702.XA Active CN108961017B (zh) | 2018-06-21 | 2018-06-21 | 一种区块链共识机制和基于该共识机制的区块链系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108961017B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109831458A (zh) * | 2019-03-21 | 2019-05-31 | 浙江工商大学 | 一种iot电子行为记录管理系统 |
CN110572429B (zh) * | 2019-07-30 | 2022-01-07 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 基于区块链的共识方法、装置、设备及存储介质 |
CN110853214B (zh) * | 2019-11-06 | 2021-05-11 | 杭州复杂美科技有限公司 | 区块生成方法、设备和存储介质 |
CN111885566A (zh) * | 2020-07-03 | 2020-11-03 | 易联众信息技术股份有限公司 | 一种基于物联网的区块链共识系统及共识方法 |
CN112632186A (zh) * | 2020-12-23 | 2021-04-09 | 远光软件股份有限公司 | 区块链共识方法、计算机设备及区块链系统 |
CN112819564A (zh) * | 2021-01-12 | 2021-05-18 | 北京金山云网络技术有限公司 | 区块记账权的确定方法、装置、区块链网络及相关设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453286B (zh) * | 2016-09-27 | 2020-03-17 | 北京天德科技有限公司 | 一种基于区块链的信誉方法和系统 |
US10360191B2 (en) * | 2016-10-07 | 2019-07-23 | International Business Machines Corporation | Establishing overlay trust consensus for blockchain trust validation system |
CN107094145B (zh) * | 2017-05-02 | 2019-09-17 | 北京汇通金财信息科技有限公司 | 基于区块链的数据处理方法、服务器及系统 |
CN107341660B (zh) * | 2017-05-27 | 2021-06-29 | 唐盛(北京)物联技术有限公司 | 一种区块链底层共识机制以及基于该共识机制的区块链系统 |
CN107566124B (zh) * | 2017-08-24 | 2020-06-19 | 深圳市易成自动驾驶技术有限公司 | 基于哈希运算的共识建立方法、区块链系统及存储介质 |
CN108109017A (zh) * | 2018-01-11 | 2018-06-01 | 杭州秘猿科技有限公司 | 基于区块链智能合约的商品交易系统 |
CN108182636A (zh) * | 2018-01-30 | 2018-06-19 | 杨显波 | 基于贡献的区块链共识机制 |
-
2018
- 2018-06-21 CN CN201810643702.XA patent/CN108961017B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108961017A (zh) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108961017B (zh) | 一种区块链共识机制和基于该共识机制的区块链系统 | |
Daian et al. | Flash boys 2.0: Frontrunning in decentralized exchanges, miner extractable value, and consensus instability | |
Daian et al. | Flash boys 2.0: Frontrunning, transaction reordering, and consensus instability in decentralized exchanges | |
US11769214B1 (en) | Method for tracking transferrable digital objects within decentralized consensus system | |
US10304143B2 (en) | Consensus system for manipulation resistant digital record keeping | |
CN108959621B (zh) | 一种区块链网络的实现方法、装置、设备及存储介质 | |
CN111988137B (zh) | 一种基于门限签名和公平奖励的DPoS共识方法及其系统 | |
WO2019192062A1 (zh) | 一种基于信任成员的动态权益的共识方法 | |
US20210004777A1 (en) | Blockchain system to which proof-of-transaction consensus algorithm is applied, and method therefor | |
CN111563786A (zh) | 一种基于区块链的虚拟电厂调控平台及运行方法 | |
Garratt et al. | Why fixed costs matter for proof-of-work–based cryptocurrencies | |
CN109040014A (zh) | 区块链处理方法及装置、区块链节点及存储介质 | |
CN112104482B (zh) | 一种基于并行投票的共识方法 | |
CN108805627A (zh) | 媒体资源分配方法、装置、系统、介质及设备 | |
WO2019056006A1 (en) | METHOD FOR GENERATING A DYNAMICALLY ORDINATED QUEUE | |
CN110851531B (zh) | 协作边缘计算方法、区块链和协作边缘计算系统 | |
CN110855432A (zh) | 基于可验证随机函数分配验证者奖励的异步bft&dpos共识机制 | |
CN110928951A (zh) | 一种基于区块链的数据共享及仲裁方法 | |
CN111130790B (zh) | 基于区块链节点网络的共识出块方法 | |
CN109784885A (zh) | 一种基于权益的区块链投票共识方法及系统 | |
CN108961055A (zh) | 一种区块共识的奖惩方法、装置、设备和存储介质 | |
CN113568972A (zh) | 一种面向图式区块链的混合共识实现装置及实现方法 | |
CN110335128A (zh) | 共享拍卖的方法、装置、计算机可读存储介质和电子设备 | |
CN110009320B (zh) | 资源转换方法、装置、系统、存储介质和计算机设备 | |
CN116596672A (zh) | 基于区块链的智能合约任务分发平台、方法、系统及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |