一种随机多资产权益质押共识方法与流程

文档序号:21837508发布日期:2020-08-14 16:12阅读:232来源:国知局

本发明涉及区块链技术领域,涉及一种随机多资产权益质押共识方法。



背景技术:

现有的区块链共识方法主要有pow共识方法、pos共识方法、pbft共识方法及dpos共识方法。但是用户以个人名义独自挖矿时,则必须保持桌面钱包运行,如果钱包没有运行,可能导致用户错过网络验证票的时机(在票被添加到票池的时候和票被选为选票的时候),从而无法获得权益奖励的机会。因此,在无法保持钱包24小时运行的情况下,持积分者可以选择加入权益矿池。大多数区块链中的矿池都是中心化的,存在不安全、不透明的风险。

去中心化矿池一个最大的好处就是:用户不会将积分的控制权交给矿池,且矿池是内置在底层协议中的,权益矿池会在协议中预先确定费用,但它无法获取用户资产,也无法领取用户奖励。



技术实现要素:

有鉴于此,本发明提供一种解决或部分解决上述问题的随机多资产权益质押共识方法。

为达到上述技术方案的效果,本发明的技术方案为:一种随机多资产权益质押共识方法,包含以下内容:

步骤一、应用于随机多资产权益质押共识机制共识方法的系统中,系统包括游客数据节点、候选公民数据节点、公民数据节点、议员数据节点;

分步骤一、当一个或者多个游客数据节点为链上的所有数据节点的集合,游客数据节点用于同步区块链上的数据;

分步骤二、多个游客数据节点中设定一个或多个临时判断节点,用于数据节点升级的准备工作,一个或者多个游客数据节点发送到一个或多个临时判断节点的请求升级信息包,发送请求升级信息包括请求双方地址、请求升级信息包以及请求升级信息包的哈希值;

分步骤三、一个或多个候选公民数据节点是参与投票的数据节点,由临时判断节点用于验证候选公民数据节点的等级,其中,至少一个临时判断节点用于判断游客数据节点的升级,包括:临时判断节点接收至少一个游客数据节点发送的请求数据,临时判断节点对预设时间段内的请求升级信息包进行验证;

分步骤四、临时判断节点对游客数据节点验证通过后,将游客数据节点发送给游客数据节点进行验证,当临时判断节点对游客数据节点验证通过后,临时判断节点通过可验证的随机算法随机选择多个候选公民数据节点;

步骤二、当临时判断节点完成验证功能后降级为普通的游客数据节点,一个或多个公民数据节点是用于记账和产生区块的数据节点;

分步骤一、一个或多个临时判断节点是用于管理区块链上的资产的数据节点;一个或多个游客数据节点可以通过缴纳候选证明金成为候选公民数据节点;

分步骤二、确认信息包括缴纳候选证明金金额和受验证数据节点的数字签名;以及升级必要数据,临时判断节点对游客数据节点验证通过后,临时判断节点通过可验证的随机算法随机选择多个临时判断节点,临时判断节点通过可验证的随机算法可以随机选择多个,多个临时判断节点对游客数据节点进行验证,当临时判断节点打包升级必要数据,且确定游客数据节点的字节内容属于符合升级节点的内容时,临时判断节点将游客数据节点划分为至少两个分类的数据节点;其中,至少两个分类的数据节点包括候选公民数据节点和公民数据节点,候选公民数据节点由临时判断节点进行初步验证,公民数据节点由临时判断节点通过可验证的随机算法随机选择临时判断节点中的一个临时判断节点为临时判断节点进行打包;

分步骤三、在每一轮打包顺序确定后,当多个临时判断节点对游客数据节点进行验证之前;临时判断节点对预设时间段内的附加请求数据打包成附加验证数据,并请求临时判断节点对附加验证数据进行验证,当临时判断节点对游客数据节点验证通过后,临时判断节点通过可验证的随机算法随机选择多个候选公民数据节点,临时判断节点对多个候选公民数据节点进行验证;

步骤三、候选公民数据节点接收链上其他数据节点的资产抵押;候选证明金由议员数据节点投票决定;候选证明金缴纳之后将会进入将由议员数据节点确定奖励给候选公民数据节点或公民数据节点,无法退回;候选公民数据节点可以通过提供资产质押证明成为公民数据节点;

