对象选取方法及装置、电子设备制造方法及图纸

技术编号:20845037 阅读:33 留言:0更新日期:2019-04-13 08:59
本说明书一个或多个实施例提供一种对象选取方法及装置、电子设备,应用于区块链节点;所述方法包括:调用用于选取对象的智能合约,所述智能合约用于根据备选对象提供的种子数据生成随机种子,并通过伪随机数发生器生成基于所述随机种子的伪随机数,以使得匹配于所述伪随机数的备选对象被选取为目标对象。

【技术实现步骤摘要】
对象选取方法及装置、电子设备
本说明书一个或多个实施例涉及区块链
,尤其涉及一种对象选取方法及装置、电子设备。
技术介绍
当某一事件被设定为由预设数量的对象实施时,如果备选对象的数量超出该预设数量,则需要从这些备选对象中进行选择。当这些备选对象对于该事件的实施并无明显区别时,可以从这些备选对象中随机选取上述预设数量的对象。例如,当系统内包含10台设备时,如果希望配置为2台主设备、8台从设备的架构,可以从该10台设备中随机选取2台主设备,则剩余的8台设备为从设备。
技术实现思路
有鉴于此,本说明书一个或多个实施例提供一种对象选取方法及装置、电子设备。为实现上述目的,本说明书一个或多个实施例提供技术方案如下:根据本说明书一个或多个实施例的第一方面,提出了一种对象选取方法,应用于区块链节点;所述方法包括:调用用于选取对象的智能合约,所述智能合约用于根据备选对象提供的种子数据生成随机种子,并通过伪随机数发生器生成基于所述随机种子的伪随机数,以使得匹配于所述伪随机数的备选对象被选取为目标对象。根据本说明书一个或多个实施例的第二方面,提出了一种对象选取装置,应用于区块链节点;所述装置包括:调用单元,调用用于选取对象的智能合约,所述智能合约用于根据备选对象提供的种子数据生成随机种子,并通过伪随机数发生器生成基于所述随机种子的伪随机数,以使得匹配于所述伪随机数的备选对象被选取为目标对象。根据本说明书一个或多个实施例的第三方面,提出了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器通过运行所述可执行指令以实现如上述实施例中任一所述的方法。附图说明图1是一示例性实施例提供的一种对象选取方法的流程图。图2是一示例性实施例提供的一种摇号选购不动产的示意图。图3是一示例性实施例提供的一种基于智能合约的摇号过程的示意图。图4是一示例性实施例提供的一种设备的结构示意图。图5是一示例性实施例提供的一种对象选取装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。图1是一示例性实施例提供的一种对象选取方法的流程图。如图1所示,该方法应用于区块链节点,可以包括以下步骤:步骤102,调用用于选取对象的智能合约,所述智能合约用于根据备选对象提供的种子数据生成随机种子,并通过伪随机数发生器生成基于所述随机种子的伪随机数,以使得匹配于所述伪随机数的备选对象被选取为目标对象。在一实施例中,由于随机种子是基于备选对象提供的种子数据而产生,使得该随机种子具备真正的高度随机性,无法被不法分子预测和设定,使得基于该随机种子产生的伪随机数同样具备高度随机性,从而防止不法分子造假作弊。同时,由于随机种子的生成过程、伪随机数的生成过程均有智能合约实现,而智能合约被存证于区块链中,使得该智能合约的内容公开且不可篡改,使得对于目标对象的选择过程公平、公开、可验证,进一步降低了不法分子造假作弊的可能性。在一实施例中,所述智能合约用于在每次收到备选对象提供的种子数据后,按照预设算法对所述随机种子实施与所述种子数据相关的更新处理。随机种子的初始取值可以为预设初始值;或者,当收到备选对象提供的第一个种子数据后,可以将该第一个种子数据作为随机种子的初始取值。当随机种子为Z1时,若收到备选对象提供的种子数据1,可以基于预设算法对随机种子Z1和该种子数据1进行计算,使得随机种子被更新为Z2;进一步地,若收到备选对象提供的种子数据2,可以基于预设算法对随机种子Z2和该种子数据2进行计算,使得随机种子被更新为Z3,直至备选对象提供的所有种子数据都参与了对随机种子的更新处理。在一实施例中,所述智能合约用于在收到备选对象提供的所有种子数据后,对所有种子数据进行拼接,并按照预设算法对所述随机种子的初始取值实施与拼接后数据相关的更新处理;其中,所述随机种子的初始取值为预设初始值。例如,智能合约中可以描述用于接收种子数据的时间段,使得备选对象在该时间段内提供的种子数据,可以用于对随机种子进行更新,则智能合约在该时间段的终止时刻之前,不会对备选对象提供的种子数据进行处理,而是在该终止时刻到达之后,将该时间段内收到的所有种子数据进行拼接后,将拼接后种子数据应用于对随机种子进行更新,比如按照预设算法对该拼接后种子数据与随机种子的初始取值进行计算,从而得到更新后的随机种子。在一实施例中,随机种子的预设初始值可以包括下述任一:实施赋值操作时(即需要向随机种子赋予该预设初始值的时刻)的时间戳、区块链中的历史区块(例如区块链中最近生成的一个区块)的哈希值、区块链中的历史区块中的指定交易(例如按照交易时刻排列的第a笔交易,a为预设数值)的哈希值。在一实施例中,上述的预设算法可以包括消息摘要算法,可以计算随机种子与种子数据的哈希值,以作为更新后的随机种子。当然,该预设算法还可以包括其他类型的算法,本说明书并不对此进行限制。在一实施例中,所述随机种子的取值还与所述种子数据的接收时间戳相关,使得随机种子的取值同时受到种子数据和接收时间戳的影响,可以进一步增加随机种子被更新后的随机性,从而提升对目标对象进行选取时的公平性,避免不法分子造假作弊。在一实施例中,可以向所述备选对象提供所述智能合约支持的多个备选的伪随机数发生器,以由所述备选用户进行选择,可以进一步体现出公平、公开,并且增加了随机性。例如,可以预先在智能合约中定义多种伪随机数发生器,而备选对象在提供种子数据的同时,还可以提交对伪随机数发生器的选择信息,使得智能合约可以通过统计各个备选对象的选择信息,确定各个伪随机数发生器对应的被选择次数,从而将被选择次数排列于预设名次(如被选择次数排列于第一、被选择次数排列于第三或其他任意名次)的伪随机数发生器应用于生成伪随机数。在一实施例中,所述智能合约还用于:将所述种子数据和/或所述随机种子存证于区块链中,使得备选用户或监管方可以随时从区块链中对种子数据、随机种子等进行查证,以确保随机种子的更新过程不会发生造假作弊,或者及时发现可能的造假作弊情况。在一实施例中,所述智能合约还用于:将所述伪随机数存证于区块链中,使得备选用户或监管方可以随时从区块链中对伪随机数、伪随机数发生器与随机种子之间的关系进行验证,以确保伪随机数的生成过程不会发生造假作弊,或者及时发现可能的造假作弊情况。在一实施例中,所述智能合约还用于:对任一对象的资格注册信息进行验证,并在验证通过后将所述任一对象的资格信息存证于区块链中,以使所述任一对象成为所述备选对象;其中,所述资格注册信息包括所述任一对象的公钥,且本文档来自技高网...

