[发明专利]一种基于分布式协议的区块链随机数种子生成方法、设备及介质在审
申请号: | 202010301113.0 | 申请日: | 2020-04-16 |
公开(公告)号: | CN111596890A | 公开(公告)日: | 2020-08-28 |
发明(设计)人: | 宋明明;肖雪;王伟兵;李照川;罗森 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
主分类号: | G06F7/58 | 分类号: | G06F7/58;G06F21/64 |
代理公司: | 北京君慧知识产权代理事务所(普通合伙) 11716 | 代理人: | 董延丽 |
地址: | 250101 山东省济南市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 分布式 协议 区块 随机数 种子 生成 方法 设备 介质 | ||
本申请公开了一种基于分布式协议的区块链随机数种子生成方法、设备及介质,方法包括:分别接收多个用户发送的随机数信息,并将所述随机数信息进行保存至区块链中;基于一定顺序拼接多个所述随机数信息,形成新的信息;将所述新的信息通过散列函数进行运算,得到所述新的信息的哈希值,并将所述哈希值作为随机数种子。本发明实施例通过区块链技术,将多个随机源按照一定的顺序进行结合,然后通过散列函数生成随机数的种子,从源头上确保了随机数的不确定性。同时,通过基于区块链的数字签名技术,加密技术等,确保了每一个随机数种子的产生过程都是可以追溯的,大大提高了产生随机数的客观性。
技术领域
本申请涉及区块链技术领域,尤其涉及一种基于基于分布式协议的区块链随机数种子生成方法、设备及介质。
背景技术
随机数的获取是区块链中非常重要的一个课题,在区块链中获取随机数非常困难,这主要源于区块链系统的透明性。
现有技术中,随机数发生器会直接利用区块链系统中共识过程中所产生的随机性。比如,使用未来某个区块或者之前某个区块的Hash值来作为种子之一生成随机数,但是这样的随机数获取过程有着致命的漏洞——用户有可能通过仔细选择交易时间来控制随机数种子向有利于自己的方向生成;
发明内容
本说明书实施例提供一种基于分布式协议的区块链随机数种子生成方法、设备及介质,用于解决现有技术中的如下技术问题:
由于区块链公开透明的特性,生成随机数的过程中会存在人为干扰的因素。
本说明书实施例采用下述技术方案:
本发明实施例的第一方面提供了一种基于分布式协议的区块链随机数种子生成方法,包括:
分别接收多个用户发送的随机数信息,并将所述随机数信息进行保存至区块链中;
基于一定顺序拼接多个所述随机数信息,形成新的信息;
将所述新的信息通过散列函数进行运算,得到所述新的信息的哈希值,并将所述哈希值作为随机数种子。
在一个示例中,所述分别接收多个用户发送的随机数信息,并将所述随机数信息进行保存至区块链中,包括:
分别接收所述多个用户通过自己的私钥进行加密后发送的随机数信息,并将所述随机数信息保存至所述区块链中。
在一个示例中,还包括:
接收查询所述随机数信息对应的用户的请求;
将所述随机数信息中的私钥与所述区块链中存储的公钥进行匹配,以确定发送所述随机数信息的用户。
在一个示例中,所述基于一定顺序拼接多个所述随机数信息,形成新的信息,包括:
按照所述多个用户发送所述随机数信息的时间顺序,依次拼接多个所述随机数信息。
在一个示例中,还包括:
将所述随机数种子输入所述区块链上的随机算法中,生成随机数。
在一个示例中,所述随机数的应用场景包括:彩票、抽奖。
在一个示例中,所述分别接收多个用户发送的随机数信息,并将所述随机数信息进行保存至区块链中,包括:
接收所述多个用户中的一个用户发送的所述随机数信息;
将所述随机数信息缓存至区块链的保密数据库中。
在一个示例中,还包括:
确定所述多个用户是否均将各自的所述随机数信息发送至所述区块链;
若是,则将所述随机数信息保存至所述区块链中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010301113.0/2.html,转载请声明来源钻瓜专利网。