[发明专利]一种应用区块链来生成可信随机数的方法及相关装置在审
申请号: | 201810631008.6 | 申请日: | 2018-06-20 |
公开(公告)号: | CN108845790A | 公开(公告)日: | 2018-11-20 |
发明(设计)人: | 胡晓东 | 申请(专利权)人: | 胡晓东;上海链昭信息科技有限公司 |
主分类号: | G06F7/58 | 分类号: | G06F7/58 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 215011 江苏省苏州市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 随机数 随机数种子 区块 算法 确定性 可信 随机性 相关装置 应用区块 透明 链系统 集合 应用 | ||
本发明利用其它区块链系统所产生的具有一定随机性的数作为输入,也可能同时使用上一轮生成的随机数作为输入,然后通过透明公开的确定性算法在本区块链所有节点中挑出随机数生产者集合,接着让这些生产者分别的生成各自的随机数种子,然后通过使用所有随机数种子,也可以同时使用前述的随机数输入共同作为参数,应用一个透明公开的确定性算法来生成一个新的可信的随机数。
技术领域
本发明涉及计算机网络技术领域,特别涉及一种应用区块链来生成可信随机数的方法和相关装置。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。
利用共识机制,非信任主体之间可以以一种透明和可信的方式来协同完成一些原本需要相互信任才可以完成的工作。
可信的随机数生成是指通过某种透明和可信的方式来产生随机数,参与该生成过程的主体无法通过作弊来使得最终产生的随机数拥有其所希望拥有的非随机特性。这种可信的随机数在很多应用中都具有非常重要的作用,比如彩票发行就是一个典型的应用。
以往的随机数生成过程,无法让该过程的操作者向随机数的使用者有效的证明该过程是未受操纵的,因此即使生成过程应用了物理级别的随机源,所生成的随机数传递到了使用者时,也无法被认可为可信的随机数。
发明内容
本发明利用其它区块链系统所产生的难以操纵的,随时间而变化的,且具有一定随机性的数(简称为外源随机种子)作为起始输入(简称为随机源),通过透明公开的确定性算法(简称为选择算法)在本区块链所有节点中挑出初次随机数生产者集合,让这些生产者分别的生成各自的随机数种子(简称为内源随机种子),然后通过使用所有内源随机种子(也可以同时使用外源随机种子)共同作为参数,应用一个透明公开的确定性算法(简称为随机数合成算法)来生成初次的随机数。然后就可以一轮轮的应用类似的过程来生成新的随机数,不同的是每次的随机源会使用上一轮生成的随机数(也可以同时使用新的外源随机种子)并通过透明公开的确定性算法(简称为随机源合成算法)来生成,而选择算法和随机数合成算法也可以采用与初次生成时不一样的算法。
为了避免每次选择出的随机数生产者通报随机数种子时,因为通报时间有先后而使得最后一个通报者有作弊的可能性,也就是根据前面通报的随机数种子来构造一个拥有其所希望拥有的非随机特性的数作为他的随机数种子,可以让每个生产者都先通报自己所产生的随机数种子的哈希值,等所有人都通报完了以后,再让每个生产者通报自己所产生的随机数种子本身,由于可以验证所报的随机数种子的哈希值确实与前面通报时的一致,这样就可以确保每个生产者都无法根据他人的随机数种子来构造自己的随机数种子。
为了避免因被选中的随机数生产者中有的因为某种原因而没有及时通报自己所产生的随机数种子,会对生产者通报的有效时间区间进行预先规定,并且规定只要有多于某个比例的生产者按时提交了自己所产生的随机数,那么即使有生产者没有及时提交随机数种子,最终也能由及时提交了的随机数种子作为输入来运行随机数合成算法。
具体实施方式
使用其它区块链系统(比如比特币系统)的最新区块(或最新的几个区块)信息中能够产生的随机数作为随机源,如果具有多个随机源,则先运行一个透明公开的确定性算法来合成为一个随机源。
使用上述的随机源作为输入,应用选择算法来从所有节点中挑出初次随机数生产者集合。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于胡晓东;上海链昭信息科技有限公司,未经胡晓东;上海链昭信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810631008.6/2.html,转载请声明来源钻瓜专利网。