一种真随机数生成方法及系统与流程

文档序号:18894216发布日期:2019-10-15 22:38阅读:358来源:国知局
一种真随机数生成方法及系统与流程

本发明涉及信息系统领域,更具体地说,涉及一种真随机数生成方法及系统。



背景技术:

由于随机数具有分布均匀无周期,不可预测和不可复制等特征,因此,随机数的产生成为信息安全、随机抽样与建模、人工智能、深空探测等领域中很重要的一环。

目前,常用的随机数生成有两种方法:基于软件算法和基于物理信号如热噪声等的方法。基于软件算法的方法一般根据种子值来计算生成的随机数,如果种子一样,生成的随机序列也一样,但在分布上显得随机又平均,因此是伪随机的。基于热噪声物理信号的方法是以经典热噪声的随机数芯片读取当前物理环境中的噪声,并据此获得随机数。这类方法由于环境中的变量更多,相对于基于软件算法的方法更难预测。然而在牛顿力学的框架下,即使影响随机数产生的变量非常多,但在每个变量的初始状态确定后,整个系统的运行状态及输出在原理上是可以预测的,因此这一类方法也是基于确定性的过程,只是某种更难预测的随机数,也是伪随机的。

由于伪随机数利用了确定性的算法和种子序列,所以其产生的伪随机数序列是可以预测和可以复制的,而且在足够大的尺度上是具有周期性的。虽然伪随机数列在诸多应用中满足需要,但是在不断追求更高不确定度的信息安全领域留下了安全的隐患。尤其在量子算法不断更新和量子计算机逐步走向实现的情况下,基于计算复杂度的伪随机数的安全性问题日益突显;同时,对基于物理现象的真随机数的关注和需求愈发增加。

1964年,美国物理学家贝尔发现通过对量子纠缠进行关联测量,量子力学和定域确定性理论会对测量结果有着不同的预言。利用这个特性即可开展贝尔实验检验,从而判定量子力学的基础是否完备和量子随机性是否存在。贝尔的理论提出之后的几十年中,世界各国的众多科研小组进行了大量的实验,量子力学和量子随机性经受住了相关的实验检验。然而到目前为止,尚有两个漏洞需要关闭,即自由选择漏洞(freedom-of-choiceloophole)和塌缩的定域性漏洞(collapselocalityloophole)。

最新的量子随机数生成器,利用量子纠缠的内禀随机性,实现器件无关的量子随机数。这类随机数发生器的安全性最高,但具有极高的技术挑战:整套随机数产生装置需要以极高的效率进行纠缠光子的产生、传输、调制、探测;同时不同组件间需要设置合适的空间距离以满足类空间分隔要求,才能以最高的安全性保证任何窃听者不能通过内部通信伪造贝尔不等式测试的结果。



技术实现要素:

本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种能够简单地采用普通物理随机信号源高速生成具有不可预测性、不可逆特性的高质量随机数的真随机数生成方法及系统。

基于物理信号生成真随机数的方法由真随机的物理信号作为信号源,从本质上讲是非确定性的,没有算法被用来产生可预测的后继位。因此,真随机数生成装置的结构和算法允许公开,这就使其在本质上区别于广泛应用的伪随机数发生器。由于真随机数的产生需要一个真正随机的信号源,每个真随机数生成装置都需要一个熵的物理信号源。熵一般是衡量物理系统中的无序的指标,在信息论方面,熵可以作为衡量信号源不可预测性的指标。真随机数生成装置所产生的随机数来源于真实的随机物理过程,彻底消除了伪随机数的周期性问题。采集大量随机数最好的方法是选取真实世界的自然随机,真随机源的获取可以有下列方式:1.使用随机噪声,选取真实世界的自然随机性;2、使用计算机时钟,获取到秒级可以认为是随机的;3.测量键盘的反应时间,用人们打字的随机方式来产生随机位,测量连续击键的时间,然后取这些测量的最低有效位;4.提取随机性。在通常情况下,产生随机数最好的办法是找出许多似乎是随机的事件,然后从中提取;5.各种随机物理过程如宇宙噪声、cmos电路中的噪声、光子振动和放射性衰变均可用于产生随机物理信号。

