【技术实现步骤摘要】
随机数生成与验证方法、装置、电子设备及可读存储介质
本申请涉及区块链
,具体而言,本申请涉及一种随机数生成与验证方法、装置、电子设备及可读存储介质。
技术介绍
在区块链上,由于一切信息都是透明公开的,提供一个安全实用的随机数实现方案是一个非常困难的问题。目前随机数在区块链上具有较多的使用场景,如游戏及流程控制等。传统区块链上随机数的实现多通过以下几种方式:第一种是让可信第三方为合约提供随机数,这种情况通常是中心化的解决方案,通过一个可信的oracle来提供独立的随机数源。第二种是交互式的commit(承诺)和reveal(打开)。参与过程的多方预先commit一个随机数,然后将其hash值递交到区块链上。所有参与方都递交完毕后,各方reveal自己的随机数,通过将各自的随机数合并产生一个最终的随机数。第三种是采用链上的公开信息,比如使用区块的哈希值、时间戳、难度系数等作为随机数源。第四种是从共识层,通过阈值签名的方式,使得每个共识节点递交各自对某个信息的签名片段,在足够多的签名片 ...
【技术保护点】
1.一种随机数生成方法,其特征在于,应用于区块链中预指定的随机源节点,所述方法包括:/n接收随机数生成交易请求;/n基于当前区块信息,并基于预设的签名算法生成随机种子;/n广播所述随机种子,以使所述区块链中除所述随机源节点外的其他节点接收所述随机种子,并基于所述随机种子生成随机数。/n
【技术特征摘要】
1.一种随机数生成方法,其特征在于,应用于区块链中预指定的随机源节点,所述方法包括:
接收随机数生成交易请求;
基于当前区块信息,并基于预设的签名算法生成随机种子;
广播所述随机种子,以使所述区块链中除所述随机源节点外的其他节点接收所述随机种子,并基于所述随机种子生成随机数。
2.根据权利要求1所述的方法,其特征在于,还包括:
生成所述随机种子的验证数据。
3.根据权利要求2所述的方法,其特征在于,所述广播所述随机种子,包括:
基于所述随机种子以及所述验证数据组装随机源信息并广播所述随机源信息,以使所述其他节点基于所述验证数据对所述随机种子进行验证。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述随机数生成交易请求中携带有指定区块高度信息,所述基于当前区块信息,并基于预设的签名算法生成随机种子,包括:
确定当前的区块高度信息是否不低于所述指定区块高度信息;
若是,则基于当前区块信息,并基于预设的签名算法生成随机种子。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述基于当前区块信息,并基于预设的签名算法生成随机种子,包括:
基于所述当前区块信息生成字符串;
基于所述字符串以及所述随机源节点的私钥,并基于预设的签名算法生成随机种子。
6.一种随机数验证方法,其特征在于,应用于区块链...
【专利技术属性】
技术研发人员:陈志明,姜鹏,张雅楠,
申请(专利权)人:中信银行股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。