步骤四、资产质押证明包括自数据节点资产证明和他数据节点抵押证明,自数据节点资产证明就是候选公民数据节点对自己资产的证明,他数据节点抵押证明就是候选公民数据节点对接收到的区块链上其他数据节点的资产抵押的证明;

步骤五、将资产质押证明设定为都需要候选公民数据节点的投票,投票方法为:候选公民数据节点发起资产质押证明投票之前,发起资产质押证明的候选公民数据节点需要缴纳一定数量的证明金,证明金冻结在议员数据节点中帐户;证明金有最低限度,当缴纳的证明金低于最低限度时,资产质押证明投票则不能成功发起,证明金退还给发起资产质押证明的候选公民数据节点;资产质押证明投票成功发起后,证明金不能退还;候选公民数据节点发起资产质押证明投票,投票前需要确定参与投票的候选公民数据节点、参与投票的议员数据节点、负责记账的公民数据节点;

步骤六、投票之后发起资产质押证明的候选公民数据节点将会得到权益因子,发起的资产质押证明投票是他数据节点资产证明时,权益因子用下述公式一进行计算,发起的资产质押证明投票是自数据节点资产证明时,权益因子用下述公式二进行计算;

公式一:

公式二:

其中,t是权益因子,取值范围是0~1;β为在抵押数据节点a中投支持票的数据节点数量,χ为抵押数据节点b中投支持票的数据节点数量,δ为抵押数据节点c中投支持票的数据节点数量,a为抵押数据节点a的数量,b为抵押数据节点b的数量,c为抵押数据节点c的数量,a、b、c、β、χ、δ都是自然数;

步骤七、发起的资产质押证明投票是自数据节点资产证明时,参与投票的候选公民数据节点包括抵押数据节点a、抵押数据节点b,发起的资产质押证明投票是他自数据节点资产证明时,参与投票的候选公民数据节点包括抵押数据节点a、抵押数据节点b、抵押数据节点c;抵押数据节点a就是参与投票的候选公民数据节点中没有将资产抵押给发起资产质押证明的候选公民数据节点;抵押数据节点b就是参与投票的候选公民数据节点中将资产抵押给发起资产质押证明的候选公民数据节点,但此轮投票并不是证明抵押数据节点b抵押的资产;抵押数据节点c就是参与投票的候选公民数据节点中将资产抵押给发起资产质押证明的公民数据节点,且此轮投票就是证明抵押数据节点c抵押的资产;每一轮投票后,权益因子大于权益因子阈值时,发起资产质押证明的候选公民数据节点成为公民数据节点;权益因子阈值由议员数据节点确定,权益因子阈值可以改变;权益因子阈值增加之后,权益因子小于所益因子阈值的公民数据节点需要发起资产质押证明投票,投票之后得到新的权益因子,如果新的权益因子小于增加之后的权益因子阈值,或者不能成功发起资产质押证明投票,公民数据节点都需要缴纳惩罚金,惩罚金由议员数据节点确定,惩罚金将由议员数据节点确定奖励给候选公民数据节点或公民数据节点。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,能实现同样功能的产品属于等同替换和改进,均包含在本发明的保护范围之内。具体方法如下:

实施例1:本实施例具体说明了随机多资产权益质押共识方法的步骤,如下:

系统包括游客数据节点、候选公民数据节点、公民数据节点、议员数据节点;

多个游客数据节点是链上的所有数据节点的集合;

一个或多个候选公民数据节点是参与投票的数据节点,一个或多个公民数据节点是用于记账和产生区块的数据节点;

一个或多个议员数据节点是用于管理区块链上的资产的数据节点;

一个或多个游客数据节点可以通过缴纳候选证明金成为候选公民数据节点;候选公民数据节点接收链上其他数据节点的资产抵押;

候选证明金由议员数据节点投票决定;候选证明金缴纳之后将会进入链上的公共账户,无法退回;

候选公民数据节点可以通过提供资产质押证明成为公民数据节点;

资产质押证明包括自数据节点资产证明和他数据节点抵押证明,自数据节点资产证明就是候选公民数据节点对自己资产的证明,他数据节点抵押证明就是候选公民数据节点对接收到的区块链上其他数据节点的资产抵押的证明;