基于上述思路,本发明解决其技术问题所采用的技术方案是:构造一种真随机数生成方法,包括:

s1、采用连续光源生成独立的三组物理随机信号;

s2、基于所述三组物理随机信号生成二进制真随机数流;

s3、采用随机统计检验包验证所述二进制真随机数流中的真随机数的安全性和随机性。

在本发明所述的真随机数生成方法中,所述三组独立的物理随机信号包括光照度信号、电磁辐射信号和环境噪声信号。

在本发明所述的真随机数生成方法中,所述步骤s1进一步包括:

s11、采用由多个独立发光的光源构建的光源阵列生成所述三组物理随机信号;以及

s12、驱动各个所述独立发光的光源发光以产生物理随机变化的所述光照度信号、所述电磁辐射信号和所述环境噪声信号。

在本发明所述的真随机数生成方法中,采用红、绿、黄、白、蓝五种颜色的36个led光源,按照6*6形式排布构造所述光源阵列;在所述步骤s12中,采用继电器模块或控制板卡独立驱动所述36个led光源。

在本发明所述的真随机数生成方法中,所述步骤s2进一步包括:

s21、采用多个传感器检测所述三组物理随机信号并判定所述三组物理随机信号中是否至少有两组有效,如果是执行步骤s22,否则停止生成二进制真随机数流;

s22、对检测到物理随机信号进行融合、扰码和分析以生成所述二进制真随机数流。

在本发明所述的真随机数生成方法中,所述步骤s22进一步包括:

s221、对检测到的物理随机信号提取有效信息位;

s222、对所述有效信息位进行异或处理以生成预处理的有效二进制位数据;

s223、采用线性反馈移位寄存器对所述有效二进制位数据进行扰码处理以生成所述二进制真随机数流。

在本发明所述的真随机数生成方法中,所述步骤s223进一步包括将所述有效二进制位数据与36位线性反馈移位寄存器的输出进行异或运算以生成所述二进制真随机数流,其中循环周期为236

本发明解决其技术问题所采用的另一技术方案是:构造一种真随机数生成系统,包括:

光源随机信号生成装置,用于生成三组独立的物理随机信号;

二进制真随机数生成装置,用于基于所述三组物理随机信号生成二进制真随机数流;

检验装置,用于采用随机统计检验包验证所述二进制真随机数流中的真随机数的安全性和随机性。

在本发明所述的真随机数生成系统中,所述三组独立的物理随机信号包括光照度信号、电磁辐射信号和环境噪声信号。

在本发明所述的真随机数生成系统中,所述光源随机信号生成装置包括:由多个独立发光的光源构建的光源阵列,用于驱动各个所述独立发光的光源发光以产生物理随机变化的所述光照度信号、所述电磁辐射信号和所述环境噪声信号的驱动模块;

所述二进制真随机数生成装置包括:用于检测所述光照度信号、所述电磁辐射信号和所述环境噪声信号的多个传感器集模块,用于判定所述三组物理随机信号中是否至少有两组有效的判定模块,以及对检测到物理随机信号进行融合、扰码和分析以生成所述二进制真随机数流的真随机数生成模块。

实施本发明的真随机数生成方法及系统,能够简单地采用普通物理随机信号源高速生成具有不可预测性、不可逆特性的高质量随机数。进一步的,采用三组物理随机信号并且在至少两组物理随机信号正常才生成随机数,从而提供了高冗余级别和用于生成每个输出位的熵值,确保产生最高质量的真随机数。进一步的,通过采用6*6led阵列,可以提供高达236种光源组合,进一步提高了真随机数的质量和速度,适用于目前高随机要求的信息安全领域。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是本发明的真随机数生成方法的第一实施例的流程图;

图2是本发明的真随机数生成方法的第二实施例的流程图;

