CN113296737A - 随机数的生成系统、方法、装置和云端服务器 - Google Patents
随机数的生成系统、方法、装置和云端服务器 Download PDFInfo
- Publication number
- CN113296737A CN113296737A CN202010751664.7A CN202010751664A CN113296737A CN 113296737 A CN113296737 A CN 113296737A CN 202010751664 A CN202010751664 A CN 202010751664A CN 113296737 A CN113296737 A CN 113296737A
- Authority
- CN
- China
- Prior art keywords
- random number
- target
- cloud server
- matched
- number generation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000012545 processing Methods 0.000 claims description 22
- 238000001514 detection method Methods 0.000 claims description 19
- 238000012360 testing method Methods 0.000 claims description 8
- 238000012216 screening Methods 0.000 claims description 3
- 238000005538 encapsulation Methods 0.000 claims description 2
- 238000004806 packaging method and process Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本说明书提供了随机数的生成系统、方法、装置和云端服务器。在一个实施例中,基于上述随机数的生成系统,具体实施前,预先在云端服务器上配置好与多个随机数生成器匹配的多个第一数据接口,以便通过多个第一数据接口连入多个不同的随机数生成器;同时,在云端服务器上还为终端设备设置统一的第二数据接口,以便终端设备可以通过第二数据接口与云端服务器交互;具体实施时,该系统通过云端服务器根据来自终端设备的随机数生成请求,先确定出匹配的随机数生成规则;再根据匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,来生成符合用户要求的目标随机数,反馈给用户,使得用户可以高效、便捷地获取所需要的随机数。
Description
技术领域
本说明书属于互联网技术领域,尤其涉及随机数的生成系统、方法、装置和云端服务器。
背景技术
在例如数据加密等应用场景中,常常需要使用到大量的随机数。
目前,亟需一种能够使得用户可以高效、便捷地获取所需要的随机数的方法。
发明内容
本说明书提供了一种随机数的生成系统、方法、装置和云端服务器,以使得用户可以高效、便捷地获取所需要的随机数。
本说明书提供的一种随机数的生成系统、方法、装置和云端服务器是这样实现的:
一种随机数的生成系统;其中,所述随机数的生成系统包括云端服务器和多个随机数生成器;所述云端服务器预设有多个第一数据接口,所述第一数据接口与至少一个随机数生成器匹配,所述多个第一数据接口用于连接所述多个随机数生成器;所述云端服务器还预设有第二数据接口,所述第二数据接口用于连接终端设备;所述云端服务器通过所述第二数据接口接收终端设备发送的随机数生成请求;所述云端服务器根据所述随机数生成请求,确定匹配的随机数生成规则;并根据所述匹配的随机数生成规则,通过所述第一数据接口调用相应的随机数生成器,生成符合用户要求的目标随机数;所述云端服务器通过所述第二数据接口向所述终端设备发送所述目标随机数。
一种随机数的生成方法,包括:接收随机数生成请求;根据所述随机数生成请求,确定出匹配的随机数生成规则;根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
一种随机数的生成方法,包括:生成随机数生成请求;向云端服务器发送所述随机数生成请求;其中,所述云端服务器连接有多个随机数生成器;所述云端服务器用于根据所述随机数生成请求,确定出匹配的随机数生成规则;并根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数;接收所述目标随机数。
一种随机数的生成装置,包括:第一接收模块,用于接收随机数生成请求;确定模块,用于根据所述随机数生成请求,确定出匹配的随机数生成规则;第一生成模块,用于根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
一种随机数的生成装置,包括:第二生成模块,用于生成随机数生成请求;发送模块,用于向云端服务器发送所述随机数生成请求;其中,所述云端服务器连接有多个随机数生成器;所述云端服务器用于根据所述随机数生成请求,确定出匹配的随机数生成规则;并根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数;第二接收模块,用于接收所述目标随机数。
一种云端服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现接收随机数生成请求;根据所述随机数生成请求,确定出匹配的随机数生成规则;根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现接收随机数生成请求;根据所述随机数生成请求,确定出匹配的随机数生成规则;根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
本说明书提供的随机数的生成系统、方法、装置和云端服务器,基于上述随机数的生成系统,具体实施前,可以预先在云端服务器上配置好与随机数生成器匹配的多个第一数据接口,以便通过上述多个第一数据接口连入多个不同的随机数生成器;同时,在云端服务器上还为终端设备配置好统一的第二数据接口,以便用户可以很方便地使用终端设备通过第二数据接口与云端服务器进行交互;具体实施时,基于该系统,云端服务器可以根据来自终端设备的随机数生成请求,先确定出匹配的随机数生成规则;再根据该匹配的随机数生成规则,从相连接的多个随机数生成器中调用相应的随机数生成器,来生成符合用户要求的目标随机数,反馈给终端设备。从而可以简化用户操作,使得用户可以高效、便捷地获取所需要的随机数。
附图说明
为了更清楚地说明本说明书实施例,下面将对实施例中所需要使用的附图作简单地介绍,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本说明书实施例提供的随机数的生成系统的结构组成的一个实施例的示意图;
图2是本说明书的一个实施例提供的随机数的生成方法的流程示意图;
图3是在一个场景示例中,应用本说明书实施例提供的随机数的生成的一种实施例的示意图;
图4是在一个场景示例中,应用本说明书实施例提供的随机数的生成方法的一种实施例的示意图;
图5是在一个场景示例中,应用本说明书实施例提供的随机数的生成方法的一种实施例的示意图;
图6是在一个场景示例中,应用本说明书实施例提供的随机数的生成方法的一种实施例的示意图;
图7是本说明书的一个实施例提供的云端服务器的结构组成示意图;
图8是本说明书的一个实施例提供的随机数的生成装置的结构组成示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
本说明书实施例提供一种随机数的生成系统。具体可以参阅图1所示,该系统包括云端服务器和多个随机数生成器。
在本实施例中,上述多个随机数生成器例如可以包括随机数生成器1、随机数生成器2……随机数生成器m等。其中,不同的随机数生成器可以是基于不同的随机数生成机理,和/或,使用不同的硬件设备的随机数发生器。因此,不同的随机数生成器所使用的数据接口,和.或,所依赖的数据处理协议(例如,通信协议等)往往会存在差异。
具体实施前,可以根据各个随机数生成器所使用的数据接口、所依赖的数据处理协议,结合各个随机数生成器所基于的随机数生成机理,在云端服务器上,预先设置好分别与各个随机数生成器匹配的数据接口,记为第一数据接口。这样云端服务器可以通过上述多个第一数据接口同时连接、调用多个不同的随机数生成器。
在所述云端服务器上,还可以预先设置好与终端设备匹配的数据接口,记为第二数据接口。其中,上述第二数据接口具体可以包括一种使用较为普遍的、大多数的终端设备都能支持的标准化接口,例如,USB接口、网络通信接口等。这样终端设备可以很方便地通过上述第二数据接口与云端服务器相连,以便于云端服务器进行具体的数据交互。
具体实施时,用户如果需要生成随机数,可以通过终端设备生成相应的随机数生成请求。终端设备可以通过第二数据接口将上述随机数生成请求发送给云端服务器。
所述云端服务器通过所述第二数据接口接收终端设备发送的随机数生成请求。进一步,所述云端服务器可以根据所述随机数生成请求,确定匹配的随机数生成规则(例如,能够满足用户要求的随机数生成方案);再根据所述匹配的随机数生成规则,通过所述第一数据接口调用相应的随机数生成器,来生成符合用户要求的目标随机数。然后,所述云端服务器可以通过所述第二数据接口向所述终端设备发送所述目标随机数。
所述终端设备可以通过上述第二数据接口接收云端服务器所生成的满足用户要求的目标随机数。
在本实施例中,所述云端服务器具体可以包括一种应用于云端平台一侧,能够实现数据传输、数据处理等功能的服务器。具体的,所述云端服务器例如可以为一个具有数据运算、存储功能以及网络交互功能的电子设备。或者,所述云端服务器也可以为运行于该电子设备中,为数据处理、存储和网络交互提供支持的软件程序。在本实施例中,并不具体限定所述云端服务器所包含的服务器数量。所述云端服务器具体可以为一个服务器,也可以为几个服务器,或者,由若干服务器形成的服务器集群。
在本实施例中,所述终端设备具体可以包括一种应用于用户一侧,能够实现数据采集、数据传输等功能的前端设备。具体的,所述终端设备例如可以为台式电脑、平板电脑、笔记本电脑、智能手机、服务器等电子设备。或者,所述终端设备也可以为能够运行于上述电子设备中的软件应用。例如,可以是在台式电脑上运行的虚拟机等。
参阅图2所示,本说明书实施例提供了一种随机数的生成方法。其中,该方法具体应用于云端服务器一侧。具体实施时,该方法可以包括以下内容。
S201:接收随机数生成请求。
在一些实施例中,上述随机数生成请求具体可以包括一种用于请求云端服务器生成随机数的请求数据。
在一些实施例中,上述随机数生成请求中还可以携带有配置参数。其中,上述配置参数具体可以是一种用于表征用户要求的参数数据。
具体的,上述配置参数可以包括:随机数的生成数量参数、随机数的生成时间参数、随机数的生成位置参数、随机数的生成质量参数等等。当然,需要说明的是,上述所列举的配置参数只是一种示意性说明。具体实施时,根据具体情况和处理需求,上述配置参数还可以包括除上述所列举的参数以外其他类型的参数。
在一些实施例中,上述随机数的生成数量参数具体可以是用户在本次请求中所指示的请求生成的随机数总量。例如,随机数的生成数量参数为100,表示用户在本次请求中要求生成100个随机数。上述随机数的生成时间参数具体可以是用户在本次请求中所指示的随机数生成时长的上限值。例如,随机数的生成时间参数为10分钟,表示用户在本次请求中要求要在10分钟内生成所需要的随机数。上述随机数的生成质量参数具体可以是用户在本次请求中所指示的随机数的质量等级类型,例如,最高质量、较高质量、普通质量等。上述随机数的生成位置参数具体可以是用户在本次请求中所指示的最终生成随机数的设备位置。例如,随机数的生成位置参数为终端设备,表示用户在本次请求中要求最后的随机数要在终端设备本地生成等。
在一些实施例中,用户可以不需要了解具体的随机数生成原理,或者复杂的接口、协议等,只需要根据具体情况和实际需求,在终端设备上设置相应的配置参数,来描述出对随机数要求(即用户要求)即可。终端设备可以结合上述配置参数,生成携带有配置参数的随机数生成请求;并通过第二数据接口将上述携带有配置参数的随机数生成请求发送给云端服务器。相应的,云端服务器可以通过第二数据接口接收到随机数生成请求。
S202:根据所述随机数生成请求,确定出匹配的随机数生成规则。
在一些实施例中,上述根据所述随机数生成请求,确定出匹配的随机数生成规则,具体实施时,可以包括以下内容:根据所述随机数生成请求所携带的配置参数,确定出用户要求;其中,所述用户要求包括以下至少之一:质量要求、保密性要求、效率要求;根据所述用户要求,确定出匹配的随机数生成规则。
在一些实施例中,上述用户要求具体可以包括:质量要求(例如,对应最高质量的一级质量要求,或者对应较高质量的二级质量要求,或者对应普通质量的三级质量要求等)、保密性要求(例如,用户对生成随机数的过程要求保密,或者用户对随机数的传输过程要求保密等)、效率要求(例如,用户对随机数的生成效率要求为高效率,或者生成效率为用户指定的效率指:大于或等于5个/分等)等多个基本用户要求中的一个或多个。
在一些实施例中,上述匹配的随机数生成规则,具体可以包括一种用于生成满足用户要求的随机数的数据处理规则。
具体的,上述随机数生成规则可以包括:在生成随机数过程中需要调用的随机数生成器的类型(例如是基于量子力学原理的量子随机数生成器,还是基于算法模拟的伪随机数生成器);或者,在生成随机数过程中所采用有的生成方式(例如,是通过组合多个随机数来生成最终的一个随机数,还是通过组合随机数熵源并根据组合后的随机数熵源来生成最终的一个随机数);或者,在生成随机数后,是否要对随机数进行加密的加密处理;还或者,是否要将最终随机数的生成位置设置在终端设备本地实现等等。
在一些实施例中,云端服务器可以根据具体的用户要求,生成针对该用户的、匹配的随机数生成规则。从而可以使得用户在不具有专业知识的情况下,也能很方便地定制出满足用户的个性化要求的随机数生成方案。
在一些实施例中,具体实施前,云端服务器可以预先针对多种基本用户要求分别配置好对应的预设的模板规则。具体实施时,云端服务器可以先将当前的用户要求拆分成多个基本用户求;进而可以根据所拆分出的多个基本用户要求,筛选出多个匹配的预设的模板规则;再组合上述多个匹配的预设的模板规则,并根据随机数生成请求中携带的配置参数,在预设的模板规则中设置相应的参数值,从而可以得到匹配的随机数生成规则。
S203:根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
在一些实施例中,上述目标随机数具体可以理解为一种满足用户要求的、待反馈给用户的随机数。
在一些实施例中,具体实施时,根据匹配的随机数生成规则,可以至少确定出在随机数生成过程中需要调用到的随机数生成器作为目标随机数生成器,以及在随机数生成过程中需要采用的生成方式作为目标生成方式。
在一些实施例中,可以从预设的多个第一数据接口中找到与所述目标随机数生成器匹配的第一数据接口作为第一目标数据接口。进而可以通过第一目标数据接口调用对应的目标随机数生成器。
在一些实施例中,具体实施时,可以根据匹配的随机数生成规则,通过第一目标数据接口调用相应的目标随机数生成器,按照目标生成方式来生成随机数,作为满足用户要求的目标随机数。
在一些实施例中,根据不同类型的用户要求,云端服务器可以生成并根据不同的随机数生成规则来有差异化地生成能够满足不同用户要求的目标随机数,从而可以较好地满足用户对随机数的多样化要求。
在一些实施例中,在所述用户要求包括质量要求(例如二级质量要求)的情况下,所述根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数,具体实施时,可以包括以下内容:根据所述匹配的随机数生成规则,从多个随机数生成器中确定出多个匹配的目标随机数生成器;确定出与所述多个目标随机数生成器匹配的多个第一数据接口作为多个第一目标数据接口;通过所述多个第一目标数据接口调用所述多个目标随机数生成器分别生成随机数,得到多个随机数;根据所述多个随机数,生成目标随机数。
在本实施例中,上述目标随机数生成器具体可以包括基于配置参数所确定出适用于该用户的,且所生成的随机数的随机性通常相对较好的随机数生成器。
在一些实施例中,具体的,可以参阅图3所示,通过上述方式,云端服务器可以通过多个第一目标数据接口调用对应的多个目标随机数生成器在各个随机数生成器中分别生成随机数。例如,在目标随机数生成器1中生成随机数1,在目标随机数生成器2中生成随机数2……在目标随机数生成器n中生成随机数n。上述随机数可以分别记为初始随机数。
进一步,目标随机数生成器可以将各自生成的初始随机数通过相应的第一目标数据接口传输至云端服务器。从而使得云端服务器获得上述多个初始随机数。
在本实施例中,上述多个随机数具体可以包括基于不同的量子随机数生成机理所生成的量子随机数。上述多个随机数还可以包括基于算法模拟生成的伪随机数。
在本实施例中,又考虑到单个随机数生成器所生成的单个随机数会存在质量风险。例如,由于单个随机数生成器本身设备运行的不稳定,导致本次所生成的单个随机数的随机性可能相对较差,数据质量相对较低,不符合用户的质量要求。
基于上述考虑,为了能生成满足用户要求的、质量较高、较为稳定的目标随机数,参阅图3所示,云端服务器可以在云端服务器上组合上述来自不同的随机数生成的多个随机数,生成一个随机性相对较好、数据质量相对较高的随机数作为最终反馈给用户的目标随机数。
在一些实施例中,所述根据所述多个随机数,生成目标随机数,具体实施时,可以包括以下内容:对所述多个随机数进行异或求和运算,将运算结果作为所述目标随机数。
在一些实施例中,对所述多个随机数进行异或求和运算,具体实施时,可以包括:按照以下算式对多个随机数进行异或求和运算:
Entropy(max(x1XORx2XOR……XORxn))=Entropy(max(xi))。
其中,上述xi具体可以表示为多个随机数中编号为i的随机数,i的取值为1到n,n的数值为多个目标随机数生成器的总数,XOR表示异或运算。
通过上述方式对多个随机数进行异或求和运算,得到运算结果的随机性会优于或等于所述多个随机数中随机性较好的随机数。因此,使用该运算结果作为最终反馈给用户的目标随机数,可以较为有效地避免单独利用单个随机数生成器生成单个随机数时,由于设备运行不稳定等原因,导致所获得的随机数的质量相对较差,不符合用户的较高质量要求的问题。
当然,需要说明的是,上述所列举的通过对多个随机数进行异或求和运算来获得目标随机数的方式只是一种示意性说明。具体实施时,还可以采用其他合适的方式来综合根据多个随机数生成目标随机数。
在一些实施例中,在所述用户要求包括质量要求(例如比二级质量要求更高的一级质量要求)的情况下,所述根据所述随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数,具体实施时,还可以包括以下内容:根据所述匹配的随机数生成规则,从多个随机数生成器中确定出多个匹配的目标随机数生成器;获取所述目标随机数生成器所基于的随机数熵源,得到多个随机数熵源;组合所述多个随机数熵源,得到目标随机数熵源;根据所述目标随机数熵源,生成对应的随机数,作为所述目标随机数。
在本实施例中,上述随机数熵源具体可以理解为随机数生成器用于生成随机数的数据源。具体的,例如,对于量子随机数生成器,上述随机数熵源具体可以包括从随机源中提取出的用于生成随机数的噪声信号(例如,热噪声、电噪声、相位噪声、偏振噪声等)。
在一些实施例中,具体实施时,参阅图4所示,云端服务器可以通过第一目标数据接口获取目标随机数生成器用于生成随机数的随机数熵源。当然,具体实施时,云端服务器也可以通过除第一目标数据接口以外的其他途径获取目标随机数生成器的随机数熵源。
在本实施例中,为了进一步提高所反馈给用户的目标随机数的随机性,满足用户更高的质量要求,具体实施时,云端服务器还可以通调用目标随机数生成器获取目标随机数生成器所基于的随机数熵源。例如,目标随机数生成器1所使用的随机数熵源1、目标随机数生成器2所使用的随机数熵源2……目标随机数生成器n所使用的随机数熵源n。
进而云端服务器可以在云端服务器上组合上述来自不同的随机数生成器的多个随机数熵源,得到一个效果相对更好、更不可预测的目标随机数熵源。再在云端服务器上,利用该目标随机数熵源来生成随机数,作为目标随机数。
由于上述目标随机数熵源是综合了多种不同的随机数熵源得到的,相对于普通的单个随机数熵源具有更好的不可预测性。因此,基于上述目标随机数熵源所得到的目标随机数,相对于基于普通的单个随机数熵源得到的随机数,具有更好的随机性。
在一些实施例中,在所述用户要求包括保密性要求的情况下,所述方法具体实施时,还可以包括以下内容:对所述目标随机数进行加密处理,得到加密后的目标随机数,并向终端设备发送所述加密后的目标随机数。
在本实施例中,在对目标随机数进行加密处理之前,还可以根据所述匹配的随机数生成规则,从多个随机数生成器中确定出目标随机数生成器;确定出与所述目标随机数生成器匹配的第一数据接口作为第一目标数据接口;通过所述第一目标数据接口,调用所述目标随机数生成器生成目标随机数。
其中,上述目标随机数生成器具体可以包括基于配置参数所确定出适用于该用户的,且生成的随机数时的保密性相对较好的随机数生成器。
在一些实施例中,针对不同的应用场景,用户对保密性的要求会存在差异。例如,在基于区块链的交易数据处理场景,用户通常对随机数的保密性要求会相对较高。这时,云端服务器可以通过对随机数的生成位置,以及随机数的传输过程两个阶段有针对性地采取相应的保密措施,以减少随机数被泄露的风险,保护随机数的数据隐私,满足用户对保密性的要求。
在一些实施例中,云端服务器可以对目标随机数的传输过程进行保密处理。云端服务器在生成目标随机数后,可以先对目标随机数进行加密处理,再将加密后的目标随机数发送给终端设备,从而可以避免目标随机数在从云端服务器传输至终端设备的过程中出现泄露。
具体的,云端服务器在发送目标随机数之前,可以先生成一对相互匹配的加密秘钥和解密秘钥。云端服务器可以将上述解密秘钥先发送给终端设备。云端服务器在生成目标随机数后,可以先利用加密秘钥对目标随机数进行加密处理,得到加密后的目标随机数。再将加密后的目标随机数发送至终端设备。终端设备在接收到加密后的目标随机数后,可以通过解密秘钥进行解密处理,从而可以得到目标随机数。
在一些实施例中,云端服务器还可以将目标随机数的生成位置设置在终端设备一侧。这样可以使得目标随机数最终是在终端设备本地生成的,减少云端服务器以及其他第三方的参与,并且由于目标随机数是在终端设备本地生成的,不需要再将目标随机数从云端服务器发送至终端设备,避免了目标随机数在传输过程中遭到泄露,从而可以进一步保护目标随机数的数据隐私,降低被泄露的风险,满足用户更高的保密性要求。
在一些实施例中,在所述用户要求包括保密性要求的情况下,所述方法具体实施时,还可以包括以下内容:将所述第一目标数据接口进行封装处理,得到封装处理后的接口数据包;在所述封装处理后的接口数据包上设置第二数据接口,得到目标接口数据包;将所述目标接口数据包发送至终端设备;其中,所述终端设备用于通过所述目标接口数据包调用所述目标随机数生成器以在终端设备本地生成目标随机数。
在本实施例中,参阅图5所示,云端服务器可以将原先布设在云端服务器一侧的第一目标数据接口(例如,与目标随机数生成器1匹配的第一目标数据接口1,与目标随机数生成器2匹配的第一目标数据接口2……与目标随机数生成器n匹配的第一目标数据接口n)进行备份,再将上述第一目标数据接口的备份进行封装处理,得到一个已经布设有第一目标数据接口的处理后的接口数据包。进一步,为了方便终端设备的接入,云端服务器还可以在该处理后的接口数据包设置与终端设备匹配的第二数据接口,得到终端设备可以直接接入并使用的目标接口数据包。
这样终端设备在接收到上述目标接口数据包后,参阅图6所示,终端设备可以通过第二数据接口接入该目标接口数据包,进而可以利用目标接口数据包中已经布设好的第一目标数据接口来连接对应的目标随机数生成器。进一步,终端设备可以利用上述目标接口数据包中的第一目标数据接口调用对应的目标随机数生成器在终端设备本地生成目标随机数。
在一些实施例中,上述目标接口数据包中所包含的第一目标数据接口可以是一个也可以是多个。
具体的,例如,终端设备可以利用上述目标接口数据包中的一个第一目标数据接口调用所对应的一个目标随机数生成器生成的随机数,进而可以将该随机数作为目标随机数。在终端设备的数据处理性能满足要求(例如,终端设备为配置较高的服务器)的情况下,上述终端设备还可以利用上述目标接口数据包中的多个第一目标数据接口调用并接收多个目标随机数生成器生成的多个随机数,进而可以在终端设备本地综合利用上述多个随机数,生成目标随机数。也可以是终端设先利用上述目标接口数据包中的多个第一目标数据接口调用并获取多个目标随机数生成器所基于的随机数熵源;在终端设备本地组合多个随机数熵源得到目标随机数熵源,再根据该目标随机数熵源来生成目标随机数。
在一些实施例中,在所述用户要求包括效率要求的情况下,所述根据所述随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数,具体实施时,可以包括以下内容:根据所述匹配的随机数生成规则,从多个随机数生成器中筛选出生成速率大于预设的阈值速率的随机数生成器作为目标随机数生成器;调用所述目标随机数生成器生成对应的随机数,作为所述目标随机数。
在本实施例中,上述目标随机数生成器具体可以包括基于配置参数所确定出适用于该用户的,且生成的随机数的速率相对较高,适于批量生成随机数的随机数生成器。
在本实施例中,在用户要求的随机数的数量较多,且对随机数的生成效率的要求较高的情况下,云端服务器可以从所接入的多个随机数生成器中找到生成速率相对最高的一个或多个随机数生成器作为目标随机数生成器。进而可以通过调用上述目标随机数生成器在短时间内生成大量的随机数作为目标随机数,及时反馈给用户,以满足用户的效率要求。
在一些实施例中,需要说明的是,上述所列举的多种根据匹配的随机数生成规则来生成目标随机数的实施例只是一种示意性说明。具体实施时,根据具体情况,还可以将上述多种生成目标随机数的实施例组合,来生成目标随机数,以符合更加复杂的用户要求。
具体的,例如,在用户要求同时包括质量要求和保密性要求的情况下,云端服务器可以按照以下方式来根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数:根据所述匹配的随机数生成规则,从多个随机数生成器中确定出多个匹配的目标随机数生成器;确定出与所述多个目标随机数生成器匹配的多个第一数据接口作为多个第一目标数据接口;通过所述多个第一目标数据接口调用所述多个目标随机数生成器分别生成随机数,得到多个随机数;根据所述多个随机数,生成目标随机数;对所述目标随机数进行加密处理,得到加密后的目标随机数,并向终端设备发送所述加密后的目标随机数。
又例如,在用户要求同时包括质量要求、效率要求和保密性要求的情况下,云端服务器可以先根据匹配的随机数生成规则,从多个随机数生成器中确定出两个生成效率较高同时能兼顾随机数质量的随机数生成器,作为目标随机数生成器;进而可以通过相应的第一数据接口调用上述两个目标随机数生成器生成两个随机数,再组合上述两个随机数得到目标随机数;进一步再对目标随机数进行加密处理,向终端设备发送加密后的目标随机数。
在一些实施例中,在按照上述方式生成符合用户要求的目标随机数后,云端服务器可以通过第二数据接口将上述目标随机数发送给终端设备。相应的,终端设备可以通过上述第二数据接口接收到目标随机数。
在本实施例中,基于上述随机数的生成方法,具体实施前,可以预先在云端服务器上配置好与随机数生成器匹配的多个第一数据接口,以便通过上述多个第一数据接口连入多个不同的随机数生成器;同时,在云端服务器上为终端设备配置好统一的第二数据接口,以便用户可以很方便地使用终端设备通过第二数据接口与云端服务器交互;具体实施时,基于该系统,可以通过云端服务器根据来自终端设备的随机数生成请求,先确定出匹配的随机数生成规则;再根据该匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,来生成符合用户要求的目标随机数,反馈给终端设备。从而可以简化用户操作,用户不需要具备专业的理论知识,也不需要再另外布设复杂的数据接口或协议,就能够通过云端服务器高效、便捷地获取所需要的随机数。
在一些实施例中,上述随机数生成请求也可以不携带有用户设置的配置参数。例如,用户也可不用在终端设备自行设置具体的配置参数。相应的,云端服务器在接收到上述随机数生成请求后,在确定该随机数生成请求没有携带有配置参数的情况下,可以根据预设的默认规则来调用相应的随机数生成器来,成目标随机数。
在一些实施例中,上述预设的默认规则具体可以云端服务器对历史上大量用户所使用的随机数生成规则进行学习,得到的适用范围相对交广、具有较高的使用频率的生成规则。
在一些实施例中,所述随机数生成器具体可以包括量子随机数生成器,或,伪随机数生成器。其中,所述量子随机数生成器进一步还可以包括多种基于不同的量子随机数机理的随机数生成器。相应的,上述伪随机数生成器进一步还可以包括多种基于不同的算法模拟机理的随机数生成器。
在一些实施例中,所述随机数生成请求具体还可以携带有的随机数的类型参数。其中,上述随机数的类型参数具体可以包括量子随机数、伪随机数等。
在一些实施例中,所述随机数生成请求还可以携带有的随机数的类型参数,且所述随机数的类型参数为量子随机数;相应的,所述方法具体实施时,还可以包括:根据所述随机数生成请求,确定出匹配的随机数生成规则,其中,所述匹配的随机数生成规则指向量子随机数生成器;根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的量子随机数生成器,生成量子随机数作为符合用户要求的目标随机数。
在一些实施例中,所述随机数生成请求还可以携带有的随机数的类型参数,且所述随机数的类型参数为伪随机数;相应的,所述方法具体实施时,还可以包括:根据所述随机数生成请求,确定出匹配的随机数生成规则,其中,所述匹配的随机数生成规则包括伪随机数生成器;根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的伪随机数生成器,生成伪随机数作为符合用户要求的目标随机数。
在一些实施例中,具体实施时,还可以是云端服务器根据随机数生成请求,结合用户当前具体的使用场景,自动确定出适合用户当前使用场景的随机数的类型是伪随机数还是量子随机数。进而,可以智能地调用对应的随机数生成器来生成符合用户要求的目标随机数。
例如,当云端服务器判断适合用户当前使用场景(例如,对随机性的要求较严格的场景)的是量子随机数,进而云端服务器可以在不需要用户明确指示的情况下,自动调用量子随机数生成器生成量子随机数作为符合用户要求的目标随机数,反馈给用户,进一步提高用户的使用体验。
在一些实施例中,上述所述随机数生成器具体还可以包括使用不同硬件设备的随机数生成器。
在一些实施例中,所述方法具体实施时,还可以包括以下内容:间隔预设的时间间隔,从当前时间段内生成的目标随机数中抽取预设个数(例如一个)的目标随机数作为测试数据;对所述测试数据进行随机性检测,得到随机性检测结果;根据所述随机性检测结果,确定当前时间段内的目标随机数的随机性。
在本实施例中,考虑到随机性检测往往需要耗费较大的数据处理量和处理时间。因此,云端服务器可以每隔预设的时间间隔(例如,每隔一周或每隔3天等)从当前时间段的目标随机数抽取测试数据进行随机性检测,从而可以减少随机性检测对云端服务器的数据处理负担。此外,也可以是云端服务器根据当前的数据处理量,自行确定是否进行随机性检测。例如,当云端服务器确定当前的数据处理量较小,所拥有的空闲进程较多的情况下,可以主动发起随机性检测。
在本实施例中,上述随机性检测(也可以称为随机性测试)具体可以包括基于随机性标准,通过进行大量的数据测试确定测试数据是否满足序列不能重复产生和/或序列是否不可预测等随机性能,进而得到对应的随机性检测结果。
在本实施例中,可以根据上述随机性检测结果,确定云端服务器当前时间段内生成的目标随机数的整体上表现出的随机性能是否符合预设的随机性要求,以此判断云端服务器当前所生成的随机数的整体质量,以及云端服务器所连入的多个随机数生成器当前运行情况。
在一些实施例中,如果根据上述随机性检测结果,确定云端服务器当前时间段内生成的目标随机数的随机性符合预设的随机性要求,则可以确定当前云端服务器所生成的随机数的整体质量相对较好,并且云端服务器所连入的多个随机数生成器当前运行情况稳定,生成的随机数也较为可靠。
在一些实施例中,在根据所述随机性检测结果,确定当前时间段内的目标随机数的随机性后,所述方法具体实施时,还可以包括以下内容:在确定当前时间段内的目标随机数的随机性能不符合预设的随机性要求的情况下,可以根据所述随机性检测结果,从所述多个随机数生成器中确定出运行不稳定的随机数生成器;暂停与所述运行不稳定的随机数生成器之间的连接。
在本实施例中,如果根据上述随机性检测结果,确定云端服务器当前时间段内生成的目标随机数的随机性不符合预设的随机性要求,则可以确定当前云端服务器所生成的随机数的整体质量相对较差,并且判断云端服务器所连入的多个随机数生成器可能存在一个或多个随机数生成器当前运行情况不稳定,所生成的随机数不可靠。
因此,还可以根据随机性检测结果,对被检测的目标随机数的生成过程进行回溯,找出运行不稳定的随机数生成器,并暂停与该运行不稳定的随机数生成器之间的连接,避免后续由于继续调用该随机数生成器生成目标随机数,影响目标随机数的质量。
在本实施例中,在确定出运行不稳定的随机数生成器后,还可以向上述运行不稳定的随机数生成器生成并发送调试请求,以便运行不稳定的随机数生成器可以及时响应上述调试请求,进行调试。直到调试后的随机数生成器能够稳定地生成随机性符合预设的随机性要求的随机数后,再重新连入、使用该随机数生成器。
在一些实施例中,为了进一步配合用户多样化的使用场景,满足多样化的用户要求,上述配置参数具体还可以包含有随机数的管理参数。
其中,上述随机数的管理参数具体可以用于指示云端服务器在将目标随机数发送给终端设备后,还需要在云端服务器一侧在一定时长内为用户保管该目标随机数的备份数据。具体的,上述随机数的管理参数具体可以包括:管理的时长(例如一个月)、保存方式、目标随机数的备份指示等。
具体的,例如,在一些数据加密场景中,用户需要通过云端服务器生成合适的目标随机数来生成对应的加密秘钥和解密秘钥,以对该场景中的隐私数据进行加密处理。同时用户还希望云端服务器可以协助管理该目标随机数的备份数据,以便在终端设备一侧遗失掉该目标随机数、加密秘钥、解密秘钥的情况下,用户可以通过云端服务器重新获取该目标随机数,进而可以还原出原来的加密秘钥和解密秘钥。
具体实施时,用户在通过终端设备设置配置参数时,可以设置例如目标随机数的备份指示、管理时长等管理参数。云端服务器在生成对应的目标随机数,并将该目标随机数发送给终端设备的同时,还会根据配置参数中的管理参数,对该目标随机数进行备份,并将备份后的目标随机数保存在云端服务器的数据库中。此外,云端服务器还可以记录下云端服务器向终端设备发送该目标随机数的时间信息,并根据该时间信息,在数据库中所保存的目标随机数的备份数据上设置相应的时间戳。
当终端设备遗失目标随机数时,可以生成并向云端服务器发送关于该目标随机数的补发请求。其中,上述补发请求具体可以携带有终端设备接收目标随机数的时间信息。
云端服务器在接收到该补发请求后,可以根据所携带的时间信息,搜索数据库,找到时间戳与该时间信息对应的目标随机数的备份数据,将该目标随机数的备份数据发送给终端设备。这样终端设备可以通过云端服务器找回遗失的目标随机数,并根据该目标随机数还原出相应的加密秘钥和解密秘钥。
在一些实施例中,云端服务器还可以接收各个随机数生成器发送的更新信息,并根据随机数生成器的更新信息及时更新与该随机数生成器匹配的第一数据接口,以及相关的数据处理协议。
由上可见,基于本说明书实施例提供的随机数的生成方法,具体实施前,可以预先在云端服务器上配置好与随机数生成器匹配的多个第一数据接口,以便通过上述多个第一数据接口连入多个不同的随机数生成器;同时,在云端服务器上为终端设备配置好统一的第二数据接口,以便用户可以很方便地使用终端设备通过第二数据接口与云端服务器交互;具体实施时,基于该系统,可以通过云端服务器根据来自终端设备的随机数生成请求,先确定出匹配的随机数生成规则;再根据该匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,来生成符合用户要求的目标随机数,反馈给终端设备。从而可以简化用户操作,使得用户可以高效、便捷地获取所需要的随机数。还通过组合多个随机数生成器生成的随机数来生成符合用户要求的目标随机数的,提高了所生成的目标随机数的随机性。还通过调用多个随机数生成器,获取多个随机数生成器所基于的随机数熵源,再组合上述多个随机数熵源,得到效果更好的目标随机数熵源,并根据该目标随机数熵源来生成目标随机数,进一步提高了所生成的目标随机数的随机性,满足用户更高的质量要求。
本说明书实施例提供了一种随机数的生成方法。该方法具体可以应用于终端设备一侧。其中,该方法具体实施时,可以包括以下内容。
S1:生成随机数生成请求。
S2:向云端服务器发送所述随机数生成请求;其中,所述云端服务器连接有多个随机数生成器;所述云端服务器用于根据所述随机数生成请求,确定出匹配的随机数生成规则;并根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
S3:接收所述目标随机数。
在一些实施例中,所述随机数生成请求还携带有以下配置参数中的一种或多种:随机数的生成数量参数、随机数的生成时间参数、随机数的生成质量参数、随机数的生成位置参数等。
在一些实施例中,上述生成随机数生成请求,具体实施时,还可以包括以下内容:接收用户设置配置参数;根据所述配置参数,生成携带有配置参数的随机数生成请求。
在一些实施例中,上述配置参数具体可以用于表征用户要求。其中,所述用户要求具体可以包括以下所列举的一种或多种:质量要求、保密性要求、效率要求等。
在一些实施例中,在所述用户要求包括保密性要求的情况下,接收所述目标随机数具体实施时,可以包括以下内容:接收云端服务器发送的解密秘钥;接收云端服务器加密后的目标随机数;利用所述解密秘钥对上述加密后的目标随机数进行解密处理,得到目标随机数。
在一些实施例中,在所述用户要求包括保密性要求的情况下,所述方法具体实施时,还可以包括以下内容:接收云端服务器发送的目标接口数据包括;通过所述目标接口数据包中的第一目标数据接口调用目标随机数生成器,在终端设备本地生成目标随机数。
在一些实施例中,上述配置参数还可以包括管理参数。相应的,云端服务器在将目标随机数发送给终端设备的同时,还会根据关联参数在云端服务器备份保存该目标随机数。
在一些实施例中,在终端设备遗失掉目标随机数,且又需要使用到原来的目标随机数的情况下,终端设备可以向云端服务器生成并发送补发请求。其中,上述补发请求具体可以携带有目标随机数的接收时间。相应的,云端设备可以接收并响应该补发请求,从数据库中找到所保存的目标随机数的备份数据,并将该目标随机数的备份数据发送给终端设备。终端可以接收到云端服务器补发的目标随机数。
由上可见,基于本说明书实施例提供的随机数的生成方法,用户不需要拥有专业的技术知识,也不需要耗费时间、精力在终端设备上专门布设多种数据接口,而是可以通过连接云端服务器高效、便捷地调用多个随机数生成器来生成满足用户要求的目标随机数,从而简化了用户的操作,提高了随机数的生成效率,并能够较好地满足不同用户的多样化要求。
本说明书实施例还提供一种云端服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器具体实施时可以根据指令执行以下步骤:接收随机数生成请求;根据所述随机数生成请求,确定出匹配的随机数生成规则;根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
为了能够更加准确地完成上述指令,参阅图7所示,本说明书实施例还提供了另一种具体的云端服务器,其中,所述云端服务器包括网络通信端口701、处理器702以及存储器703,上述结构通过内部线缆相连,以便各个结构可以进行具体的数据交互。
其中,所述网络通信端口701,具体可以用于接收随机数生成请求。
所述处理器702,具体可以用于根据所述随机数生成请求,确定出匹配的随机数生成规则;根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
所述存储器703,具体可以用于存储相应的指令程序。
在本实施例中,所述网络通信端口701可以是与不同的通信协议进行绑定,从而可以发送或接收不同数据的虚拟端口。例如,所述网络通信端口可以是负责进行web数据通信的端口,也可以是负责进行FTP数据通信的端口,还可以是负责进行邮件数据通信的端口。此外,所述网络通信端口还可以是实体的通信接口或者通信芯片。例如,其可以为无线移动网络通信芯片,如GSM、CDMA等;其还可以为Wifi芯片;其还可以为蓝牙芯片。
在本实施例中,所述处理器702可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。本说明书并不作限定。
在本实施例中,所述存储器703可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
本说明书实施例还提供一种终端设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器具体实施时可以根据指令执行以下步骤:生成随机数生成请求;向云端服务器发送所述随机数生成请求;其中,所述云端服务器连接有多个随机数生成器;所述云端服务器用于根据所述随机数生成请求,确定出匹配的随机数生成规则;并根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数;接收所述目标随机数。
基于上述云端服务器和终端设备,本说明书还提供一种随机数生成系统,其中,所述随机数的生成系统包括云端服务器和多个随机数生成器;所述云端服务器预设有多个第一数据接口,所述第一数据接口与至少一个随机数生成器匹配,所述多个第一数据接口用于连接所述多个随机数生成器;所述云端服务器还预设有第二数据接口,所述第二数据接口用于连接终端设备;所述云端服务器通过所述第二数据接口接收终端设备发送的随机数生成请求;所述云端服务器根据所述随机数生成请求,确定匹配的随机数生成规则;并根据所述匹配的随机数生成规则,通过所述第一数据接口调用相应的随机数生成器,生成符合用户要求的目标随机数;所述云端服务器通过所述第二数据接口向所述终端设备发送所述目标随机数。其中,每一个第一数据接口具体可以与一个随机数生成器匹配,也可以与使用相同数据接口的多个随机数生成器匹配。
本说明书实施例还提供了一种基于上述随机数的生成方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:接收随机数生成请求;根据所述随机数生成请求,确定出匹配的随机数生成规则;根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
在本实施例中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施例中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
参阅图8所示,在软件层面上,本说明书实施例还提供了一种随机数的生成装置,该装置具体可以包括以下的结构模块。
第一接收模块801,具体可以用于接收随机数生成请求。
确定模块802,具体可以用于根据所述随机数生成请求,确定出匹配的随机数生成规则。
第一生成模块803,具体可以用于根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
需要说明的是,上述实施例阐明的单元、装置或模块等,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
本说明书实施例还提供了另一种随机数的生成装置,具体可以包括以下结构模块:第二生成模块,具体可以用于生成随机数生成请求;发送模块,具体可以用于向云端服务器发送所述随机数生成请求;其中,所述云端服务器连接有多个随机数生成器;所述云端服务器用于根据所述随机数生成请求,确定出匹配的随机数生成规则;并根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数;第二接收模块,具体可以用于接收所述目标随机数。
由上可见,本说明书实施例提供的随机数的生成装置,而可以简化用户操作,用户不需要拥有专业技术知识,也不需要在终端设备专门设置复杂的接口和协议,就可以通过云端服务器高效、便捷地获取所需要的、满足用户多样化要求的随机数。
虽然本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
通过以上的实施例的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。
Claims (19)
1.一种随机数的生成系统,其中,所述随机数的生成系统包括云端服务器和多个随机数生成器;所述云端服务器预设有多个第一数据接口,所述第一数据接口与至少一个随机数生成器匹配,所述多个第一数据接口用于连接所述多个随机数生成器;所述云端服务器还预设有第二数据接口,所述第二数据接口用于连接终端设备;
所述云端服务器通过所述第二数据接口接收终端设备发送的随机数生成请求;
所述云端服务器根据所述随机数生成请求,确定匹配的随机数生成规则;并根据所述匹配的随机数生成规则,通过所述第一数据接口调用相应的随机数生成器,生成符合用户要求的目标随机数;
所述云端服务器通过所述第二数据接口向所述终端设备发送所述目标随机数。
2.一种随机数的生成方法,包括:
接收随机数生成请求;
根据所述随机数生成请求,确定出匹配的随机数生成规则;
根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
3.根据权利要求2所述的方法,所述随机数生成请求还携带有以下配置参数中的一种或多种:随机数的生成数量参数、随机数的生成时间参数、随机数的生成质量参数、随机数的生成位置参数。
4.根据权利要求3所述的方法,所述根据所述随机数生成请求,确定出匹配的随机数生成规则,包括:
根据所述随机数生成请求所携带的配置参数,确定出用户要求;其中,所述用户要求包括以下至少之一:质量要求、保密性要求、效率要求;
根据所述用户要求,确定出匹配的随机数生成规则。
5.根据权利要求4所述的方法,在所述用户要求包括质量要求的情况下,所述根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数,包括:
根据所述匹配的随机数生成规则,从多个随机数生成器中确定出多个匹配的目标随机数生成器;
确定出与所述多个目标随机数生成器匹配的多个第一数据接口作为多个第一目标数据接口;
通过所述多个第一目标数据接口调用所述多个目标随机数生成器分别生成随机数,得到多个随机数;
根据所述多个随机数,生成目标随机数。
6.根据权利要求5所述的方法,所述根据所述多个随机数,生成目标随机数,包括:
对所述多个随机数进行异或求和运算,将运算结果作为所述目标随机数。
7.根据权利要求5所述的方法,在所述用户要求包括质量要求的情况下,所述根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数,还包括:
根据所述匹配的随机数生成规则,从多个随机数生成器中确定出多个匹配的目标随机数生成器;
获取所述目标随机数生成器所基于的随机数熵源,得到多个随机数熵源;
组合所述多个随机数熵源,得到目标随机数熵源;
根据所述目标随机数熵源,生成对应的随机数,作为所述目标随机数。
8.根据权利要求5所述的方法,在所述用户要求包括保密性要求的情况下,所述方法还包括:
对所述目标随机数进行加密处理,得到加密后的目标随机数,并向终端设备发送所述加密后的目标随机数。
9.根据权利要求8所述的方法,在所述用户要求包括保密性要求的情况下,所述方法还包括:
将所述第一目标数据接口进行封装处理,得到封装处理后的接口数据包;
在所述封装处理后的接口数据包上设置第二数据接口,得到目标接口数据包;
将所述目标接口数据包发送至终端设备;其中,所述终端设备用于通过所述目标接口数据包调用所述目标随机数生成器以在终端设备本地生成目标随机数。
10.根据权利要求4所述的方法,在所述用户要求包括效率要求的情况下,所述根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数,包括:
根据所述匹配的随机数生成规则,从多个随机数生成器中筛选出生成速率大于预设的阈值速率的随机数生成器作为目标随机数生成器;
调用所述目标随机数生成器生成对应的随机数,作为所述目标随机数。
11.根据权利要求2所述的方法,所述随机数生成器包括量子随机数生成器,或,伪随机数生成器。
12.根据权利要求11所述的方法,所述随机数生成请求还携带有的随机数的类型参数,且所述随机数的类型参数为量子随机数;
相应的,所述方法还包括:
根据所述随机数生成请求,确定出匹配的随机数生成规则,其中,所述匹配的随机数生成规则指向量子随机数生成器;
根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的量子随机数生成器,生成量子随机数作为符合用户要求的目标随机数。
13.根据权利要求2所述的方法,所述方法还包括:
间隔预设的时间间隔,从当前时间段内生成的目标随机数中抽取预设个数的目标随机数作为测试数据;
对所述测试数据进行随机性检测,得到随机性检测结果;
根据所述随机性检测结果,确定当前时间段内的目标随机数的随机性。
14.根据权利要求13所述的方法,在根据所述随机性检测结果,确定当前时间段内的目标随机数的随机性后,所述方法还包括:
在确定当前时间段内的目标随机数的随机性能不符合预设的随机性要求的情况下,根据所述随机性检测结果,从所述多个随机数生成器中确定出不稳定的随机数生成器;
暂停与所述不稳定的随机数生成器之间的连接。
15.一种随机数的生成方法,包括:
生成随机数生成请求;
向云端服务器发送所述随机数生成请求;其中,所述云端服务器连接有多个随机数生成器;所述云端服务器用于根据所述随机数生成请求,确定出匹配的随机数生成规则;并根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数;
接收所述目标随机数。
16.一种随机数的生成装置,包括:
第一接收模块,用于接收随机数生成请求;
确定模块,用于根据所述随机数生成请求,确定出匹配的随机数生成规则;
第一生成模块,用于根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数。
17.一种随机数的生成装置,包括:
第二生成模块,用于生成随机数生成请求;
发送模块,用于向云端服务器发送所述随机数生成请求;其中,所述云端服务器连接有多个随机数生成器;所述云端服务器用于根据所述随机数生成请求,确定出匹配的随机数生成规则;并根据所述匹配的随机数生成规则,从多个随机数生成器中调用相应的随机数生成器,生成符合用户要求的目标随机数;
第二接收模块,用于接收所述目标随机数。
18.一种云端服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求2至14中任一项所述方法的步骤。
19.一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现权利要求2至14中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751664.7A CN113296737A (zh) | 2020-07-30 | 2020-07-30 | 随机数的生成系统、方法、装置和云端服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010751664.7A CN113296737A (zh) | 2020-07-30 | 2020-07-30 | 随机数的生成系统、方法、装置和云端服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113296737A true CN113296737A (zh) | 2021-08-24 |
Family
ID=77318210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010751664.7A Pending CN113296737A (zh) | 2020-07-30 | 2020-07-30 | 随机数的生成系统、方法、装置和云端服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113296737A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116594965A (zh) * | 2023-05-16 | 2023-08-15 | 矩阵时光数字科技有限公司 | 一种支持多线程的随机数检测系统及方法 |
CN117390610A (zh) * | 2023-12-13 | 2024-01-12 | 中国人民解放军国防科技大学 | 一种身份标识生成方法、系统及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101044449A (zh) * | 2004-07-23 | 2007-09-26 | 高通股份有限公司 | 用于随机数生成器的方法和装置 |
JP2011193180A (ja) * | 2010-03-15 | 2011-09-29 | Nec Corp | 鍵共有方式、鍵共有方法及び鍵共有プログラム |
US20180300108A1 (en) * | 2017-04-18 | 2018-10-18 | International Business Machines Corporation | Trusted random number generation by a cloud server |
CN109391468A (zh) * | 2017-08-14 | 2019-02-26 | 杭州萤石网络有限公司 | 一种认证方法及系统 |
CN110058843A (zh) * | 2019-03-27 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 伪随机数的生成方法、装置和服务器 |
-
2020
- 2020-07-30 CN CN202010751664.7A patent/CN113296737A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101044449A (zh) * | 2004-07-23 | 2007-09-26 | 高通股份有限公司 | 用于随机数生成器的方法和装置 |
JP2011193180A (ja) * | 2010-03-15 | 2011-09-29 | Nec Corp | 鍵共有方式、鍵共有方法及び鍵共有プログラム |
US20180300108A1 (en) * | 2017-04-18 | 2018-10-18 | International Business Machines Corporation | Trusted random number generation by a cloud server |
CN109391468A (zh) * | 2017-08-14 | 2019-02-26 | 杭州萤石网络有限公司 | 一种认证方法及系统 |
CN110058843A (zh) * | 2019-03-27 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 伪随机数的生成方法、装置和服务器 |
Non-Patent Citations (2)
Title |
---|
苏;史国振;付安民;俞研;金伟;: "基于代理重加密的云端多要素访问控制方案", 通信学报, no. 02 * |
陈爽;曹素梅;左金印;: "随机数发生器检测与设计", 信息安全与通信保密, no. 12 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116594965A (zh) * | 2023-05-16 | 2023-08-15 | 矩阵时光数字科技有限公司 | 一种支持多线程的随机数检测系统及方法 |
CN116594965B (zh) * | 2023-05-16 | 2024-05-07 | 矩阵时光数字科技有限公司 | 一种支持多线程的随机数检测系统及方法 |
CN117390610A (zh) * | 2023-12-13 | 2024-01-12 | 中国人民解放军国防科技大学 | 一种身份标识生成方法、系统及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2830283C (en) | Interrogating an authentication device | |
CN110915164A (zh) | 基于可信执行环境中执行的智能合约操作处理区块链数据 | |
CN110457898B (zh) | 基于可信执行环境的操作记录存储方法、装置及设备 | |
WO2021036170A1 (zh) | 一种区块链交易处理方法及装置 | |
US11546348B2 (en) | Data service system | |
CN112019541B (zh) | 一种数据传输方法、装置、计算机设备及存储介质 | |
CN112637166A (zh) | 一种数据传输方法、装置、终端及存储介质 | |
US9762386B1 (en) | Verification of stored encryption keys in multi-tiered encryption system | |
WO2021114614A1 (zh) | 应用程序安全启动方法、装置、计算机设备和存储介质 | |
CN111597567B (zh) | 数据处理方法、装置、节点设备及存储介质 | |
US10911251B2 (en) | Blockchain ledger authentication | |
US11153079B2 (en) | Systems and methods for utilizing quantum entropy for secure virtual private network connections | |
CN109740309A (zh) | 一种文件保护方法以及装置 | |
CN113296737A (zh) | 随机数的生成系统、方法、装置和云端服务器 | |
CN114041134A (zh) | 用于基于区块链的安全存储的系统和方法 | |
WO2014206089A1 (zh) | 同步终端镜像的方法、装置、终端及服务器 | |
CN103577281A (zh) | 一种数据恢复的方法和系统 | |
CN115982761A (zh) | 敏感信息处理方法、装置、电子设备和存储介质 | |
CN111737718A (zh) | 一种jar包的加解密方法、装置、终端设备和存储介质 | |
CN110069241B (zh) | 伪随机数的获取方法、装置、客户端设备和服务器 | |
CN113609147A (zh) | 数据共享方法、装置及电子设备 | |
US20170346636A1 (en) | Communications security systems and methods | |
CN108880785B (zh) | 一种检测C++虚表被hook的方法、装置、终端及可读介质 | |
GB2546135A (en) | Robust computing device identification framework | |
US11768944B2 (en) | Non-intrusive method of detecting security flaws of a computer program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40059157 Country of ref document: HK |