一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

区块链获取随机数的方法、装置、设备和介质与流程

2022-04-14 00:55:30 来源:中国专利 TAG:

技术特征:
1.一种区块链获取随机数的方法,应用于区块链节点,所述方法包括:在执行业务事务请求的过程中,调用随机数合约,以产生随机数获取请求;通过所述随机数合约处理所述随机数获取请求,并使得链外设置的可信计算设备,基于所述可信计算设备的私钥产生随机因子;通过所述随机数合约获取所述可信计算设备反馈的随机因子,并根据所述随机因子和链上随机算法产生随机数;通过所述随机数合约将所述随机数反馈给所述业务事务请求。2.根据权利要求1所述的方法,其中,通过所述随机数合约处理所述随机数获取请求,并使得链外设置的可信计算设备,基于所述可信计算设备的私钥产生随机因子包括:通过所述随机数合约处理所述随机数获取请求,产生事件日志,记录在区块中;其中,所述事件日志用于在被所述可信计算设备监听到时,触发所述可信计算设备获取所述随机数获取请求,并基于所述可信计算设备的私钥产生随机因子。3.根据权利要求1所述的方法,其中,通过所述随机数合约处理所述随机数获取请求包括:通过所述随机数合约执行所述随机数获取请求,以确定请求编号、请求数据、请求哈希值、请求者地址和回调函数;相应的,通过所述随机数合约将所述随机数反馈给所述业务事务请求包括:通过所述随机数合约,将所述随机数通过所述回调函数反馈给所述业务事务请求。4.根据权利要求1所述的方法,其中,在执行业务事务请求的过程中,调用随机数合约,以产生随机数获取请求包括:在运行业务智能合约执行所述业务事务请求的过程中,根据调用随机数合约的指令,调用所述随机数合约,以产生随机数获取请求。5.根据权利要求1所述的方法,其中,通过所述随机数合约获取所述可信计算设备反馈的随机因子包括:获取可信计算设备发起的随机因子反馈事务请求;在执行所述随机因子反馈事务请求的过程中,调用所述随机数合约,以获取所述可信计算设备反馈的随机因子。6.根据权利要求1所述的方法,其中,通过所述随机数合约获取所述可信计算设备反馈的随机因子之后,还包括:通过所述随机数合约,采用所述可信计算设备的公钥对所述随机因子的签名进行验证,所述签名为所述可信计算设备采用私钥对随机数获取请求参数和随机因子的签名。7.根据权利要求6所述的方法,其中,所述随机数获取请求包括根据链上信息生成的链上因子;相应的,所述随机因子为所述可信计算设备基于私钥对所述随机数获取请求的请求参数和链上因子进行签名而产生的;通过所述随机数合约,采用所述可信计算设备的公钥对所述随机因子的签名进行验证之后,还包括:验证链上记录的链上因子,与所述可信计算设备反馈的链上因子是否一致。8.根据权利要求1所述的方法,在所述使得链外设置的可信计算设备,基于所述可信计算设备的私钥产生随机因子之前,还包括:
获取可信计算设备的注册事务请求;在执行所述注册事务请求的过程中,调用所述随机数合约,获取所述注册事务请求中所述可信计算设备的标识、随机因子生成算法的代码存证和公钥,并上链存储。9.一种区块链获取随机数的方法,应用于可信计算设备,所述方法包括:获取区块链上部署的随机数合约所执行的随机数获取请求;根据所述随机数获取请求,在可信计算设备中,采用所述可信计算设备的私钥产生随机因子;将所述随机因子反馈给所述随机数合约。10.根据权利要求9所述的方法,其中,获取区块链上部署的随机数合约所执行的随机数获取请求包括:监听区块链中的事件日志;如果监听到所述事件日志中出现随机数获取请求时,则从事件日志中读取所述随机数获取请求。11.根据权利要求9所述的方法,其中,所述获取随机数获取请求和将随机因子反馈给所述随机数合约的操作由所述可信计算设备中设置于非可信计算环境的中转模块执行,所述随机因子的产生操作在所述可信计算设备的可信计算环境中执行。12.根据权利要求9所述的方法,在所述获取区块链上部署的随机数合约所执行的随机数获取请求之前,还包括:向区块链发起可信计算设备的注册事务请求,以调用所述随机数合约执行所述注册事务请求,将所述可信计算设备的标识、随机因子生成算法的代码存证和公钥,上链存储;获取所述区块链中随机数合约的地址,并根据所述地址启动对所述随机数合约产生的事件日志的监听。13.根据权利要求9所述的方法,其中,所述随机数合约为预言机合约,所述可信计算设备部署于预言机节点中。14.一种区块链获取随机数的装置,配置于区块链节点,所述装置包括:随机数获取请求生成模块,用于在执行业务事务请求的过程中,调用随机数合约,以产生随机数获取请求;随机数获取请求执行模块,用于通过所述随机数合约处理所述随机数获取请求,并使得链外设置的可信计算设备,基于所述可信计算设备的私钥产生随机因子;随机数生成模块,用于通过所述随机数合约获取所述可信计算设备反馈的随机因子,并根据所述随机因子和链上随机算法产生随机数;随机数反馈模块,用于通过所述随机数合约将所述随机数反馈给所述业务事务请求。15.一种区块链获取随机数的装置,配置于可信计算设备,所述装置包括:随机数获取请求获取模块,用于获取区块链上部署的随机数合约所执行的随机数获取请求;随机因子生成模块,用于根据所述随机数获取请求,在可信计算设备中,采用所述可信计算设备的私钥产生随机因子;随机因子反馈模块,用于将所述随机因子反馈给所述随机数合约。16.一种电子设备,包括:
至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的一种区块链获取随机数的方法或权利要求9-13中任一项所述的一种区块链获取随机数的方法。17.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-8中任一项所述的一种区块链获取随机数的方法或权利要求9-13中任一项所述的一种区块链获取随机数的方法。

技术总结
本公开提供了一种区块链获取随机数的方法、装置、设备和介质,涉及计算机技术领域,尤其涉及区块链、数据可信计算技术。该方法应用于区块链节点,包括:在执行业务事务请求的过程中,调用随机数合约,以产生随机数获取请求;通过所述随机数合约处理所述随机数获取请求,并使得链外设置的可信计算设备,基于所述可信计算设备的私钥产生随机因子;通过所述随机数合约获取所述可信计算设备反馈的随机因子,并根据所述随机因子和链上随机算法产生随机数;通过所述随机数合约将所述随机数反馈给所述业务事务请求。上述技术方案提高了随机因子生成的可靠性,对所生成随机数的可靠性具有重要意义。意义。意义。


技术研发人员:刘晓赫
受保护的技术使用者:北京百度网讯科技有限公司
技术研发日:2022.03.15
技术公布日:2022/4/12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献