[发明专利]基于区块链提案随机共识确定候选元素的方法及装置有效
申请号: | 201910031111.1 | 申请日: | 2019-01-14 |
公开(公告)号: | CN109981281B | 公开(公告)日: | 2021-11-26 |
发明(设计)人: | 刘大鸿;倪祥宇;陈天赟;郑斌;胡堃;王飞;李爱娅 | 申请(专利权)人: | 北京领主科技有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L12/24 |
代理公司: | 北京竹辰知识产权代理事务所(普通合伙) 11706 | 代理人: | 陈龙 |
地址: | 100142 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 提案 随机 共识 确定 候选 元素 方法 装置 | ||
1.一种基于区块链提案随机共识确定候选元素的方法,其特征在于,包括:
获取包含多个候选元素的候选列表;
利用当前区块链中的多个对等终端,生成针对所述候选元素的投票值,包括:获取所述候选列表中候选元素的数目N;通过对等终端的投票时间以及所述对等终端的地址、上一区块的哈希进行哈希、当前区块其他确定信息计算,将生产的哈希值做一次算法,生成不大于N的随机数M,最终将经过签名操作的M值放入投票池中,其中,N和M为整数,所述投票值被放置到所述区块链中的节点交易池中;
基于所述对等终端的竞争结果,在所述对等终端中确定打包终端,所述打包终端对所述节点交易池中的数据执行形成投票区块的打包上链操作;
基于所述打包终端上传的投票区块,在所述候选列表中确定最终元素。
2.根据权利要求1所述的方法,其特征在于,所述利用当前区块链中的多个对等终端,生成针对所述候选元素的投票值,包括:
在当前对等终端中查询区块链中当前区块的高度是否大于预设阈值;
若是,则基于所述对等终端产生的随机数、上一区块的哈希值以及当前对等终端的地址,确定具有预设长度的字符串;
将所述字符串的末尾字符作为所述投票值。
3.根据权利要求1所述的方法,其特征在于,步骤所述投票值被放置到所述区块链中的节点交易池中,包括:
利用上一区块的哈希值以及产生投票值的对等终端的公钥地址,对所述投票值中的随机数进行验证;
将验证通过的投票值放置到所述区块链中的节点交易池中。
4.根据权利要求1所述的方法,其特征在于,所述打包终端对所述节点交易池中的数据执行形成投票区块的打包上链操作,包括:
利用所述打包终端对所述节点交易池中的数据执行竞选验证操作;
当所述竞选验证操作成功后,使用哈希函数算法对当前区块内容进行哈希计算,生成一个长度为64位唯一不可逆的第一哈希值;
将第一哈希值与所述交易池中的数据一起执行打包操作,在所述区块链中形成投票区块。
5.根据权利要求4所述的方法,其特征在于,所述打包终端对所述节点交易池中的数据执行形成投票区块的打包上链操作之后,所述方法还包括:
针对执行打包上链的数据,所述打包终端对除打包终端之外的其他对等终端执行广播操作;
其他对等终端在接收到所述广播后,对打包终端上传的投票区块进行验证,并在验证通过后,将所述打包终端上传的投票区块同步到自身所在的当前节点中。
6.根据权利要求1所述的方法,其特征在于,所述基于所述打包终端上传的投票区块,在所述候选列表中确定最终元素,包括:
将所述打包终端上传的投票区块集合成包含P个投票区块的区块集合;
利用所述区块集合中的第P个区块,统计当前区块集合中的1至P-1个投票区块的投票结果,并确定当前区块集合中选出的候选元素。
7.根据权利要求6所述的方法,其特征在于,所述基于所述打包终端上传的投票区块,在所述候选列表中确定最终元素,还包括:
将所述候选列表中确定一个候选元素上传至区块链中。
8.根据权利要求1所述的方法,其特征在于,所述基于所述打包终端上传的投票区块,在所述候选列表中确定最终元素之后,所述方法还包括:
对最终元素执行投票操作的对等终端执行设置奖励积分。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京领主科技有限公司,未经北京领主科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910031111.1/1.html,转载请声明来源钻瓜专利网。