资产质押证明都需要候选公民数据节点的投票,投票方法为:候选公民数据节点发起资产质押证明投票之前,发起资产质押证明的候选公民数据节点需要缴纳一定数量的证明金,证明金冻结在公共账户中;证明金有最低限度,当缴纳的证明金低于最低限度时,资产质押证明投票则不能成功发起,证明金退还给发起资产质押证明的候选公民数据节点;资产质押证明投票成功发起后,证明金不能退还;

候选公民数据节点发起资产质押证明投票,投票前需要确定参与投票的候选公民数据节点、参与投票的议员数据节点、负责记账的公民数据节点;投票之后发起资产质押证明的候选公民数据节点将会得到权益因子,发起的资产质押证明投票是他数据节点资产证明时,权益因子用下述公式一进行计算,发起的资产质押证明投票是自数据节点资产证明时,权益因子用下述公式二进行计算;

公式一:

公式二:

其中,t是权益因子,取值范围是0~1;β为在抵押数据节点a中投支持票的数据节点数量,χ为抵押数据节点b中投支持票的数据节点数量,δ为抵押数据节点c中投支持票的数据节点数量,a为抵押数据节点a的数量,b为抵押数据节点b的数量,c为抵押数据节点c的数量,a、b、c、β、χ、δ都是自然数;

发起的资产质押证明投票是自数据节点资产证明时,参与投票的候选公民数据节点包括抵押数据节点a、抵押数据节点b,发起的资产质押证明投票是他自数据节点资产证明时,参与投票的候选公民数据节点包括抵押数据节点a、抵押数据节点b、抵押数据节点c;抵押数据节点a就是参与投票的候选公民数据节点中没有将资产抵押给发起资产质押证明的候选公民数据节点;抵押数据节点b就是参与投票的候选公民数据节点中将资产抵押给发起资产质押证明的候选公民数据节点,但此轮投票并不是证明抵押数据节点b抵押的资产;抵押数据节点c就是参与投票的候选公民数据节点中将资产抵押给发起资产质押证明的候选公民数据节点,且此轮投票就是证明抵押数据节点c抵押的资产;

每一轮投票后,权益因子大于权益因子阈值时,发起资产质押证明的候选公民数据节点成为公民数据节点;权益因子阈值由议员数据节点确定,权益因子阈值可以改变;权益因子阈值增加之后,权益因子小于所益因子阈值的公民数据节点需要发起资产质押证明投票,投票之后得到新的权益因子,如果新的权益因子小于增加之后的权益因子阈值,或者不能成功发起资产质押证明投票,公民数据节点都需要缴纳惩罚金,惩罚金惩罚金由议员数据节点确定,惩罚金将会进入区块链的公共账户。

委托共识方法的角色包括:验证者、验证者集合、公民数据结点、基金账户和抵押账户;

验证者是参与投票的数据节点,验证者包括正式验证者和候选验证者,候选验证者的投票只用于判断候选验证者投票的正确性,不能用于区块的共识,也不能获得收益,正式验证者的投票用于区块的共识;验证者集合是所有参与区块的共识的正式验证者的集合,每轮共识前需要确定验证者集合中的所有正式验证者;每轮共识时,从验证者集合中随机选取一个正式验证者生成区块,被选择的正式验证者即是公民数据结点,公民数据结点还用于打包交易、生成梅克尔树、广播区块头及交易哈希的列表;基金账户用于存放验证者被没收的证明金和成功生成区块获得的部分收益;抵押账户用于冻结验证者缴纳的证明金,验证者需要缴纳证明金才能参与投票;

用户将自己的股权股份委托给验证者集合中的正式验证者;用户也可以在区块链系统上缴纳证明金后可以成为候选验证者;候选验证者连续在n个区块上正确投票后,则成为正式验证者;正式验证者连续在n个区块上错误投票后,则成为候选验证者;验证者从正式验证者转换为候选验证者后,则需要连续在m个区块上正确投票后,才可重新成为正式验证者,m和n均为正整数,取值由工作人员确定,且m>n;如果候选验证者,连续在x个区块上投票后还未成为正式验证者,则区块链系统将没收候选验证者的部分证明金,x为正整数,取值由工作人员确定;

委托共识方法生成区块的步骤包括:

步骤s1:确定验证者集合中的所有正式验证者;用户将自己的股权股份委托给验证者集合中的正式验证者;

步骤s2:从验证者集合中随机选取一个正式验证者作为公民数据结点,公民数据结点将收集到的交易打包,将交易列表生成梅克尔树,然后把区块头及交易哈希的列表广播给验证集合;

