CN111314061B - 一种随机数的生成方法及系统 - Google Patents

一种随机数的生成方法及系统 Download PDF

Info

Publication number
CN111314061B
CN111314061B CN201911038686.2A CN201911038686A CN111314061B CN 111314061 B CN111314061 B CN 111314061B CN 201911038686 A CN201911038686 A CN 201911038686A CN 111314061 B CN111314061 B CN 111314061B
Authority
CN
China
Prior art keywords
random number
factor
target
global
local
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.)
Active
Application number
CN201911038686.2A
Other languages
English (en)
Other versions
CN111314061A (zh
Inventor
常宇宙
王彦杰
雷心田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Keda Technology Co Ltd
Original Assignee
Suzhou Keda Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Keda Technology Co Ltd filed Critical Suzhou Keda Technology Co Ltd
Priority to CN201911038686.2A priority Critical patent/CN111314061B/zh
Publication of CN111314061A publication Critical patent/CN111314061A/zh
Application granted granted Critical
Publication of CN111314061B publication Critical patent/CN111314061B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computational Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种随机数的生成方法及系统,该方法包括:获取分布式网络下的目标客户端的客户端数据和利用随机数生成器生成的初始随机数,其中分布式网络下包含有多个分布式客户端;采用预设算法,对客户端数据和初始随机数进行计算,得到局部因子,局部因子为由目标客户端提供的用于计算随机数的影响因子;获取当前分布式网络下的全局因子,全局因子为利用分布式网络下的所有客户端对应的随机数生成的影响因子;基于全局因子和局部因子对初始随机数进行计算,得到目标随机数。通过在随机数生成器生成的随机数的基础上,增加两个随机数的产生因子,使产生的随机数规则很难被破解,增加了随机数的不可预测性和随机性。

Description

一种随机数的生成方法及系统
技术领域
本发明涉及信息安全技术领域,具体涉及一种随机数的生成方法及系统。
背景技术
随机数广泛应用于生成加密密钥、HTTP摘要认证、身份认证等信息安全的各场景中,目前,利用随机数生成器生成的随机数主要有基于硬件的真随机数和基于软件计算的伪随机数这两类。然而,基于硬件的真随机数生成的速度慢,对服务器端的性能有影响,一般需要额外的硬件设备,因此,在实际应用中使用的较少,而基于软件计算的伪随机数通常需要基于一个初始化的随机种子生成,随机种子看似随机但却有一定内在的产生规律,使得最终生成的随机数存在一定的重现概率,使用这类随机数作为加密密钥,容易成为服务端的安全漏洞,造成安全隐患,因此,如何提高随机数的安全性对其在信息安全领域的广泛应用有着重要意义。
发明内容
有鉴于此,本发明实施例提供了一种随机数的生成方法及系统,以解决现有技术中基于软件的伪随机数的生成存在重现概率,使其在应用中容易存在安全漏洞,造成安全隐患的技术问题。
本发明实施例提供了一种随机数的生成方法,包括:获取分布式网络下的目标客户端的客户端数据和利用随机数生成器生成的初始随机数,其中分布式网络下包含有多个分布式客户端;采用预设算法,对所述客户端数据和所述初始随机数进行计算,得到局部因子,所述局部因子为由所述目标客户端提供的用于计算随机数的影响因子;获取当前所述分布式网络下的全局因子,所述全局因子为利用所述分布式网络下的所有客户端对应的随机数生成的影响因子;基于全局因子和所述局部因子对所述初始随机数进行计算,得到所述目标随机数。可选地,所述采用预设算法,对所述客户端数据和所述初始随机数进行计算,得到局部因子,包括:利用预设过滤规则对所述客户端数据进行过滤,得到目标源数据;根据预设算法,计算所述目标源数据和所述初始随机数的散列值,得到散列结果;将所述散列结果确定为所述局部因子。
可选地,所述基于所述全局因子和所述局部因子对所述初始随机数进行计算,包括:对所述全局因子、所述局部因子和所述初始随机数进行异或操作,得到所述目标随机数。
可选地,所述在基于所述全局因子和所述局部因子对所述初始随机数进行计算,得到所述目标随机数之后,所述方法还包括:利用所述目标随机数对所述全局因子进行更新。
可选地,所述利用所述目标随机数对所述全局因子进行更新,包括:对所述全局因子及所述目标随机数进行异或操作,得到更新后的全局因子,所述更新后的全局因子用于后续所述分布式网络下的客户端的随机数生成。
可选地,所述的随机数的生成方法,所述目标客户端为多个,所述目标随机数为多个,多个所述目标客户端与多个所述目标随机数一一对应,其中,利用所述目标随机数对所述全局因子进行更新,包括:利用多个所述目标随机数分别对所述全局因子进行更新。
可选地,所述的随机数的生成方法,还包括:获取所述全局因子的更新次数;判断所述更新次数是否小于预设更新次数;当所述更新次数不小于预设更新次数时,对所述全局因子进行初始化,得到新的全局因子。
本发明实施例提供了一种随机数的生成系统,包括:获取模块,用于获取分布式网络下的目标客户端的客户端数据和利用随机数生成器生成的初始随机数,其中分布式网络下包含有多个分布式客户端;局部因子生成模块,用于采用预设算法,对所述客户端数据和所述初始随机数进行计算,得到局部因子,所述局部因子为由所述目标客户端提供的用于计算随机数的影响因子;全局因子获取模块,用于获取当前所述分布式网络下的全局因子,所述全局因子为利用所述分布式网络下的所有客户端对应的随机数生成的影响因子;目标随机数生成模块,用于基于全局因子和所述局部因子对所述初始随机数进行计算,得到所述目标随机数。
本发明实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,从而执行本发明实施例提供的随机数的生成方法。
本发明实施例还提供了一种电子设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,用于所述计算机指令执行本发明实施例提供的随机数的生成方法。
本发明技术方案,具有如下优点:
本发明实施例提供了一种随机数的生成方法,通过在随机数生成器生成的随机数的基础上,增加两个随机数的产生因子,使得最终产生的目标随机数带有特有的源数据的信息,使产生的随机数规则很难被破解,有效减少了统计学偏差,增加了随机数的不可预测性和随机性,使其在信息安全领域有更广泛的应用。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中随机数的生成方法的流程图;
图2为本发明实施例中采用预设算法,对客户端数据和初始随机数进行计算,得到局部因子的具体流程图;
图3为本发明实施例中随机数的生成过程的示意图;
图4为本发明实施例中随机数的生成系统的示意图;
图5为本发明实施例中的电子设备的结构示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
本发明实施例提供了一种随机数的生成方法,如图1所示,该随机数的生成方法具体包括:
步骤S1:获取分布式网络下的目标客户端的客户端数据和利用随机数生成器生成的初始随机数,其中分布式网络下包含有多个分布式客户端。其中,使用分布式网络节点中的数据来生成随机数的产生因子,使得随机数的产生与当前连接的信息无关,且随机数产生因子在分布式网络上且是累积的,不仅更难被捕获而且还增加了随机数的不可重现性。在实际应用中,上述目标随机数的客户端数据指的是客户端向服务端发送的数据信息,该客户端数据包括:登录信息、业务信息、对应随机数的用途信息等,该客户端数据也可以称之为生成随机数的随机种子,作为随机数产生的一个来源,可以增加生成的随机数的不确定性,保证数据信息的安全。其中,为了防止恶意客户端发送相同的数据来分析服务端随机数实现,这些随机数的源信息尽可能的带上时间戳。需要说明的是,该客户端数据可以根据具体的实际需要自行定义,在获取这些客户端数据时带上时间戳也是可选择的,本发明并不以此为限。
其中,上述生成初始随机数的随机数生成器可以选取任意的随机数生成器,随机数生成器(Random Numeral Generator,RNG)是用于生成随机数的程序或硬件,为了保证生成随机数的速度,生成基于软件计算的伪随机数,需要说明的是,本发明实施例中的随机数生成器可以根据实际需要进行选取,也可选取生成基于硬件的真随机数的随机数生成器,本发明并不以此为限。
步骤S2:采用预设算法,对客户端数据和初始随机数进行计算,得到局部因子,局部因子为由目标客户端提供的用于计算随机数的影响因子。在实际应用中,可以采用一定的算法,例如:SM3算法等,把客户端数据和初始随机数进行计算,其中,计算结果最好保持字符长度与所选取预设算法的字节相对应。
具体地,在一实施例中,如图2所示,上述的步骤S2,具体包括如下步骤:
步骤S21:利用预设过滤规则对客户端数据进行过滤,得到目标源数据。在实际应用中,接收到客户端发送的客户端数据后,需要采用一定的过滤规则对此源数据进行过滤,以提高数据利用率,减少后期计算过程的计算量,并得到待处理的目标源数据。例如:服务端在接收到客户端发送过来的数据D1,可以根据所选取的预设算法中数据序列的长度以及数据所特有的信息进行筛选,得到数据D2,即为目标源数据,比如选择SM3摘要算法对客户端数据进行过滤。其中,对获取到的源数据进行过滤的目的是提取源数据中的有用信息,以减少下面流程的计算量,并且根据自定义的过滤规则将源数据处理成固定长度,便于后续计算。需要说明的是,本发明实施例中对源数据进行过滤处理的数据过滤规则可以根据实际需要自行定义,本发明并不以此为限。过滤源数据得到目标源数据可以通过如下公式表示:
D2=SM3(D1) (1)
其中,D2表示目标源数据,SM3摘要算法表示过滤规则,D1表示源数据。
步骤S22:根据预设算法,计算目标源数据和初始随机数的散列值,得到散列结果。在实际应用中,可以选择预设算法,计算上述过滤后得到的目标源数据和初始随机数的散列值,作为散列结果,以上文中的应用的目标源数据D2为例,计算目标源数据D2和初始随机数ri的散列值,例如,该预设算法可以同样使用SM3算法进行计算。
步骤S23:将散列结果确定为局部因子。例如:选取上述SM3算法进行计算后,散列结果最后保持长度不小于32字节,得到局部因子,其中局部因子是为了增加要生成的数的随机性与不可预测性的一个参数,并且是根据过滤后的数据和原有系统生成的随机数进行计算,得到相应长度的散列结果的一个数值。需要说明的是,本发明实施例中计算目标源数据和初始随机数的散列值时可以根据实际需要进行算法的选择,只要能实现相同的目的即可,本发明并不以此为限。局部因子可以通过如下公式表示:
Clocal=SM3(D2||ri) (2)
其中,Clocal表示局部因子,SM3表示计算算法,D2表示目标源数据,i表示初始随机数。
步骤S3:获取当前分布式网络下的全局因子,全局因子为利用分布式网络下的所有客户端对应的随机数生成的影响因子。获取全局因子,其中,全局因子是一个预设的相应长度的数值,保证全局因子长度与初始随机数长度一致即可,此全局因子是为了增加初始随机数的不确定性进行增设的。
步骤S4:基于全局因子和局部因子对初始随机数进行计算,得到目标随机数。进而保证生成的随机数的随机性与不可预测性。此时需要对全局因子进行初始化的操作,具体地,当以上述采用SM3算法计算局部因子,得到局部因子长度为32字节的序列时,将该全局因子的长度也设置为32字节,与上述的局部因子的长度保持一致,并且将该全局因子的每一位的初始值都赋值为1,为了增加产生的随机数的随机性和不可预测性,使用全局因子和局部因子这两个因子对系统产生的随机数进行计算,以得到目标随机数。需要说明的是,获取的序列长度根据所选计算算法进行确定,可根据实际情况进行相应调整,本发明并不以此为限。
具体地,在一实施例中,上述的步骤S4,具体包括如下步骤:
步骤S41:对全局因子、局部因子和初始随机数进行异或操作,得到目标随机数。以上文中选用的目标源数据D2为例,使用全局因子和局部因子这两个因子对上述系统产生的随机数进行处理,得到最终需要的目标随机数。其中,计算目标随机数,可以采用异或的方法、指数计算方法或者任何能够参与进初始随机数的运算的方法,只要能够保证全局因子和局部因子参与初始随机数的运算,使得初始随机数发生一定的变化即可。需要说明的是,计算目标随机数也可选择其他方法,为了方便举例说明本发明实施例选择异或方法,本发明并不以此为限。目标随机数可以通过如下公式表示:
Ri=Cglobal⊕Clocal⊕ri (3)
其中,Ri表示目标随机数,Cglobal表示全局因子,Clocal表示局部因子,ri表示初始随机数。
在实际应用中,上述采用异或操作计算初始随机数、全局因子和局部因子,异或操作是一种基于二进制的位运算,其运算法则是对运算符两侧数的每一个二进制位相同时取0,不同时取1。当服务器端生成了一个初始随机数,将此初始随机数转化为与上述全局因子和局部因子长度一致的二进制数,然后将转化后的初始随机数、全局因子和局部因子进行异或计算,生成目标随机数,相应位上的值一致,目标随机数相应位上的值则为0,不一致则为1。例如:初始随机数为33,其二进制表示为100001,假设初始化后的全局因子为8位的二进制数值为11111111,局部因子同为8位的二进制数值,假设计算得到的为10111001,将这三个数进行异或操作后,得出的目标随机数的二进制形式为01100111。需要说明的是,本发明实施例采用的异或运算以及数值长度只是举例进行了说明,也可以选用其他算法进行计算,本发明并不以此为限。
具体地,在一实施例中,本发明实施例提供的随机数的生成方法还包括:
步骤S5:利用目标随机数对全局因子进行更新。为了增加生成的目标随机数的质量,使用网络上分布式客户端来不断更新全局因子。
具体地,在一实施例中,上述的步骤S5,具体包括如下步骤:
步骤S51:对全局因子及目标随机数进行异或操作,得到更新后的全局因子,更新后的全局因子用于后续分布式网络下的客户端的随机数生成。对于上述全局因子的更新过程,可以选择简单的异或操作来进行更新,同时,为了简化数据与操作,可以设置一个时间间隔来使得全局因子重新初始化为全1,需要说明的是,在实际应用中也可以根据实际需求选择别的方法对全局因子进行更新,也可以不重新初始化全局因子,本发明并不以此为限。
具体地,在一实施例中,本发明实施例提供的随机数的生成方法还包括:
步骤S6:获取全局因子的更新次数。获取当前系统中全局因子更新的次数,对上述更新次数的获取,是为了利用更新次数判断是否需要对全局因子进行重新的初始化操作。
步骤S7:判断更新次数是否小于预设更新次数。得到更新次数之后,根据预设更新次数,判断获取的更新次数是否小于预设更新次数,当获取的更新次数小于预设更新次数,不对全局因子进行操作。需要说明的是,此预设更新次数可以根据实际需要进行设定,本发明并不以此为限。
步骤S8:当更新次数不小于预设更新次数时,对全局因子进行初始化,得到新的全局因子。当更新次数大于等于预设更新次数时,需要对全局因子重新进行初始化操作,需要说明的是,此初始化操作可以是跟上述初始化一样,将全局因子各位同时置为1,也可以是其他初始化规则,本发明并不以此为限。
本发明实施例中,如图3所示,随机数的生成过程中,对于一个客户端发送的客户端数据与系统生成的初始随机数对全局因子进行更新,在系统RNG产生的随机数上做了两层操作,使得产生的随机数更加的随机和不可预测性;当有多个客户端连接时,多个客户端导致服务端产生随机数Ri后,每个客户端都会使用Ri来更新全局因子Cglobal,利用这种“分布式累积结果”使得分布式的多个客户端都会影响到最终的随机数的生成,则随着系统的不断使用,本发明实施例提供的随机数的生成方法生成的随机数就会越来越满足随机数的随机性、不可预测性和不可重现性的特征。
通过上述步骤S1至步骤S8,本发明实施例提供了一种随机数的生成方法,通过在随机数生成器生成的随机数的基础上,增加两个随机数的产生因子,使得最终产生的目标随机数带有特有的源数据的信息,使产生的随机数规则很难被破解,有效减少了统计学偏差,增加了随机数的不可预测性和随机性,同时通过使用分布式网络节点中的数据来生成上述随机因子,使得随机数的产生与当前连接的信息无关,且随机数产生因子在分布式网络上是累积的,不仅更难被捕获而且还增加了随机数的不可重现性,使其在信息安全领域有更广泛的应用。
本本发明实施例还提供了一种随机数的生成系统,如图4所示,包括:
获取模块1,用于获取分布式网络下的目标客户端的客户端数据和利用随机数生成器生成的初始随机数,其中分布式网络下包含有多个分布式客户端。详细内容参见上述方法实施例中步骤S1的相关描述。
局部因子生成模块2,用于采用预设算法,对客户端数据和初始随机数进行计算,得到局部因子,局部因子为由目标客户端提供的用于计算随机数的影响因子。详细内容参见上述方法实施例中步骤S2的相关描述。
全局因子获取模块3,用于获取当前分布式网络下的全局因子,全局因子为利用分布式网络下的所有客户端对应的随机数生成的影响因子。详细内容参见上述方法实施例中步骤S3的相关描述。
目标随机数生成模块4,用于基于全局因子和局部因子对初始随机数进行计算,得到目标随机数。详细内容参见上述方法实施例中步骤S4的相关描述。
通过上述各个组成部分的协同合作,本发明实施例提供了一种随机数的生成系统,通过在随机数生成器生成的随机数的基础上,增加两个随机数的产生因子,使得最终产生的目标随机数带有特有的源数据的信息,使产生的随机数规则很难被破解,有效减少了统计学偏差,增加了随机数的不可预测性和随机性,同时通过使用分布式网络节点中的数据来生成上述随机因子,使得随机数的产生与当前连接的信息无关,且随机数产生因子在分布式网络上是累积的,不仅更难被捕获而且还增加了随机数的不可重现性,使其在信息安全领域有更广泛的应用。
本发明实施例还提供了一种电子设备,如图5所示,该电子设备可以包括处理器901和存储器902,其中处理器901和存储器902可以通过总线或者其他方式连接,图5中以通过总线连接为例。
处理器901可以为中央处理器(Central Processing Unit,CPU)。处理器901还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器902作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的方法所对应的程序指令/模块。处理器901通过运行存储在存储器902中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法。
存储器902可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器901所创建的数据等。此外,存储器902可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器902可选包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至处理器901。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器902中,当被处理器901执行时,执行上述方法。
上述电子设备具体细节可以对应参阅上述方法实施例中对应的相关描述和效果进行理解,此处不再赘述。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-StateDrive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。

Claims (9)

1.一种随机数的生成方法,其特征在于,包括:
获取分布式网络下的目标客户端的客户端数据和利用随机数生成器生成的初始随机数,其中分布式网络下包含有多个分布式客户端;
采用预设算法,对所述客户端数据和所述初始随机数进行计算,得到局部因子,所述局部因子为由所述目标客户端提供的用于计算随机数的影响因子;
获取当前所述分布式网络下的全局因子,所述全局因子为利用所述分布式网络下的所有客户端对应的随机数生成的影响因子;
基于所述全局因子和所述局部因子对所述初始随机数进行计算,得到目标随机数;
所述采用预设算法,对所述客户端数据和所述初始随机数进行计算,得到局部因子,包括:
利用预设过滤规则对所述客户端数据进行过滤,得到目标源数据;
根据预设算法,计算所述目标源数据和所述初始随机数的散列值,得到散列结果;
将所述散列结果确定为所述局部因子。
2.根据权利要求1所述的随机数的生成方法,其特征在于,所述基于所述全局因子和所述局部因子对所述初始随机数进行计算,包括:
对所述全局因子、所述局部因子和所述初始随机数进行异或操作,得到所述目标随机数。
3.根据权利要求1所述的随机数的生成方法,其特征在于,在基于所述全局因子和所述局部因子对所述初始随机数进行计算,得到所述目标随机数之后,还包括:
利用所述目标随机数对所述全局因子进行更新。
4.根据权利要求3所述的随机数的生成方法,其特征在于,所述利用所述目标随机数对所述全局因子进行更新,包括:
对所述全局因子及所述目标随机数进行异或操作,得到更新后的全局因子,所述更新后的全局因子用于后续所述分布式网络下的客户端的随机数生成。
5.根据权利要求3所述的随机数的生成方法,其特征在于,所述目标客户端为多个,所述目标随机数为多个,多个所述目标客户端与多个所述目标随机数一一对应,其中,利用所述目标随机数对所述全局因子进行更新,包括:
利用多个所述目标随机数分别对所述全局因子进行更新。
6.根据权利要求1所述的随机数的生成方法,其特征在于,还包括:
获取所述全局因子的更新次数;
判断所述更新次数是否小于预设更新次数;
当所述更新次数不小于预设更新次数时,对所述全局因子进行初始化,得到新的全局因子。
7.一种随机数的生成系统,其特征在于,包括:
获取模块,用于获取分布式网络下的目标客户端的客户端数据和利用随机数生成器生成的初始随机数,其中分布式网络下包含有多个分布式客户端;
局部因子生成模块,用于采用预设算法,对所述客户端数据和所述初始随机数进行计算,得到局部因子,所述局部因子为由所述目标客户端提供的用于计算随机数的影响因子;
全局因子获取模块,用于获取当前所述分布式网络下的全局因子,所述全局因子为利用所述分布式网络下的所有客户端对应的随机数生成的影响因子;
目标随机数生成模块,用于基于全局因子和所述局部因子对所述初始随机数进行计算,得到所述目标随机数;
其中,所述局部因子生成模块具体用于利用预设过滤规则对所述客户端数据进行过滤,得到目标源数据;根据预设算法,计算所述目标源数据和所述初始随机数的散列值,得到散列结果;将所述散列结果确定为所述局部因子。
8.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令被处理器执行时实现如权利要求1-6中任一项所述的随机数的生成方法。
9.一种电子设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行如权利要求1-6中任一项所述的随机数的生成方法。
CN201911038686.2A 2019-10-29 2019-10-29 一种随机数的生成方法及系统 Active CN111314061B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911038686.2A CN111314061B (zh) 2019-10-29 2019-10-29 一种随机数的生成方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911038686.2A CN111314061B (zh) 2019-10-29 2019-10-29 一种随机数的生成方法及系统

Publications (2)

Publication Number Publication Date
CN111314061A CN111314061A (zh) 2020-06-19
CN111314061B true CN111314061B (zh) 2023-03-31

Family

ID=71159634

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911038686.2A Active CN111314061B (zh) 2019-10-29 2019-10-29 一种随机数的生成方法及系统

Country Status (1)

Country Link
CN (1) CN111314061B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112203327A (zh) * 2020-09-22 2021-01-08 普联国际有限公司 基于通信设备的BSS Color值的生成方法、装置、介质及设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103458296B (zh) * 2013-09-10 2016-08-10 江苏银河电子股份有限公司 智能机顶盒安全密钥生成方法
CN105406960B (zh) * 2015-12-20 2019-02-22 河南思维自动化设备股份有限公司 一种信息加密和解密的方法
CN106027228B (zh) * 2016-07-20 2020-03-31 努比亚技术有限公司 一种网页标识的加解密方法及其加解密系统
CN107579991B (zh) * 2017-09-28 2021-03-02 奇安信科技集团股份有限公司 一种对客户端进行云端防护认证的方法、服务器和客户端

Also Published As

Publication number Publication date
CN111314061A (zh) 2020-06-19

Similar Documents

Publication Publication Date Title
US11159305B2 (en) Homomorphic data decryption method and apparatus for implementing privacy protection
CN105007157B (zh) 基于设备生成的密钥来生成和管理多个基密钥
CN109873700B (zh) 密钥生成方法、装置、计算机可读存储介质及终端设备
CN112801307B (zh) 基于区块链的联邦学习方法、装置和计算机设备
US20220012186A1 (en) Diversifying a base symmetric key based on a public key
CN111314061B (zh) 一种随机数的生成方法及系统
CN116185341A (zh) 真随机数的生成装置、方法、设备及存储介质
US9594918B1 (en) Computer data protection using tunable key derivation function
CN112202555B (zh) 基于信息的属性生成随机数的信息处理方法、装置及设备
WO2019113844A1 (zh) 生成随机数的方法、芯片和电子设备
JP6273226B2 (ja) 暗号化システム、認証システム、暗号化装置、復号装置、認証子生成装置、検証装置、暗号化方法、認証方法
CN113505392A (zh) 一种秘密共享方法及装置
CN115361127B (zh) 一种量子随机数后处理方法和装置
US20210382872A1 (en) Blockchain-based Data Storage Method, Related Device and Storage Medium
CN109951275A (zh) 密钥生成方法、装置、计算机设备及存储介质
CN112565201B (zh) 一种区块链中的私钥处理方法、装置及计算机存储介质
CN115270176A (zh) 一种基数估计方法、系统、计算设备及计算机存储介质
JP6273224B2 (ja) 暗号化システム、暗号化装置、復号装置、暗号化方法
CN116243887B (zh) 软件随机数生成方法及装置
CN115935429B (zh) 一种数据处理方法、装置、介质以及电子设备
JP6370246B2 (ja) クライアント端末、方法、プログラム、サーバ、及び検証システム
CN109086063A (zh) 软件更新方法、文件加密方法、装置及存储介质
CN111193584B (zh) 基于操作系统的敏感数据的加密方法及装置、存储介质
CN111708762B (zh) 一种权限认证方法、装置及服务端设备
EP4412143A1 (en) Method and device for reducing amount of calculation for generating hierarchical galois key set for homomorphic encryption rotation operation

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
GR01 Patent grant
GR01 Patent grant