图3是本发明的真随机数生成系统的第一实施例的原理框图;

图4是本发明的真随机数生成系统的优选实施例的光源随机信号生成装置以及传感器的结构示意图;

图5是本发明的真随机数生成系统的优选实施例的光源阵列的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供了一种真随机数生成方法,包括:s1、采用连续光源生成独立的三组物理随机信号;s2、基于所述三组物理随机信号生成二进制真随机数流;s3、采用随机统计检验包验证所述二进制真随机数流中的真随机数的安全性和随机性。本发明还涉及一种真随机数生成系统,包括:光源随机信号生成装置,用于生成三组独立的物理随机信号;二进制真随机数生成装置,用于基于所述三组物理随机信号生成二进制真随机数流;检验装置,用于采用随机统计检验包验证所述二进制真随机数流中的真随机数的安全性和随机性。实施本发明的真随机数生成方法及系统,能够简单地采用普通物理随机信号源高速生成具有不可预测性、不可逆特性的高质量随机数。

图1是本发明的真随机数生成方法的第一实施例的流程图。如图1所示,在步骤s1中,采用连续光源生成独立的三组物理随机信号。在本发明的优选实施例中,所述三组独立的物理随机信号包括光照度信号、电磁辐射信号和环境噪声信号。在本发明的优选实施例中,可以采用发光灯作为连续光源。选择连续光源作为随机信号生成器的原因如下:光电效应经理论及实验证实具有完全不可预测性;光源选择丰富,类型多;容易组成阵列,产生更多的随机组合;各光源可独立控制,且控制简单;可产生多种随机信号,如光照度、电磁辐射、噪声等;性价比高。从能耗、使用寿命、响应时间上考虑,优选使用led光源。在本实施例中,利用光源的量子特性,产生三组独立的物理随机信号,从而保证提供量子熵源。由光照度信号、电磁辐射信号和环境噪声信号等组成混沌熵源。从而提供了高冗余级别和用于生成每个输出位的熵值,确保产生最高质量的真随机数。

优选的,在本实施例中,可以使用继电器模块或控制板卡形式控制光源发光,电磁继电器动作次数在20万次以内,使用寿命有限。采用控制板卡方式则无动作次数限制且控制频率高,但控制装置成本会增高。本发明的优选实施例中,根据装置运行寿命及随机数生成速率要求,采用板卡进行控制。当然,在本发明的其他优选实施例中,还可以采用其他控制方式。

在步骤s2中,基于所述三组物理随机信号生成二进制真随机数流。在本发明的优选实施例中,可以采用多个传感器检测所述三组物理随机信号并判定所述三组物理随机信号中是否至少有两组有效,如果是执行后续步骤,否则停止生成二进制真随机数流。在判定所述三组物理随机信号中是否至少有两组有效时,对检测到物理随机信号进行融合、扰码和分析以生成所述二进制真随机数流。然后可以采用以千兆以太网接口,例如rj45、usb对外发布。由于三组物理随机信号类型多样且不可逆、采集装置的测量误差、电源波动、环境干扰等因素,即使光阵列连续以同样逻辑运作,所测量的结果也不一致,因此所生成的随机数具有不可预测性、不可逆特性,且能高速生成。

在步骤s3中,采用随机统计检验包验证所述二进制真随机数流中的真随机数的安全性和随机性。在本发明的优选实施例中,采用国际上通用的标准的随机性的统计检验包nist-sts进行全面测试,使得生成的真随机数能够保证最高级别的安全性和随机性。国内/国际随机性检测规范标准所含检测项目如下表1:

表1

按上述nist-sts规定的16个项目进行检测,样本数量不少于1000,每个样本长度不低于106比特。单项检测如果20组或以上不能通过检测,则不合格。允许重复1次随机数采集与检测,如果仍不合格,则判定随机性不合格。当然,在本发明的其他优选实施例中,还可以采用其他的检测方法进行相关检测,这些均落入本发明的保护范围。

