[发明专利]一种基于区块链底层的随机种子提供方法有效
申请号: | 201911406003.4 | 申请日: | 2019-12-31 |
公开(公告)号: | CN111125259B | 公开(公告)日: | 2023-08-18 |
发明(设计)人: | 杨霖;王志坚;冉小波 | 申请(专利权)人: | 预言机(重庆)科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/22;G06F16/25 |
代理公司: | 重庆西南华渝专利代理有限公司 50270 | 代理人: | 涂强 |
地址: | 401121 重庆市两江新区黄山大道中*** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 底层 随机 种子 提供 方法 | ||
本发明涉及大数据处理技术领域,本发明提出的一种基于区块链底层的随机种子提供方法,包括:S1、区块打包的节点准备未来要提交的随机种子,随机生成一串256位的随机种子;S2、提交摘要信息(hash)到区块扩展字段中,使用SHA256算法计算hash,为了节省空间,截取hash的后8byte,设置到区块的扩展字段中;S3、提交区块、缓存随机种子,阶段性结束,已经实现了未来种子的验证信息提交;S4、提交随机种子明文,下一轮出块时,将随机种子写入区的扩展字段中;S5、继续执行步骤S1,如此循环;S6、验证和存储。通过POC共识的两段式提交的随机种子生成机制,进而解决了现有随机种子生成机制的风险性和不便性的问题。
技术领域
本发明涉及区块链技术领域,具体涉及一种基于区块链底层的随机种子提供方法。
背景技术
传统的随机数生成算法或多或少与单台机器的物理状态或运算状态相关,不同的机器,或者说不同的节点,会有不同的运算结果;区块链是一个分布式的系统,它要求各个节点的运算结果是可验证和可共识的,区块链的初衷是服务于一般大众,所以在区块链传统的随机数生成算法上是行不通的。
目前行业内普遍采用的随机种子方案有三种,1、采用区块的信息作为随机种子,生成随机数,然而区块信息对区块链维护者来说是可控的,并不是安全的方案;2、由第三方提供中心化的或者半中心化的随机种子,区块链程序或者智能合约通过接口获取,这种方式完全违背区块链去中心化理念,安全性完全由种子提供方决定,也存在一定的安全风险;3、用户交互式,由区块链信息和用户提供的信息,组装成一个随机种子,这种方案需要用户进行多次信息提交,使用上对用户来说并不太方便。
发明内容
本发明的目的是提供一种基于区块链底层的随机种子提供方法,实现方式是基于POC共识的两段式提交的随机种子生成机制,解决现有随机种子生成机制的风险性和不便性的问题。
本发明提出的一种基于区块链底层的随机种子提供方法,包括:
S1、区块打包的节点准备未来要提交的随机种子,随机生成一串256位的随机种子;
S2、提交摘要信息(hash)到区块扩展字段中,使用SHA256算法计算hash,为了节省空间,截取hash的后8byte,设置到区块的扩展字段中;
S3、提交区块、缓存随机种子,阶段性结束,已经实现了未来种子的验证信息提交;
S4、提交随机种子明文,下一轮出块时,将随机种子写入区的扩展字段中;
S5继续执行步骤S1,如此循环;
S6、验证和存储,
存储:其他人接收到区块后,验证种子明文是否正确,如果正确,则将种子信息存储在数据库中,供接口调用使用,
验证方法:将区块中的随机种子使用SHA256计算hash,对比此区块打包的节点前一个区块中的hash,是否一致。
本发明一种基于区块链底层的随机种子提供方法的有益效果:
1、更公平,基于底层共识实现,全部共识节点参与,串联难度大。
2、更安全,种子Hash与明文种子两段式提交,提交Hash时不能计算结果,提交结果时不能篡改;底层直接提供接口获取随机种子,随时可以根据参数进行验证。
3、更灵活,随机种子计算方法支持多种算法,增加随机算法复杂度,提高作恶成本。
4、更方便,底层直接提供接口获取随机种子,应用端使用时方便获取,安全、高效;在提供智能合约SDK接口的同时,还提供RPC接口的访问方式,不限制应用的使用场景。
附图说明
图1为本发明实施例的一种基于区块链底层的随机种子提供方法的流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于预言机(重庆)科技有限公司,未经预言机(重庆)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911406003.4/2.html,转载请声明来源钻瓜专利网。