CN108491184B - 随机数发生器的熵源采集方法、计算机设备及存储介质 - Google Patents
随机数发生器的熵源采集方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN108491184B CN108491184B CN201810220848.3A CN201810220848A CN108491184B CN 108491184 B CN108491184 B CN 108491184B CN 201810220848 A CN201810220848 A CN 201810220848A CN 108491184 B CN108491184 B CN 108491184B
- Authority
- CN
- China
- Prior art keywords
- information
- entropy source
- random
- terminal
- random number
- 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
Links
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
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请发明涉及一种移动终端随机数发生器的熵源采集方法、计算机设备和介质,一个实施例中的方法包括:从移动终端获取随机终端信息串;从服务端获得服务端来源随机信息;基于所述随机终端信息串和所述服务端来源随机信息生成外部熵源。本实施例方案基于移动终端的随机终端信息串和服务端的服务端来源随机信息生成外部熵源,不仅适用于移动终端,而且基于服务端来源随机信息可使得客户端的随机数发生器获得足够的熵源,提高了移动终端采集的熵源的随机性和安全性。
Description
技术领域
本申请涉及密码学技术领域,特别是涉及一种移动终端随机数发生器的熵源采集方法、计算机设备和计算机存储介质。
背景技术
在目前的密码学技术领域,很多密码协议的安全性都要求产生高质量的随机数,因此随机数在身份认证、密钥生成等场合具有举足轻重的作用。手机、平板电脑等移动终端在没有SE安全组件的条件下,无法使用专用芯片产生随机数,此时必须利用确定性随机数发生器来产生随机数。
NIST SP800系列标准给出了确定性随机数发生器的推荐构造方式,譬如基于Hash运算的随机数发生器。在随机数发生器中,在初始化阶段必须输入外部采集的熵源,并且还需要利用该外部熵源执行周期性的补种操作。采集外部熵源的手段,一般从操作系统中具有随机性的外部输入设备进行采集,譬如利用鼠标的移动方向、距离等信息。但移动终端设备一般都是使用触屏输入,PC环境下常用的熵源采集方法并不适用于移动终端设备。
发明内容
基于此,有必要提供一种移动终端随机数发生器的熵源采集方法、计算机设备和计算机存储介质。
一种移动终端随机数发生器的熵源采集方法,所述方法包括步骤:
从移动终端获取随机终端信息串;
从服务端获得服务端来源随机信息;
基于所述随机终端信息串和所述服务端来源随机信息生成外部熵源。
一种计算机设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
根据如上所述的实施例的方案,其从移动终端获取随机终端信息串,还从服务端获得服务端来源随机信息,并基于移动终端的随机终端信息串和服务端的服务端来源随机信息生成外部熵源,不仅适用于移动终端,而且基于服务端来源随机信息可使得客户端的随机数发生器获得足够的熵源,提高了移动终端采集的熵源的随机性和安全性。
附图说明
图1为一个实施例中的移动终端随机数发生器的熵源采集方法的流程示意图:
图2是一个实施例中的计算机设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
如图1所示,一个实施例中的移动终端随机数发生器的熵源采集方法,包括步骤S101至步骤S103。
步骤S101:从移动终端获取随机终端信息串。
一个实施例中,从移动终端获取随机终端信息串可以包括:从移动终端的各部件采集终端部件随机信息,并基于采集的各部件的终端部件随机信息构建随机终端信息串。
其中,在从移动终端的各部件采集终端部件随机信息时,可以是任何可能的部件,只要这些部件的信息不会在所有的移动终端上具有相同值。一个实施例中,从移动终端的各部件采集获得的终端部件随机信息,可以包括但不限于下述各类型信息:
移动终端的陀螺仪的坐标值,该坐标值可以是一个三维坐标,包括横坐标值X、纵坐标值Y和第三坐标值Z,可表示为(X、Y、Z);
移动终端的加速度传感器输出的加速度参数,对应于上述坐标值,该加速度参数可包括三个值,即横坐标加速度、纵坐标加速度以及第三坐标加速度,可表示为(AX、AY、AZ)。
移动终端所处的地理位置信息,地理位置信息可以包括:经度Lon,纬度Lat和高度H。
移动终端的磁力计输出的磁力信息,可记为MagNet,其具体可以包括磁北、真北和磁偏角。
移动终端的当前CPU(中央处理器)的CPU使用率信息,可记为UR。
移动终端的摄像设备的摄像设备信息。
移动终端的操作系统的信息。
移动终端的应用软件的软件信息。
移动终端预先生成并存储的相关信息。
可以理解,从移动终端的各部件采集的终端部件随机信息,可以包括但不限于上述列出的各种终端部件随机信息中的随机组合。在基于采集的各部件的终端部件随机信息构建随机终端信息串(下述各实施例中,将随机终端信息串记为Hinfo)时,可以采用任何可能的方式进行。
在其中一个实施例中,可以是串接各部件的终端部件随机信息,获得随机终端信息串。以从移动终端的各部件采集的终端部件随机信息包括三维坐标(X、Y、Z)、加速度参数(AX、AY、AZ)、磁力信息MagNet、CPU使用率信息UR为例,串接后得到的随机终端信息串可以表示为:
Hinfo=X||Y||Z||AX||AY||AZ||Lon||Lat||H||MagNet||UR。
在其中一个实施例中,可以是计算各部件的终端部件随机信息的哈希值,并对获得的各哈希值进行运算,获得随机终端信息串。其中,在对获得的各哈希值进行运算,获得随机终端信息串时,可以采用任何可能的运算方式,例如,对获得的各哈希值进行异或或者相加或者其他运算,获得随机终端信息串。
在其中一个实施例中,可以对各部件的终端部件随机信息进行处理,获得各处理数据,并对获得的各处理数据进行运算,获得随机终端信息串。其中,对各部件的终端部件随机信息进行的处理,可以是任何可能的处理方式,只要能够基于各终端部件随机信息产生较好随机性的输出即可,例如密钥派生。对获得的各处理数据进行运算,获得随机终端信息串时,可以采用任何可能的运算方式,例如,对获得的各密钥派生数据进行异或或者相加或者其他运算,获得随机终端信息串。
步骤S102:从服务端获得服务端来源随机信息。
可以采用各种可能的方式获得服务端来源随机信息。
在其中一个实施例中,可以从服务端获取随机数信息,将该随机数信息作为所述服务端来源随机信息。该从服务端获取的随机数信息,可以是一个随机数,也可以是其他的信息,例如服务端采用对称密钥对随机数加密后获得的随机数密文,只要能够体现出从服务端获得的信息的随机性即可。
在其中一个实施例中,从服务端获得服务端来源随机信息可以包括:从服务端获取随机数信息,基于所述随机数信息执行秘密运算,获得服务端来源随机信息。
从服务端获取的随机数信息,可以是一个随机数,也可以是其他的信息,例如服务端采用共享对称密钥或者非对称密钥(如客户端公钥)对随机数加密后获得的随机数密文,只要能够体现出从服务端获得的信息的随机性即可。
在一个实施例中,从服务端获取随机数信息,基于所述随机数信息执行秘密运算,获得服务端来源随机信息,包括步骤S1121和步骤S1122。
步骤S1121:从服务端获取随机数,其中,该随机数可以是服务端调用密码机生成的随机数,且该随机数可以是真随机数。
步骤S1122:采用对称密钥对随机数进行秘密运算,获得服务端来源随机信息。采用对称密钥对随机数进行运算的方式可以是任何可能的方式,例如加密运算(如SM4加密运算)、解密运算(如SM4解密运算)、或者HMAC运算等。
其中,该对称密钥可以采用任何可能的方式获得。
在其中一个方式中,可以通过随机的方式生成该对称密钥。例如随机生成一个随机数作为对称密钥。
在其中一个方式中,可以是通过对上述随机终端信息串进行处理,获得该对称密钥,这里的处理可以是任何可能的处理方式,只要能够基于各终端部件随机信息产生较好随机性的输出即可。以下仅以其中两种方式进行举例说明。
一个实施例中,可以通过对随机终端信息串进行密钥派生,获得该对称密钥,例如以上述硬件信息串Hinfo为输入,执行密钥派生函数获得一个128比特的随机数:K=KDF(Hinfo,128)。
一个实施例中,可以采用下述方式获得对称密钥。
计算随机终端信息串的摘要值,获得第一熵源信息。计算摘要值的方式可以采用任何的方式进行,例如采用哈希算法计算摘要值。如以随机硬件信息串Hinfo作为输入,计算摘要值获得第一熵源信息E1,该第一熵源信息可以是256比特熵源材料,一个实施例中可以采用SM3哈希算法计算获得,如:E1=SM3_Hash(Hinfo)。
然后,将第一熵源信息输入随机数发生器,获得随机数发生器输出的对称密钥。一个实施例中,从随机数发生器输出的可以是128比特随机数,并将该随机数作为对称密钥。
在一个实施例中,从服务端获取随机数信息,基于所述随机数信息执行秘密运算,获得服务端来源随机信息,包括步骤S1221和步骤S1222。
步骤S1221:与服务端执行交换协议,获得共享随机数;其中,这里的交换协议可以是任何可能的交换协议,例如DH交换协议;以DH协议为例,执行交换的过程是:客户端生成随机数r1,服务端生成随机数r2,客户端与服务端执行一个DH交换协议,使得双方获得一个共享的随机数
步骤S1222:获取对称密钥,采用获取的对称密钥对共享随机数进行秘密运算,获得服务端来源随机信息。其中,这里的秘密运算可以是任何可能的方式,例如加密运算(如SM4加密运算)、解密运算(如SM4解密运算)、或者HMAC运算等。
其中,该对称密钥可以采用任何可能的方式获得。
在其中一个方式中,可以通过随机的方式生成该对称密钥。例如随机生成一个随机数作为对称密钥。
在其中一个方式中,可以是通过对上述随机终端信息串进行处理,获得该对称密钥,这里的处理可以是任何可能的处理方式,只要能够基于各终端部件随机信息产生较好随机性的输出即可。以下仅以其中两种方式进行举例说明。
一个实施例中,可以通过对随机终端信息串进行密钥派生,获得该对称密钥,例如以上述硬件信息串Hinfo为输入,执行密钥派生函数获得一个128比特的随机数:K=KDF(Hinfo,128)。
一个实施例中,可以采用下述方式获得对称密钥。
计算随机终端信息串的摘要值,获得第一熵源信息。计算摘要值的方式可以采用任何的方式进行,例如采用哈希算法计算摘要值。如以随机硬件信息串Hinfo作为输入,计算摘要值获得第一熵源信息E1,该第一熵源信息可以是256比特熵源材料,一个实施例中可以采用SM3哈希算法计算获得,如:E1=SM3_Hash(Hinfo)。
然后,将第一熵源信息输入随机数发生器,获得随机数发生器输出的对称密钥。一个实施例中,从随机数发生器输出的可以是128比特随机数,并将该随机数作为对称密钥。
一个实施例中,从服务端获取随机数信息,基于所述随机数信息执行秘密运算,获得服务端来源随机信息,包括步骤S1321至步骤S1323。
步骤S1321:获取服务端对随机数加密得到的第一随机数密文。其中,该随机数可以是服务端调用密码机生成的随机数,且该随机数可以是真随机数。
在该方式中,服务端可以采用各种可能的方式对随机数进行加密。
一个实施例中,客户端生成一个非对称密钥对,该非对称密钥对包括客户端私钥和客户端公钥,客户端私钥把存在客户端本地,并将客户端公钥发送给服务端。服务端在生成一个随机数R(可以是通过调用密码机生成,且可以是真随机数)之后,采用客户端公钥对随机数加密,获得第一随机数密文。
一个实施例中,客户端可以与服务端协商生成共享对称密钥,例如通过执行交换协议获得共享对称密钥,这里的交换协议可以是任何可能的交换协议,例如DH交换协议;以DH协议为例,执行交换的过程是:客户端生成随机数r1,服务端生成随机数r2,客户端与服务端执行一个DH交换协议,使得双方获得一个共享的随机数服务端在生成一个随机数R(可以是通过调用密码机生成,且可以是真随机数)之后,采用上述协商出的共享对称密钥对随机数加密,获得第一随机数密文。
步骤S1322:对第一随机数密文解密,获得随机数。
具体的解密方式可以采用任何可能的方式进行,一个实施例中,服务端采用客户端公钥对随机数加密,获得第一随机数密文时,客户端此时可以采用客户端私钥对第一随机数密文进行解密,获得随机数。一个实施例中,服务端采用共享对称密钥对随机数加密,获得第一随机数密文时,客户端此时可以采用共享对称密钥对第一随机数密文进行解密,获得随机数。据此可以实现随机数的加密传输。
步骤S1323:采用对称密钥对随机数进行运算,获得服务端来源随机信息。采用对称密钥对随机数进行运算的方式可以是任何可能的方式,例如加密运算(如SM4加密运算)、解密运算(如SM4解密运算)、或者HMAC运算等。
其中,该对称密钥可以采用任何可能的方式获得。
在其中一个方式中,可以通过随机的方式生成该对称密钥。例如随机生成一个随机数作为对称密钥。
在其中一个方式中,可以是通过对上述随机终端信息串进行处理,获得该对称密钥,这里的处理可以是任何可能的处理方式,只要能够基于各终端部件随机信息产生较好随机性的输出即可。以下仅以其中两种方式进行举例说明。
一个实施例中,可以通过对随机终端信息串进行密钥派生,获得该对称密钥,例如以上述硬件信息串Hinfo为输入,执行密钥派生函数获得一个128比特的随机数:K=KDF(Hinfo,128)。
一个实施例中,可以采用下述方式获得对称密钥。
计算随机终端信息串的摘要值,获得第一熵源信息。计算摘要值的方式可以采用任何的方式进行,例如采用哈希算法计算摘要值。如以随机硬件信息串Hinfo作为输入,计算摘要值获得第一熵源信息E1,该第一熵源信息可以是256比特熵源材料,一个实施例中可以采用SM3哈希算法计算获得,如:E1=SM3_Hash(Hinfo)。
然后,将第一熵源信息输入随机数发生器,获得随机数发生器输出的对称密钥。一个实施例中,从随机数发生器输出的可以是128比特随机数,并将该随机数作为对称密钥。
步骤S103:基于所述随机终端信息串和所述服务端来源随机信息生成外部熵源。
在生成外部熵源时,可以采用任何可能的方式进行。在其中一个实施例中,基于随机终端信息串和所述服务端来源随机信息生成外部熵源,包括步骤S1131至步骤S1133。
步骤S1131:获取第一熵源信息。该第一熵源信息是随机终端信息串的摘要值。其中,在上述共享密钥是基于第一熵源信息确定的情况下,即上述获取共享密钥时已经计算出第一熵源信息的情况下,可以直接读取已经计算出的第一熵源信息。若上述共享密钥是基于其他的方式获得,如密钥派生等方式,则可通过计算随机终端信息串的摘要值,获得该第一熵源信息。计算摘要值的方式可以采用任何的方式进行,例如采用哈希算法计算摘要值。
一个实施例中,可以随机硬件信息串Hinfo作为输入,计算摘要值获得第一熵源信息E1,该第一熵源信息可以是256比特熵源材料:E1=SM3_Hash(Hinfo)。
步骤S1132:计算服务端来源随机信息的摘要值,获得第二熵源信息。具体计算服务端来源随机信息的摘要值的方式可以采用任何可能的方式进行,例如采用哈希算法计算摘要值。将服务端来源随机信息记为CR,则可计算CR的摘要值获得第二熵源信息E2,该第二熵源信息可以是256比特熵源材料:E2=SM3_Hash(CR)。
步骤S1133:对第一熵源信息和第二熵源信息进行运算,获得外部熵源。在进行运算时,可以采用任何可能的运算方式,例如,对第一熵源信息E1和第二熵源信息E2进行异或运算,获得外部熵源Entropy,即Entropy=(E1)XOR(E2)。再例如,对第一熵源信息E1和第二熵源信息E2进行哈希运算,获得外部熵源Entropy,即Entropy=Hash(E1||E2)。再例如,对第一熵源信息E1和第二熵源信息E2进行密钥派生运算,获得外部熵源Entropy,即Entropy=KDF(E1||E2,256)。再例如,以第二熵源信息E2为对称密钥,对第一熵源信息E1进行运算,获得外部熵源Entropy。这里的运算的方式可以是任何可能的方式,例如加密运算(如SM4加密运算)、解密运算(如SM4解密运算)、或者HMAC运算等,以加密运算为例,即Entropy=加密算法(E1为输入,E2为对称密钥)。在一个实施例中,也可以是以第一熵源信息E1为对称密钥,即Entropy=加密算法(E2为输入,E1为对称密钥)。当然,对第一熵源信息和第二熵源信息进行运算获得外部熵源时,不限于上述运算方式。
基于如上所述的示例,在一个实施例中还提供一种计算机设备,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现如上述各实施例中的任意一个实施例的方法。
图2示出了一个实施例中计算机设备的内部结构图,该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和输入装置。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现移动终端随机数发生器的熵源采集方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行移动终端随机数发生器的熵源采集方法。
本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
据此,在一个实施例中还提供一种存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如上述各实施例中的任意一个实施例的方法。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (14)
1.一种移动终端随机数发生器的熵源采集方法,其特征在于,所述方法包括步骤:
从移动终端的各部件采集终端部件随机信息,并基于采集的各部件的终端部件随机信息构建随机终端信息串;所述终端部件随机信息包括:移动终端的陀螺仪的坐标值,移动终端的加速度传感器输出的加速度参数,移动终端所处的地理位置信息,移动终端的磁力计输出的磁力信息,移动终端的当前CPU的CPU使用率信息,移动终端的摄像设备的摄像设备信息,移动终端的操作系统的信息,移动终端的应用软件的软件信息,以及移动终端预先生成并存储的相关信息;所述坐标值包括横坐标值、纵坐标值和第三坐标值;所述加速度参数包括横坐标加速度、纵坐标加速度以及第三坐标加速度,所述地理位置信息包括:经度、纬度和高度,所述磁力信息包括磁北、真北和磁偏角;
从服务端获得服务端来源随机信息;具体包括:从服务端获取随机数,其中,所述随机数是服务端调用密码机生成的随机数,且所述随机数是真随机数;获取对称密钥,并采用对称密钥对所述随机数进行运算,获得服务端来源随机信息;
获取第一熵源信息,所述第一熵源信息是所述随机终端信息串的摘要值,所述第一熵源信息是256比特熵源材料;
计算所述服务端来源随机信息的摘要值,获得第二熵源信息,所述第二熵源信息是256比特熵源材料;
对所述第一熵源信息和所述第二熵源信息进行运算,获得外部熵源。
2.根据权利要求1所述的方法,其特征在于,基于采集的各部件的终端部件随机信息构建随机终端信息串,包括下述各项中的任意一项:
串接各部件的终端部件随机信息,获得随机终端信息串;
计算各部件的终端部件随机信息的哈希值,并对获得的各哈希值进行运算,获得随机终端信息串;
对各部件的终端部件随机信息进行处理,获得各处理数据,对获得的各处理数据进行运算,获得随机终端信息串。
3.根据权利要求1所述的方法,其特征在于,获取对称密钥包括:
对所述随机终端信息串进行处理,获得所述对称密钥。
4.根据权利要求3所述的方法,其特征在于,对所述随机终端信息串进行密钥派生,获得所述对称密钥。
5.根据权利要求3所述的方法,其特征在于,对所述随机终端信息串进行处理,获得所述对称密钥,包括:
计算所述随机终端信息串的摘要值,获得第一熵源信息;
将所述第一熵源信息输入随机数发生器,获得随机数发生器输出的对称密钥。
6.根据权利要求1所述的方法,其特征在于,对所述第一熵源信息和所述第二熵源信息进行运算,获得所述外部熵源,包括:
对所述第一熵源信息和所述第二熵源信息进行异或运算,获得所述外部熵源。
7.根据权利要求1所述的方法,其特征在于,对所述第一熵源信息和所述第二熵源信息进行运算,获得所述外部熵源,包括:
对所述第一熵源信息和所述第二熵源信息进行哈希运算,获得所述外部熵源。
8.根据权利要求1所述的方法,其特征在于,对所述第一熵源信息和所述第二熵源信息进行运算,获得所述外部熵源,包括:
对所述第一熵源信息和所述第二熵源信息进行密钥派生,获得所述外部熵源。
9.根据权利要求1所述的方法,其特征在于,对所述第一熵源信息和所述第二熵源信息进行运算,获得所述外部熵源,包括:
以所述第二熵源信息为对称密钥,对所述第一熵源信息进行运算,获得所述外部熵源。
10.根据权利要求1所述的方法,其特征在于,对所述第一熵源信息和所述第二熵源信息进行运算,获得所述外部熵源,包括:
以所述第一熵源信息为对称密钥,对所述第二熵源信息进行运算,获得所述外部熵源。
11.根据权利要求9所述的方法,其特征在于,包括:
以所述第二熵源信息为对称密钥,对所述第一熵源信息进行SM4加密运算、SM4解密运算、或者HMAC运算,获得所述外部熵源。
12.根据权利要求10所述的方法,其特征在于,包括:
以所述第一熵源信息为对称密钥,对所述第二熵源信息进行SM4加密运算、SM4解密运算、或者HMAC运算,获得所述外部熵源。
13.一种计算机设备,包括存储器和处理器,所述存储器上存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12任一项所述方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至12任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810220848.3A CN108491184B (zh) | 2018-03-16 | 2018-03-16 | 随机数发生器的熵源采集方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810220848.3A CN108491184B (zh) | 2018-03-16 | 2018-03-16 | 随机数发生器的熵源采集方法、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108491184A CN108491184A (zh) | 2018-09-04 |
CN108491184B true CN108491184B (zh) | 2021-04-27 |
Family
ID=63339821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810220848.3A Active CN108491184B (zh) | 2018-03-16 | 2018-03-16 | 随机数发生器的熵源采集方法、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108491184B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408029A (zh) * | 2018-10-17 | 2019-03-01 | 南京汽车集团有限公司 | 车联网下传感器生成随机数的方法 |
CN110399118B (zh) * | 2019-07-15 | 2022-01-18 | 宇龙计算机通信科技(深圳)有限公司 | 一种随机数生成方法、装置、存储介质及电子设备 |
CN110851112A (zh) * | 2019-11-06 | 2020-02-28 | 成都卫士通信息产业股份有限公司 | 一种随机比特生成方法、装置及电子设备和存储介质 |
CN112306455B (zh) * | 2020-03-26 | 2024-02-06 | 神州融安数字科技(北京)有限公司 | 随机数生成方法、生成器、电子设备计算机可读存储介质 |
CN111555872B (zh) * | 2020-04-30 | 2022-06-21 | 平安科技(深圳)有限公司 | 一种通信数据处理方法、装置、计算机系统及存储介质 |
CN113296738A (zh) * | 2020-11-05 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 量子随机数服务管理系统,提供和请求方法及装置 |
CN116560617A (zh) * | 2023-07-12 | 2023-08-08 | 杭州星锐网讯科技有限公司 | 一种随机数生成方法、装置和系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9819727B2 (en) * | 2013-02-28 | 2017-11-14 | Amazon Technologies, Inc. | Computing infrastructure for configurable-quality random data |
EP2874421A1 (en) * | 2013-11-13 | 2015-05-20 | Gemalto SA | System and method for securing communications between a card reader device and a remote server |
CN104539421A (zh) * | 2014-08-22 | 2015-04-22 | 南京速帕信息科技有限公司 | 一种基于动态算法种子的手机令牌的实现方法 |
CN104317551A (zh) * | 2014-10-17 | 2015-01-28 | 北京德加才科技有限公司 | 一种超高安全的真随机数生成方法及真随机数生成系统 |
CN107038383B (zh) * | 2016-02-03 | 2020-08-25 | 华为技术有限公司 | 一种数据处理的方法和设备 |
CN107133015A (zh) * | 2017-04-11 | 2017-09-05 | 上海汇尔通信息技术有限公司 | 一种随机数生成方法及系统 |
-
2018
- 2018-03-16 CN CN201810220848.3A patent/CN108491184B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108491184A (zh) | 2018-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108491184B (zh) | 随机数发生器的熵源采集方法、计算机设备及存储介质 | |
US11706026B2 (en) | Location aware cryptography | |
US10616213B2 (en) | Password manipulation for secure account creation and verification through third-party servers | |
CN108881314B (zh) | 雾计算环境下基于cp-abe密文隐私保护方法及系统 | |
CN106487506B (zh) | 一种支持预加密和外包解密的多机构kp-abe方法 | |
GB2576289A (en) | Cryptographic key-generation with application to data deduplication | |
US10313119B2 (en) | Data management device, system, re-encryption device, data sharing device, and storage medium | |
US11128452B2 (en) | Encrypted data sharing with a hierarchical key structure | |
JP6575532B2 (ja) | 暗号化装置、復号装置、暗号処理システム、暗号化方法、復号方法、暗号化プログラム、及び復号プログラム | |
CN112434336A (zh) | 基于区块链的电子病历共享方法、装置、系统及存储介质 | |
US10211986B2 (en) | Program collation system, node, collation method, and computer-readable medium | |
CN113572604A (zh) | 一种发送密钥的方法、装置、系统及电子设备 | |
WO2017033843A1 (ja) | 検索可能暗号処理システム | |
US8804953B2 (en) | Extensive ciphertext feedback | |
CN113098675B (zh) | 基于多项式完全同态的二进制数据加密系统及方法 | |
CN113708917A (zh) | 基于属性加密的app用户数据访问控制系统及方法 | |
Sharma et al. | Analysis of AES Encryption with ECC | |
CN108512840A (zh) | 一种基于泄序加密的密文检索方法 | |
CN107454059B (zh) | 一种云储存环境下基于序列密码的搜索加密方法 | |
CN112737783B (zh) | 一种基于sm2椭圆曲线的解密方法及设备 | |
CN113326518A (zh) | 一种数据处理方法及装置 | |
CN116232639B (zh) | 数据传输方法、装置、计算机设备和存储介质 | |
US10050943B2 (en) | Widely distributed parameterization | |
CN115834058A (zh) | 通信加密方法、装置、计算机设备 | |
KR101595056B1 (ko) | 인터클라우드 환경에서의 데이터 공유 시스템 및 공유 방법 |
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 |