【技术保护点】
1.一种对象选取方法,应用于区块链节点;所述方法包括:调用用于选取对象的智能合约,所述智能合约用于根据备选对象提供的种子数据生成随机种子,并通过伪随机数发生器生成基于所述随机种子的伪随机数,以使得匹配于所述伪随机数的备选对象被选取为目标对象。

【技术特征摘要】
1.一种对象选取方法,应用于区块链节点;所述方法包括:调用用于选取对象的智能合约,所述智能合约用于根据备选对象提供的种子数据生成随机种子,并通过伪随机数发生器生成基于所述随机种子的伪随机数,以使得匹配于所述伪随机数的备选对象被选取为目标对象。2.根据权利要求1所述的方法,所述智能合约用于在每次收到备选对象提供的种子数据后,按照预设算法对所述随机种子实施与所述种子数据相关的更新处理;其中,所述随机种子的初始取值为预设初始值或首个由备选对象提供的种子数据。3.根据权利要求1所述的方法,所述智能合约用于在收到备选对象提供的所有种子数据后,对所有种子数据进行拼接,并按照预设算法对所述随机种子的初始取值实施与拼接后数据相关的更新处理;其中,所述随机种子的初始取值为预设初始值。4.根据权利要求2或3所述的方法,所述预设初始值包括下述任一:实施赋值操作时的时间戳、区块链中的历史区块的哈希值、区块链中的历史区块中的指定交易的哈希值。5.根据权利要求1所述的方法,所述随机种子的取值还与所述种子数据的接收时间戳相关。6.根据权利要求1所述的方法,还包括:向所述备选对象提供所述智能合约支持的多个备选的伪随机数发生器,以由所述备选用户进行选择。7.根据权利要求1所述的方法,所述智能合约还用于:将所述种子数据和/或所述随机种子存证于区块链中。8.根据权利要求1所述的方法,所述智能合约还用于:将所述伪随机数存证于区块链中。9.根据权利要求1所述的方法,所述智能合约还用于:对任一对象的资格注册信息进行验证,并在验证通过后将所述任一对象的资格信息存证于区块链中,以使所述任一对象成为所述备选对象;其中,所述资格注册信息包括所述任一对象的公钥,且所述资格注册信息由所述任一对象的私钥进行签名。10.根据权利要求9所述的方法,所述种子数据由所述备选对象通过私钥进行签名;所述智能合约还用于:对收到的种子数据进行签名验证。11.一种对象选取装置,应用于区块链节点;所述装置包括:调用单元,调用用于选取对象的智能合约,所述智能合...

【专利技术属性】
技术研发人员:谢桂鲁
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1