实施本发明的真随机数生成方法,能够简单地采用普通物理随机信号源高速生成具有不可预测性、不可逆特性的高质量随机数。

图2是本发明的真随机数生成方法的第二实施例的流程图。如图2所示,在步骤s1中,采用由多个独立发光的光源构建的光源阵列生成所述三组物理随机信号。在本发明的优选实施例中,如图5所示,可以采用红、绿、黄、白、蓝五种颜色的36个led光源,按照6*6形式排布构造所述光源阵列。在本发明的进一步的优选实施例中,该led光源的参数如下寿命:40000h;亮度:>100cd/m2;电源:dc24v、15ma;接口:接插式(2.8*0.8mm)/螺钉式;外径:7.5mm~29mm;外壳材质铜镀铬或不锈钢,坚固耐用。总共可产生236种光组合,产生具有统计学随机的物理随机信号。

在步骤s2中,驱动各个所述独立发光的光源发光以产生物理随机变化的所述光照度信号、所述电磁辐射信号和所述环境噪声信号。优选的,可以采用继电器模块或控制板卡独立驱动所述36个led光源。优选的,在本实施例中,可以使用继电器模块或控制板卡形式控制光源发光,电磁继电器动作次数在20万次以内,使用寿命有限。采用控制板卡方式则无动作次数限制且控制频率高,但控制装置成本会增高。本发明的优选实施例中,根据装置运行寿命及随机数生成速率要求,采用板卡进行控制。当然,在本发明的其他优选实施例中,还可以采用其他控制方式。

图4是本发明的真随机数生成系统的优选实施例的光源随机信号生成装置以及传感器的结构示意图。如图4所示,可以主要通过接线盒30对36个led灯光源61进行连接,接线盒30通过连接电缆10连接信号控制卡72;具体控制动作由信号控制卡72进行控制。例如可以使用pci插槽式板卡pci-1752u,能够提供隔离数字量输入通道和隔离数字量输出通道,隔离保护电压可达到2500vdc。此外所有输出通道在系统重启后都可以保持它们上次的输出值,同时pci-1752u提供通道冻结功能,在操作工作中可以将每个通道的当前输出状态维持不变。主要技术指标如下:64路隔离数字量输出;输出通道高电压隔离(2500vdc);2000vdcesd保护;宽输入范围(5~40vdc);隔离输出通道上的高汇点电流(最大200ma/每通道);输出状态回读;热重启动系统时保持数字量输出值;通道冻结功能。在本实施例中,36个led灯光源61可以伪随机方式驱动,驱动函数可由监控主机自定义,与环境结合,产生物理随机变化的所述光照度信号、所述电磁辐射信号和所述环境噪声信号。

在步骤s3中采用多个传感器检测所述三组物理随机信号并判定所述三组物理随机信号中是否至少有两组有效,如果是执行步骤s4,否则停止生成二进制真随机数流,整个进程结束。在本发明的进一步的优选实施例中,可以对所述三组物理随机信号进行增强处理。

如图4所示,可以采用信号采集卡71通过连接电缆10连接接线盒40,接线盒40进一步通过信号电缆20连接光照度传感器51、声音传感器53和磁感应强度传感器52从而采集所述光照度信号、所述电磁辐射信号和所述环境噪声信号。信号采集卡71可以直接插入工控机pci插槽,通过接线盒40连接各信号传感器51-53进行信号采集。

所述信号采集卡71可以选择如下几种类型:1、高精度动态信号采集卡pcie-1802:具有8通道,24位,216ks/s/ch,动态信号同步采集卡。内置4ma/10ma激励电流,可用于测量集成电子压电式(iepe)传感器,如声音、振动信号;2、多通道同步采样多功能卡pci-1706u:具有8通道,16位,250ks/s,同步取样高精度通用多功能卡。它带有8个250ks/s16位a/d转换器;3、多通道扫描采样多功能卡pci-1716:具有16通道,16位,250ks/s,高分辨率多功能数据采集卡。它带有1个250ks/s16位a/d转换器。