步骤s3:正式验证者收到公民数据结点广播的区块头及交易哈希的列表后,如果正式验证者的交易候选集和公民数据结点的交易候选集一致,则正式验证者计算区块头并广播给验证集合中的其它正式验证者;

步骤s4:如果正式验证者广播的区块头的哈希值与公民数据结点广播的区块头的哈希值相等,且正式验证者持有的股权股份超过总体股权股份的50%,则代表公民数据结点生成的区块正确,则将公民数据结点生成的区块写入区块链;如果正式验证者持有的股权股份没有超过总体股权股份的50%,则公民数据结点继续生成区块,当公民数据结点生成的区块的股权股份的累计权重超过一定时间内在线的验证集合的平均股权股份的50%,则公民数据结点生成的区块也被写入区块链;

公民数据结点生成的区块被写入区块链后,需要经过区块时刻,区块链系统才会发布生成下一个区块的需求,如果过早发布生成下一个区块的需求,则正式验证者不会处理生成下一个区块的需求;区块时刻是发布创建区块的最短时间,区块时刻是正实数,取值由工作人员确定;

区块链会出现多个公民数据结点从而产生分叉,包括以下情况:1)如果原有的公民数据结点未能在规定的时间内产生区块,则需要选出备选公民数据结点,备选公民数据结点产生区块后,原有的公民数据结点随即生成区块;2)备选公民数据结点收到原有的公民数据结点广播的区块头及交易哈希的列表后,认为其不正确,备选公民数据结点自己产生区块;

当区块链系统出现分叉时,则计算每条链上股权股份的总和,股权股份的总和最大的链即为当下主链。

新一轮共识之前,验证者需要缴纳一定数量的证明金,验证者缴纳的证明金冻结在的抵押账户中;证明金有最低限度,当验证者的证明金低于最低限度时,区块链系统将取消验证者的投票资格;当验证者不想继续参与投票时,可申请退还证明金,区块链系统将抵押账户中冻结的证明金退还给验证者后,会取消验证者的投票资格;

冻结投票权的方法为:验证者缴纳证明金后,区块链系统则约定验证者的投票的区块高度区间,如果在投票的区块高度区间内,验证者有连续的多个区块未投票,则冻结验证者的投票权;如果在投票的区块高度区间内,验证者的投票权被冻结后,验证者又缴纳费用,则恢复验证者的投票权;

当验证者有不符合规则的投票时,区块链系统将会没收其部分证明金,甚至取消其投票资格,验证者被没收的证明金从抵押账户进入基金账户;如果验证者认为其它验证者有不符合规则的投票,则可以新增一条交易并广播,该交易会在下一个区块进行共识,若共识成功,则有不符合规则的投票的验证者的证明金将被没收;不符合规则的投票包括:验证者对同一区块进行多次投票,验证者不对区块投票,验证者对区块投错误的票,当区块链产生分叉时验证者对每条分叉的链上的区块都投票;

备选公民数据结点被选出后,首先会新增一条交易用来没收原有的公民数据结点的证明金;然后备选公民数据结点重新将交易列表生成梅克尔树,再把区块头及交易哈希的列表广播给验证集合;

成功生成区块后将产生收益,收益将按比例分配给诚实投票的正式验证者、诚实生成区块的公民数据结点及基金账户;收益每隔多个投票的区块高度区间分发一次,且获得收益的正式验证者将自己获得的收益分配给委托的用户。

只有一个正式验证者正常运行时,区块链系统也能正常运行;

用户可以即时将股权股份从正式验证者中取出,但是将股权股份委托给正式验证者时,需要等待一定时间后才可生效。

以上所述仅为本发明之较佳实施例,并非用以限定本发明的权利要求保护范围。同时以上说明,对于相关技术领域的技术人员应可以理解及实施,因此其他基于本发明所揭示内容所完成的等同改变,均应包含在本权利要求书的涵盖范围内。

有益成果:本发明提供了一种随机多资产权益质押共识方法,角色包括游客数据节点、候选公民数据节点、公民数据节点、议员数据节点。使用此共识方法,不仅能够在保证不耗费电力算力的基础上,拥有较高的共识效率,而且降低了区块链系统无法继续工作的概率,同时也避免了由于钱包没有运行,导致的用户无法获得权益奖励的可能。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1