掌桥专利:专业的专利平台
掌桥专利
首页

量子随机数的随机性检验方法及系统

文献发布时间:2023-06-19 18:46:07


量子随机数的随机性检验方法及系统

技术领域

本发明涉及量子随机数检验技术领域,尤其是指一种量子随机数的随机性检验方法及系统。

背景技术

量子随机数发生器产生的随机数的随机性标志着量子随机数发生器服务的质量高低,因此用于量子随机数发生器产生随机数的随机性检验方法尤为重要。

目前现有的量子随机数的随机性检验方法有抽样检测、实时在线检测等方法,其中抽样检测通过从产生的随机数中提取部分数据进行随机性检验,其虽然能够检验提取的部分数据的随机性质量,但难以实时监测整个运行周期内产生的所有随机数的随机性质量。另外现有的实时在线检测方法或为了降低检测电路的复杂性,其采用的随机性检测方法较为简单,检测性能不佳,或采取的随机性检验方法较为复杂,从而占用了大量计算资源。

因此,迫切需要提出一种量子随机数的随机性检验方法以克服现有技术中存在的上述技术缺陷。

发明内容

为此,本发明所要解决的技术问题在于克服现有技术中存在的技术缺陷,而提出一种量子随机数的随机性检验方法及系统,其无需占用大量计算资源,且对随机性的检验性能较好,可实现高速在线检测,从而为量子随机数的随机性检验提供了客观的依据。

为解决上述技术问题,本发明提供了一种量子随机数的随机性检验方法,包括以下步骤:

S1:获取量子随机数发生器产生的量子随机数;

S2:在获取的量子随机数中截取n组长度为m的随机数组,并比较n组长度为m的随机数组与预设的n组默认值的大小,并分别产生一位与S相关的随机性的二进制数字;

S3:将步骤S2反复进行2

S4:将所述随机计算二进制位流作为随机计算中的被操作数进行运算,得到一组长度为2

S5:将长度为2

S6:根据n组默认值和m值生成一期望值C,根据所述期望值C和M值检验量子随机数的随机性。

在本发明的一个实施例中,在S2中,n组默认值的大小不同。

在本发明的一个实施例中,在S4中,将所述随机计算二进制位流作为随机计算中的被操作数进行运算,得到一组长度为2

将所述随机计算二进制位流的部分作为随机计算中的被操作数进行加法运算,将所述随机计算二进制位流的剩余部分作为随机计算中的被操作数进行加法运算,并将两个随机计算加法运算后产生的结果再次进行随机计算乘法运算,得到一组长度为2

在本发明的一个实施例中,在S5中,长度为2

在本发明的一个实施例中,在S6中,根据所述期望值C和M值检验量子随机数的随机性的方法包括:

采用|M-C|/(2

此外,本发明还提供一种量子随机数的随机性检验系统,包括:

量子随机数获取模块,所述量子随机数获取模块用于获取量子随机数发生器产生的量子随机数;

二进制数字产生模块,所述二进制数字产生模块用于在获取的量子随机数中截取n组长度为m的随机数组,并比较n组长度为m的随机数组与预设的n组默认值的大小,并分别产生一位与S相关的随机性的二进制数字;

二进制位流组成模块,所述二进制位流组成模块用于将二进制数字产生的步骤反复进行2

二进制位流运算模块,所述二进制位流运算模块用于将所述随机计算二进制位流作为随机计算中的被操作数进行运算,得到一组长度为2

二进制位流转换模块,所述二进制位流转换模块用于将长度为2

随机性检验模块,所述随机性检验模块用于根据n组默认值和m值生成一期望值C,利用所述期望值C和M值检验量子随机数的随机性。

在本发明的一个实施例中,所述二进制位流运算模块将所述随机计算二进制位流作为随机计算中的被操作数进行运算,得到一组长度为2

将所述随机计算二进制位流的部分作为随机计算中的被操作数进行加法运算,将所述随机计算二进制位流的剩余部分作为随机计算中的被操作数进行加法运算,并将两个随机计算加法运算后产生的结果再次进行随机计算乘法运算,得到一组长度为2

在本发明的一个实施例中,长度为2

在本发明的一个实施例中,所述随机性检验模块根据所述期望值C和M值检验量子随机数的随机性的方法包括:

采用|M-C|/(2

并且,本发明还提供了一种FPGA,该FPGA实现上述所述的一种量子随机数的随机性检验方法的步骤。

本发明的上述技术方案相比现有技术具有以下优点:

本发明所述的一种量子随机数的随机性检验方法及系统,其采用随机计算的原理将随机数的随机性通过随机计算放大展现,具体采用量子随机数作为因子,转换为可用于随机计算的随机数,该随机数经过多次随机计算后,最终产生的结果再次转换为二进制数字,该二进制数与默认值所对应的期望值的差值可作为衡量随机性的标准,该方法无需占用大量计算资源,且对随机性的检验性能较好,可实现高速在线检测,从而为量子随机数的随机性检验提供了客观的依据。

附图说明

为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明,其中

图1是本发明所提出的一种量子随机数的随机性检验方法的流程示意图。

图2是本发明所提出的一种量子随机数的随机性检验方法的具体实施示意图。

具体实施方式

下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。

参照图1所示,本发明实施例提供了一种量子随机数的随机性检验方法,包括以下步骤:

S1:获取量子随机数发生器产生的量子随机数;

S2:在获取的量子随机数中截取n组长度为m的随机数组,并比较n组长度为m的随机数组与预设的n组默认值的大小,并分别产生一位与S相关的随机性的二进制数字;

S3:将步骤S2反复进行2

S4:将所述随机计算二进制位流作为随机计算中的被操作数进行运算,得到一组长度为2

S5:将长度为2

S6:根据n组默认值和m值生成一期望值C,根据所述期望值C和M值检验量子随机数的随机性。

本发明所述的一种量子随机数的随机性检验方法,其采用随机计算的原理将随机数的随机性通过随机计算放大展现,具体采用量子随机数作为因子转换为可用于随机计算的随机数,该随机数经过多次随机计算后,最终产生的结果再次转换为二进制数字,该二进制数与默认值所对应的期望值的差值可作为衡量随机性的标准,该方法无需占用大量计算资源,且对随机性的检验性能较好,可实现高速在线检测,从而为量子随机数的随机性检验提供了客观的依据。

其中,在S4中,将所述随机计算二进制位流作为随机计算中的被操作数进行运算,得到一组长度为2

其中,在S5中,长度为2

其中,在S6中,根据所述期望值C和M值检验量子随机数的随机性的方法包括采用|M-C|/(2

下面以示例的形式详细阐述一下本发明所提供的一种量子随机数的随机性检验方法的具体内容。

作为示例地,如图2所示,从所产生的量子随机数中截取长度为8的随机数组S1、S2、S4、S5,并设定4组默认值(N1、N2、N3、N4),S3、S6为长度为1的从被检测的量子随机数中抽取的随机数(用于参与随机计算中的加法运算),N1、N2、N3、N4均为小于2

上述量子随机数发生器通过实时监测M值实现对随机性的检验方法为:设定δ,当δ远小于min[N1/2

本发明采用随机计算的方法实现对量子随机数的随机性的检验,使用量子随机数发生器产生的量子随机数作为随机运算加法运算的随机数源,通过多次随机计算放大所检验的随机数中的相干性,通过对常数的随机运算产生一个概率分布函数,使用测得的结果与预估期望误差范围的比较作为随机性检验的检验标准。

相应于上述方法的实施例,本发明还提供了一种FPGA,该FPGA实现上述所述的一种量子随机数的随机性检验方法的步骤。

下面对本发明实施例公开的一种量子随机数的随机性检验系统进行介绍,下文描述的一种量子随机数的随机性检验系统与上文描述的一种量子随机数的随机性检验方法可相互对应参照。

本发明实施例还提供了一种量子随机数的随机性检验系统,包括:

量子随机数获取模块,所述量子随机数获取模块用于获取量子随机数发生器产生的量子随机数;

二进制数字产生模块,所述二进制数字产生模块用于在获取的量子随机数中截取n组长度为m的随机数组,并比较n组长度为m的随机数组与预设的n组默认值的大小,并分别产生一位与S相关的随机性的二进制数字;

二进制位流组成模块,所述二进制位流组成模块用于将二进制数字产生的步骤反复进行2

二进制位流运算模块,所述二进制位流运算模块用于将所述随机计算二进制位流作为随机计算中的被操作数进行运算,得到一组长度为2

二进制位流转换模块,所述二进制位流转换模块用于将长度为2

随机性检验模块,所述随机性检验模块用于根据n组默认值和m值生成一期望值C,利用所述期望值C和M值检验量子随机数的随机性。

在本发明的一个实施例中,所述二进制位流运算模块将所述随机计算二进制位流作为随机计算中的被操作数进行运算,得到一组长度为2

将所述随机计算二进制位流的部分作为随机计算中的被操作数进行加法运算,将所述随机计算二进制位流的剩余部分作为随机计算中的被操作数进行加法运算,并将两个随机计算加法运算后产生的结果再次进行随机计算乘法运算,得到一组长度为2

在本发明的一个实施例中,所述随机性检验模块根据所述期望值C和M值检验量子随机数的随机性的方法包括:

采用|M-C|/(2

本发明所述的一种量子随机数的随机性检验系统,其采用随机计算的原理将随机数的随机性通过随机计算放大展现,具体采用量子随机数作为因子,转换为可用于随机计算的随机数,该随机数经过多次随机计算后,最终产生的结果再次转换为二进制数字,该二进制数与默认值所对应的期望值的差值可作为衡量随机性的标准,该方法无需占用大量计算资源,且对随机性的检验性能较好,可实现高速在线检测,从而为量子随机数的随机性检验提供了客观的依据。

本实施例的量子随机数的随机性检验系统用于实现前述的量子随机数的随机性检验方法,因此该系统的具体实施方式可见前文中的量子随机数的随机性检验方法的实施例部分,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。

另外,由于本实施例的量子随机数的随机性检验系统用于实现前述的量子随机数的随机性检验方法,因此其作用与上述方法的作用相对应,这里不再赘述。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

技术分类

06120115686076