[发明专利]一种基于区块链的随机数生成方法在审
申请号: | 201810489085.2 | 申请日: | 2018-05-21 |
公开(公告)号: | CN108733351A | 公开(公告)日: | 2018-11-02 |
发明(设计)人: | 谭宜勇 | 申请(专利权)人: | 北京泛融科技有限公司 |
主分类号: | G06F7/58 | 分类号: | G06F7/58 |
代理公司: | 北京华仲龙腾专利代理事务所(普通合伙) 11548 | 代理人: | 李静 |
地址: | 100089 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 随机数 区块 随机数生成 均匀性 独立性 参数检验 技术引入 随机函数 随机种子 真随机数 组合规律 分析 验证 分配 检验 维护 | ||
本发明公开了一种基于区块链的随机数生成方法,该方法将区块链技术引入随机数的生成过程中,将随机数的随机函数有目的的分配给区块链的各个节点,由节点进行自身的维护的同时,接受来自其他节点的随机种子,从而产生新的随机数。采用本发明的随机数生成方法,产生的随机数具有独立性、均匀性等特性,且经过理论的分析其是合理的,经过分析验证又是正确的,能与真随机数在均匀性、参数检验、独立性、组合规律等检验方面保持不显著的差异。
技术领域
本发明属于区块链技术领域,尤其涉及一种基于区块链的随机数生成方法。
背景技术
随机数生成方法一直以来受到全球数学、统计等领域研究人员的高度重视,随着计算机的普及与运算能力的提高,当面临使用大量的、快速的随机数时,使用计算机模拟产生随机数,从而使获得“随机数”成为常态化。传统抽签的方法简便易行,但当需求样本过大时,需要消耗巨大的人力、物力,使用数学方法生成随机数仍然是应用领域最为广泛的。
传统的随机数产生方法普遍存在长周期相关现象,尤其是线性同余法及其变种产生的随机数字,在使用时应避免此类现象频繁发生。由于是计算机本身产生的序列,当面对大规模数据需求时,较为显著的序列相关性会显示出来,即在大概率范围内,当前值为小值趋势时,后续所产生的随机数亦有小值趋势,这种较为显著的相关性在大规模数字运算与系统模拟时是不被允许的。
严格意义上来说,使用数学方法产生的随机数不是真正的随机数,因为产生的随机序列遵循一定的函数分布,必然是可控的,通常称这种可控的随机数为伪随机数,之所以在各个领域内仍然把伪随机数当作真正的随机数在用,是由于伪随机数同拥有真随机数一样或者接近的统计检验指标,且产生方便迅速,适合项目研究活动。
目前,基于数学方法/函数的随机数产生的一般的过程如下:
1)确定随机函数或者满足某种规则的数学分布,线性同余函数是比较常见的一种随机函数,其表达式为:
其中x0为种子点或初始点;M为模,这里为求余的基本条件;a为乘数,决定xn变换的幅度,c为增益。
2)规定若干初始值/种子点:
随机序列后端的值完全由初始种子点来决定,所以很多研究都关注在种子点的产生与选定上,这直接决定所产生序列的统计检验是否与真随机一致。常用的选择方法,可以直接指定特定值,也可以参照步骤1),确定初始值,即使用一个建议的随机生成器来生成第一个值。
3)按照递推公式产生随机数:
参照(1)对序列进行递推,其公式可简单表示为:
其中p为初始的随机数,由yn依次产生yn+q;若根据总的个数与模数,用rn=yp/2p可得均匀随机分布。
4)以产生的随机数作为新的种子点,参考之前步骤,继续产生新的随机数,重复n次,即得到一个数量为n的随机数序列。
验证产生的随机数序列是否具有随机特性,可查看其遵循的统计特征是否与真随机序列吻合,一般从以下几个方面考量:1、随机序列要具有总体随机的统计特性,如分布的均值、方差等;2、多次产生新的序列,或者不同初始值的序列应该具有独立性;3、同批次产生的序列内的不同的随机数应具有独立性。
线性/非线性同余/乘法是一类较为典型的随机函数发生器,其产生的随机序列存在长周期相关现象,即当产生序列较多时,其前后存在较大的相关系数。移位寄存序列因计算速度快被广泛使用,其缺点是永不居中。第三个随机数的大小永远不会介于第一个与第二个之间,这不是一个合理的随机数序列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京泛融科技有限公司,未经北京泛融科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810489085.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:随机数生成装置及其控制方法
- 下一篇:支持向量排序的装置、方法及应用