[发明专利]一种随机数产生方法及系统在审
申请号: | 201910850618.X | 申请日: | 2019-09-10 |
公开(公告)号: | CN110737424A | 公开(公告)日: | 2020-01-31 |
发明(设计)人: | 王纯斌;李骥东;王波;李业晨;张春生;张新龙 | 申请(专利权)人: | 成都四方伟业软件股份有限公司 |
主分类号: | G06F7/58 | 分类号: | G06F7/58 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610041 四川省*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 随机数 随机数产生 加密数据 节点验证 结果通知 不可逆 多节点 回溯 明文 加密 | ||
本发明公开了一种随机数产生方法及系统,随机数将通过分布式多节点产生,产生过程不可控制,但可回溯、可证明。各个节点各自产生自己的随机数,产生完成后将数据不可逆加密通知其他节点,收到其他所有节点的加密数据后表示所有人都已经产生完毕。再将明文随机数通知给各个节点,各个节点验证完成后通过大家的结果得到随机数,再将结果通知所有节点,各个节点相信大多数人认同的结果。
技术领域
本发明涉及随机数产生领域,特别涉及一种随机数产生方法及系统。
背景技术
随机数是专门的随机试验的结果。在统计学的不同技术中需要使用随机数,比如在从统计总体中抽取有代表性的样本的时候,或者在将实验动物分配到不同的试验组的过程中,或者在进行蒙特卡罗模拟法计算的时候等等。
产生随机数有多种不同的方法。这些方法被称为随机数发生器。随机数最重要的特性是:它所产生的后面的那个数与前面的那个数毫无关系。
真正的随机数是使用物理现象产生的:比如掷钱币、骰子、转轮、使用电子元件的噪音、核裂变等等,这样的随机数发生器叫做物理性随机数发生器,它们的缺点是技术要求比较高。
由于物理性随机数发生器技术要求较高,现有方案一般通过单机程序产生随机数,无法证明是否造假,暂时只能通过第三方公证的方式进行背书。
发明内容
本发明的目的在于:提供了一种随机数产生方法及系统,解决了由于物理性随机数发生器技术要求较高,现有方案一般通过单机程序产生随机数,无法证明是否造假,暂时只能通过第三方公证的方式进行背书的问题。
本发明采用的技术方案如下:
一种随机数产生方法,包括若干节点,包括以下步骤:
S1、各节点产生自己的随机数;
S2、各节点通过不可逆加密算法对自己产生的随机数进行加密得到对应随机数的密文;
S3、各节点将自己的密文同步给其它节点;
S4、各节点将自己产生的与密文对应的随机数发送给其它节点;
S5、各节点对收到的其它节点发送的随机数进行验证,判断其它节点发送的随机数通过不可逆加密算法加密后与该节点发送的密文是否一致;若所有其它节点发送的随机数与密文均对应,则验证节点同意加入计算,否则本节点不同意加入计算;
S6、判断同意加入计算的节点比例是否满足预设要求,若满足,则进入步骤S7,否则本轮随机数产生无效;
S7、各节点通过预设的算法对所有节点产生的随机数进行计算,得到最终的随机数输出值。
采用上述方案,利用分布式存储的思维,随机数将通过分布式多节点产生,产生过程不可控制,但可回溯、可证明。各个节点各自产生自己的随机数,产生完成后将数据不可逆加密通知其他节点,收到其他所有节点的加密数据后表示所有人都已经产生完毕。再将明文随机数通知给各个节点,各个节点验证完成后通过大家的结果得到随机数,再将结果通知所有节点,各个节点相信大多数人认同的结果。解决了现有技术中一般通过单机程序产生随机数,无法证明是否造假,暂时只能通过第三方公证的方式进行背书的问题。
进一步的,所述若干节点位于同一个区块链网络上。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。5、各个节点产生随机数的过程进行了区块链存储,过程可回溯查看且不可更改。
进一步的,所述步骤S3各节点通过将自己的密文构建区块加入区块链网络的方法将自己的密文同步给其它节点。
进一步的,所述步骤S7还包括根据各节点产生的随机数及最终的随机数输出值构建区块加入区块链网络。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都四方伟业软件股份有限公司,未经成都四方伟业软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910850618.X/2.html,转载请声明来源钻瓜专利网。