所述光照度传感器51可以选择如昆仑海岸zd-6vbm:其采用高灵敏度的光敏元件作为传感器,具有测量范围宽,线性度好,防水性能好,使用、安装方便,传输距离远等特点。

所述声音传感器53可以选择如下几种类型:1、gras40ph/ni782121-06;其集成智能传感器和集成放大器,通过iepe激励供电,方便使用。频率响应范围10hz-20khz,smb接口,符合1类声级计标准;2、科尚仪器ksi-308a-213:其是1/2英寸驻极体电容传声器。标配的前置放大器采用4ma恒流源(iepe)供电,频率响应范围20hz-20khz,bnc口输出。与带极化电压的前置放大器相比,结构简单,使用方便;3、澄科电子awa14423声音传感器+awa14604前置放大器;其采用镍振膜和镍合金外壳,并进行特殊的稳定性处理,具有频率范围宽、频率特性好等优。磁感应强度传感器52可以选择如康威霍尔型磁场感应模块,其采用线性霍尔效应传感器,用于检测信号源的磁感应强度,具有低噪声、低功耗、高精度特点,内含薄膜电阻,有更好的温度稳定性和准确性。

在本优选实施例中,所述三组独立的物理随机信号包括光照度信号、电磁辐射信号和环境噪声信号,这三组模拟信号,所以可以使用专用的模块化采集装置或采集卡。模块化装置针对具体的信号,传感器与采集结合,需要使用多个模块采集,并以通讯方式接连,采样精度与采样速率较低,部署简单,成本低。而使用pci/pcie/pxi/pxie采集卡形式,传感器与采集分离,采样精度与采样速率都较高。

在本发明的进一步的优选实施例中,所述光照度传感器51检测led光照度信号,因此装于光源阵列正前方;所述磁感应强度传感器52检测磁感应强度,装于光源阵列正前方;所述声音传感器53用于检测环境噪声,装于光源阵列的背板上。进一步的,还可以设置电能检测模块采集电压、电流,装于供电回路;各传感器输出信号接入信号采集卡,主机通过pci/pxi总线采集数据。

在步骤s4中,对检测到物理随机信号进行融合、扰码和分析以生成所述二进制真随机数流。在本发明的优选实施例中,所述步骤s4进一步包括对检测到的物理随机信号提取有效信息位;对所述有效信息位进行异或处理以生成预处理的有效二进制位数据;采用线性反馈移位寄存器对所述有效二进制位数据进行扰码处理以生成所述二进制真随机数流。这样可以避免生成的随机数二进制流出现连续的1。在本实施例中,有效信息位不包括每次采样的不变区域的值。

在本发明的进一步的优选实施例中,将所述有效二进制位数据与36位线性反馈移位寄存器的输出进行异或运算以生成所述二进制真随机数流,其中循环周期为236,初始种子来源于采集的理随机信号即所述光照度信号、所述电磁辐射信号和所述环境噪声信号。另一方面对采集到的所述光照度信号、所述电磁辐射信号和所述环境噪声信号进行融合,生成随机数。在本发明进一步的优选实施例中,还可以包括对硬件设备工作状态监测,如采集设备、传感器、光源等出现故障,则禁止输出随机数。在本发明中由于信号源类型多样且不可逆、采集装置的测量误差、电源波动、环境干扰等因素,即使光阵列连续以同样逻辑运作,所测量的结果也不一致,因此所生成的随机数具有不可预测性、不可逆特性,且能高速生成;可以应用于密码学、信息安全、人工智能、数值计算、随机抽样、神经计算等领域。

在步骤s5中,采用随机统计检验包验证所述二进制真随机数流中的真随机数的安全性和随机性。在本发明的优选实施例中,采用国际上通用的标准的随机性的统计检验包nist-sts进行全面测试,使得生成的真随机数能够保证最高级别的安全性和随机性。具体的检测可以参照图1所示实施例,在此就不再累述了。

实施本发明的真随机数生成方法,能够简单地采用普通物理随机信号源高速生成具有不可预测性、不可逆特性的高质量随机数。进一步的,采用三组物理随机信号并且在至少两组物理随机信号正常才生成随机数,从而提供了高冗余级别和用于生成每个输出位的熵值,确保产生最高质量的真随机数。进一步的,通过采用6*6led阵列,可以提供高达236种光源组合,进一步提高了真随机数的质量和速度,适用于目前高随机要求的信息安全领域。

本发明的真随机数生成方法,基于多种随机的物理信号,多信号类型包括光强度、电磁辐射及声音信号,产生真随机数,不可预测、不可逆;信号源使用6×6光源阵列,并使用不同功率的光源;每个光源可独立控制,光源组合类型高达236;随机数生成速率超过1kbps;生成的随机信号再通过国际通用的标准的检测包nist-sts进行检测,保证生成高质量的真随机数。解决了目前广泛应用的伪随机数的不足,适用于目前高随机度要求的信息安全领域等。

图3是本发明的真随机数生成系统的第一实施例的原理框图。如图3所示,本发明的真随机数生成系统包括光源随机信号生成装置100、二进制真随机数生成装置200和检验装置300。如图3所示,所述光源随机信号生成装置100,用于生成三组独立的物理随机信号。所述二进制真随机数生成装置200用于基于所述三组物理随机信号生成二进制真随机数流。所述检验装置300用于采用随机统计检验包验证所述二进制真随机数流中的真随机数的安全性和随机性。优选的,所述三组独立的物理随机信号包括光照度信号、电磁辐射信号和环境噪声信号。

在本发明的进一步的优选实施例中,所述光源随机信号生成装置100包括:由多个独立发光的光源构建的光源阵列,用于驱动各个所述独立发光的光源发光以产生物理随机变化的所述光照度信号、所述电磁辐射信号和所述环境噪声信号的驱动模块。所述二进制真随机数生成装置200包括:用于检测所述光照度信号、所述电磁辐射信号和所述环境噪声信号的多个传感器集模块,用于判定所述三组物理随机信号中是否至少有两组有效的判定模块,以及对检测到物理随机信号进行融合、扰码和分析以生成所述二进制真随机数流的真随机数生成模块。

本领域技术人员知悉,所述光源随机信号生成装置100、二进制真随机数生成装置200和检验装置300,以及光源阵列,驱动模块、传感器集模块、真随机数生成模块、检验装置300可以参照图1-2,4中所示实施例构造,在此就不再累述了。在本发明的进一步的优选实施例中,驱动模块、真随机数生成模块、检验装置300均可以采用相同或者不同的处理器完成。

因此,本发明可以通过硬件、软件或者软、硬件结合来实现。本发明可以在至少一个计算机系统中以集中方式实现,或者由分布在几个互连的计算机系统中的不同部分以分散方式实现。任何可以实现本发明方法的计算机系统或其它设备都是可适用的。常用软硬件的结合可以是安装有计算机程序的通用计算机系统,通过安装和执行程序控制计算机系统,使其按本发明方法运行。

本发明还可以通过计算机程序产品进行实施,程序包含能够实现本发明方法的全部特征,当其安装到计算机系统中时,可以实现本发明的方法。本文件中的计算机程序所指的是:可以采用任何程序语言、代码或符号编写的一组指令的任何表达式,该指令组使系统具有信息处理能力,以直接实现特定功能,或在进行下述一个或两个步骤之后实现特定功能:a)转换成其它语言、编码或符号;b)以不同的格式再现。

虽然本发明是通过具体实施例进行说明的,本领域技术人员应当明白,在不脱离本发明范围的情况下,还可以对本发明进行各种变换及等同替代。另外,针对特定情形或材料,可以对本发明做各种修改,而不脱离本发明的范围。因此,本发明不局限于所公开的具体实施例,而应当包括落入本发明权利要求范围内的全部实施方式。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1