CN114564171B - 真随机数生成方法、装置、电子设备、存储介质及系统 - Google Patents

真随机数生成方法、装置、电子设备、存储介质及系统 Download PDF

Info

Publication number
CN114564171B
CN114564171B CN202210214733.XA CN202210214733A CN114564171B CN 114564171 B CN114564171 B CN 114564171B CN 202210214733 A CN202210214733 A CN 202210214733A CN 114564171 B CN114564171 B CN 114564171B
Authority
CN
China
Prior art keywords
random number
speckle pattern
true random
sequence
sequences
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
CN202210214733.XA
Other languages
English (en)
Other versions
CN114564171A (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.)
Institute of Electronic Engineering of CAEP
Original Assignee
Institute of Electronic Engineering of CAEP
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 Institute of Electronic Engineering of CAEP filed Critical Institute of Electronic Engineering of CAEP
Priority to CN202210214733.XA priority Critical patent/CN114564171B/zh
Publication of CN114564171A publication Critical patent/CN114564171A/zh
Application granted granted Critical
Publication of CN114564171B publication Critical patent/CN114564171B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • 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
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Image Processing (AREA)

Abstract

本申请公开了真随机数生成方法、装置、设备、介质及系统,包括获取散斑图;散斑图由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到;根据散斑图的灰度信息将散斑图转换为第一数列;根据安全散列算法的输入数列长度,将第一数列划分为多个第二数列;利用安全散列算法分别将多个第二数列对应转换成多个随机数列;组合多个随机数列形成一个长随机数序列,作为真随机数。从散斑图中提取随机数的后处理过程非常适用于生成随机数,使得提取效率高;且熵源由经过光学PUF器件发生相干多重散射产生的散射光得到,散斑图中携带的信息量足够多,也可提升生成效率。

Description

真随机数生成方法、装置、电子设备、存储介质及系统
技术领域
本申请涉及密码学和信息安全领域,特别是涉及一种真随机数生成方法、装置、电子设备、计算机可读存储介质及系统。
背景技术
随机数在保密通信、网络验证码、数值计算、统计分析和信息安全等等诸多方面起着非常重要的作用。目前,在生成随机数时主要是基于硅基PUF(Physical UnclonableFunction,物理不可克隆函数)电路生成随机数,传统的硅基电学PUF电路具有较低的熵值,通常需要使用额外的前处理或后处理熵补偿单元,存在生成效率低、易被木马病毒攻击(即安全性差)等缺陷。
因此,如何解决上述技术问题应是本领域技术人员重点关注的。
发明内容
本申请的目的是提供一种真随机数生成方法、装置、电子设备、计算机可读存储介质及系统,以提升真随机数的生成效率。
为解决上述技术问题,本申请提供一种真随机数生成方法,包括:
获取散斑图;其中,所述散斑图由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到;
根据所述散斑图的灰度信息将所述散斑图转换为第一数列;
根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列;
利用安全散列算法分别将多个所述第二数列对应转换成多个随机数列;
组合多个所述随机数列形成一个长随机数序列,作为真随机数。
可选的,所述根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列之前,还包括:
确定所述散斑图的最小熵;
根据所述最小熵和所述散斑图的像素深度,确定所述真随机数的最优提取率;
根据所述第一数列中数据的数量和所述最优提取率,确定所述输入数列长度。
可选的,所述根据所述最小熵和所述散斑图的像素深度,确定所述真随机数的最优提取率包括:
根据F=E/D,确定所述最优提取率;
其中,F为最优提取率,E为最小熵,D为像素深度。
可选的,当所述散斑图的数量为多个时,所述组合多个所述随机数列形成一个长随机数序列包括:
将每个所述散斑图的多个所述随机数列组合为一个长随机数子序列;
将多个所述长随机数子序列组合为一个所述长随机数序列。
可选的,所述获取散斑图包括:
获取彩色散斑图;
对所述彩色散斑图进行灰度转换,形成所述散斑图。
可选的,所述根据所述散斑图的灰度信息将所述散斑图转换为第一数列包括:
获取所述散斑图中每一个像素的灰度值;
将每个所述灰度值转换为进制数;
将多个所述进制数组合成所述第一数列。
本申请还提供一种真随机数生成装置,包括:
获取模块,用于获取散斑图;其中,所述散斑图由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到;
第一转换模块,用于根据所述散斑图的灰度信息将所述散斑图转换为第一数列;
划分模块,用于根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列;
第二转换模块,用于利用安全散列算法分别将多个所述第二数列对应转换成多个随机数列;
组合模块,用于组合多个所述随机数列形成一个长随机数序列,作为真随机数。
本申请还提供一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一种所述的真随机数生成方法的步骤。
本申请还提供一种真随机数生成系统,包括:
激光光源、扩束镜、预选器件、光学物理不可克隆函数器件、相机、上述所述的电子设备;所述预选器件为空间光调制器或者数字微镜器件;
其中,所述电子设备与所述相机连接,所述扩束镜、所述预选器件、所述光学物理不可克隆函数器件、所述相机均位于所述激光光源发出的光束所在的光路上;所述扩束镜、所述预选器件、所述光学物理不可克隆函数器件、所述相机在所述光路上依次远离所述激光光源。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种所述的真随机数生成方法的步骤。
本申请所提供的一种真随机数生成方法,包括:获取散斑图;其中,所述散斑图由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到;根据所述散斑图的灰度信息将所述散斑图转换为第一数列;根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列;利用安全散列算法分别将多个所述第二数列对应转换成多个随机数列;组合多个所述随机数列形成一个长随机数序列,作为真随机数。
可见,本申请中在生成真随机数时,获取散斑图并根据散斑图的灰度信息将散斑图转换为第一数列,然后采用安全散列算法对第一数列进行处理,先根据安全散列算法的输入数列长度将第一数列划分为多个第二数列,再将第二数列转换为随机数列,再对随机数列进行组合得到真随机数,将散斑图转换为第一数列并采用安全散列算法进行处理的整个过程非常适用于随机数的生成,因此本申请真随机数的生成效率高,可达70%以上,并且,由于本申请中真随机数的熵源为由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到的散斑图,图中携带的信息量足够多,也使得真随机数的生成效率提高;另外,由于光学物理不可克隆函数器件的安全性高于电学PUF电路,因此本申请中得到的真随机数的安全性也有所提升。
此外,本申请还提供一种具有上述优点的装置、电子设备、计算机可读存储介质及系统。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种真随机数生成方法的流程图;
图2为本申请实施例所提供的长随机数序列的可视化矩阵图;
图3为本申请实施例所提供的一种真随机数生成装置的结构框图;
图4为本申请实施例所提供的一种电子设备的结构框图;
图5为本申请实施例所提供的一种真随机数生成系统的结构示意图;
图6为本申请实施例中相机拍摄的散斑图;
图7为本申请实施例中空间光调制器加载的伪随机图案。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
正如背景技术部分所述,目前在生成随机数时主要是基于量子原理生成随机数,例如通过干涉仪使激光信号发生干涉,然后利用光电探测器对发生干涉的光信号进行光电转换,形成电信号,进而对电信号进行处理,得到随机数。在生成随机数时,一方面生成方式导致随机数的效率低,另一方面,由于使用熵源为光信号,光信号中携带的信息量少,也使得随机数的生成效率低。
有鉴于此,本申请提供了一种真随机数生成方法,请参考图1,包括:
步骤S101:获取散斑图;其中,所述散斑图由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到。
利用相机拍摄发生相干多重散射而产生的散射光即可形成散斑图。
优选地,散斑图为灰度图像,相较于彩色图像,灰度图只有一个通道,可以简化生成方法。本申请中对获取灰度形式的散斑图的方式不做限定,例如,直接获取的散斑图即为灰度图像,此时相机拍摄形成的图像可以直接为灰度图像,或者,所述获取散斑图包括:
获取彩色散斑图;
对所述彩色散斑图进行灰度转换,形成所述散斑图。
对彩色散斑图进行灰度转换的方式可参考相关技术,本申请中不再赘述。
步骤S102:根据所述散斑图的灰度信息将所述散斑图转换为第一数列。
作为一种可实施方式,步骤S102包括:
步骤S1021:获取所述散斑图中每一个像素的灰度值。
设散斑图中像素的行数为P,列数为Q,则像素数目为P×Q。
步骤S1022:将每个所述灰度值转换为进制数。
需要说明的是,本申请中对进制数的类型不做限定,可自行选择。例如,可以将每个像素的灰度值转换为二进制数,或者八进制数等等。
当将像素的灰度值转换为二进制数时,进制数的长度等于散斑图的像素深度D,像素深度D是灰度由暗到亮的灰阶数,本申请中对像素深度也不做限定,例如像素深度可以为8bit、10bit、12bit、16bit等,对应的,二进制数的长度也为8位、10位、12位、16位等。
步骤S1023:将多个所述进制数组合成所述第一数列。
第一数列的长度为P×Q×D,第一数列与进制数的类型相同,为二进制数,或者八进制数等等。
步骤S103:根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列。
第二数列的长度等于输入数列长度,第二数列的长度小于第一数列的长度。
设定输入数列长度为L2,则第二数列的数量K=P×Q×D/L2。
步骤S104:利用安全散列算法分别将多个所述第二数列对应转换成多个随机数列。
安全散列算法包括多种算法,例如SHA(Secure Hash Algorithm,安全散列算法)-256、SHA-1、SHA-224、SHA-384和SHA-512等,本申请中对采用的具体算法类型不做限定。
随机数列的数量等于第二数列的数量K,随机数列的长度等于安全散列算法的输出数列长度L1。
步骤S105:组合多个所述随机数列形成一个长随机数序列,作为真随机数。
当所述散斑图的数量为一个时,组合多个所述随机数列形成一个长随机数序列,即,直接将K个随机数列组合形成一个长随机数序列,长随机数序列的长度为K×L1,便得到真随机数。
当所述散斑图的数量为多个时,所述组合多个所述随机数列形成一个长随机数序列包括:
将每个所述散斑图的多个所述随机数列组合为一个长随机数子序列;
将多个所述长随机数子序列组合为一个所述长随机数序列。
每个散斑图对应得到一个长随机数,当有N(N≥2)个散斑图时即得到N个长随机数,每个长随机数的长度均为K×L1,再将N个长随机数组合为一个长随机数序列,得到真随机数。
下面对本申请中得到的长随机数序列为真随机数的验证进行阐述。本申请中采用三种随机测试套件NITS,TestU01 alphabit,DIEHARDER对长随机数列进行测试,套件参数设置为默认参数。NIST测试中的所有15个测试指标对应的uniformity of p-values均大于0.0001且通过率大于98%,表示通过NIST测试;TestU01 alphabit测试中所有17个测试指标的p-value介于区间[0.001,0.999]内,说明测试通过;DIEHARDER中的所有测试指标对应的p-value值均在区间[0.005,0.095]内,表示DIEHARDER测试通过;因此,长随机数序列通过三种随机测试套件NITS,TestU01 alphabit,DIEHARDER的测试,证明该长随机数序列是真随机数序列,即生成的随机数为真随机数。
本申请中在生成真随机数时,获取散斑图并将散斑图转换为第一数列,然后采用安全散列算法对第一数列进行处理,先根据安全散列算法的输入数列长度将第一数列划分为多个第二数列,再将第二数列转换为随机数列,再对随机数列进行组合得到真随机数,将散斑图转换为第一数列并采用安全散列算法进行处理的整个过程非常适用于随机数的生成,因此本申请真随机数的生成效率高,可达70%以上,并且,由于本申请中真随机数的熵源为由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到的散斑图,图中携带的信息量足够多,也使得真随机数的生成效率提高;另外,由于光学物理不可克隆函数器件的安全性高于电学PUF电路,因此本申请中得到的真随机数的安全性也有所提升。本申请的方法实际真随机数提取率可达70%以上,真随机数产生速率为1Gbit/s以上。
在上述实施例的基础上,在本申请的一个实施例中,所述根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列之前,还包括:
确定所述散斑图的最小熵;
根据所述最小熵和所述散斑图的像素深度,确定所述真随机数的最优提取率;
根据所述第一数列中数据的数量和所述最优提取率,确定所述输入数列长度。
最小熵的确定方式可参考相关技术,本申请中不再详细赘述。
作为一种可实施方式,最优提取率的确定方式包括:
根据F=E/D,确定所述最优提取率;
其中,F为最优提取率,E为最小熵,D为像素深度。
安全散列算法的输入数列长度为L2为大于或者等于L1/F的整数,其中,L1为安全散列算法的输出数列长度,F为真随机数的最优提取率。
以面阵尺寸为2448×2048灰度格式的散斑图,SHA-256算法为例,其中,相机采集的散斑图以8bit的灰度格式保存,散斑图数量为N,对真随机数生成过程进行阐述。
步骤1、灰度提取:对一张散斑图中每一个像素的灰度值转为为8位的二进制数(例如,0转为00000000,255转为11111111),得到长度为2448×2048×8的二进制数列S1;其中,由于散斑图是8bit的灰度格式,则散斑图像素深度为8。
步骤2、确定散斑图的最小熵,计算公式为:
式中,E为最小熵,Pi表示散斑图中灰度级i的概率。
步骤3、确定最优提取率:根据F=E/D,确定散斑图的最优提取率,其中D为像素深度,F为最优提取率。
步骤4、确定安全散列算法的输入数列长度:SHA-256算法的输出数列长度L1为256,则输入数列长度L2为大于或等于256/F的整数。
步骤5、将长度为2448×2048×8的二进制数列S1划分成K个长度为L2的短数列,K=2448×2048×8/L2。
步骤6、采用SHA-256算法处理K个长度为L2的短数列,得到K个长度为256的随机数列S2,并将K个随机数列S2组合成一个长随机数子序列,长随机数子序列的长度为K×256。
步骤7、对剩余所有散斑图均进行步骤1至步骤6的操作,一共得到N个长度为K×256的长随机数子序列,并将N个长随机数子序列组成一个长随机数序列,即得到真随机数。
其中,长随机数序列的可视化矩阵示意图如图2所示,该图均匀且无任何特征,表明该真随机数具有良好随机性。
下面对本申请实施例提供的真随机数生成装置进行介绍,下文描述的真随机数生成装置与上文描述的真随机数生成方法可相互对应参照。
图3为本申请实施例提供的真随机数生成装置的结构框图,参照图3真随机数生成装置可以包括:
获取模块100,用于获取散斑图;其中,所述散斑图由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到;
第一转换模块200,用于根据所述散斑图的灰度信息将所述散斑图转换为第一数列;
划分模块300,用于根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列;
第二转换模块400,用于利用安全散列算法分别将多个所述第二数列对应转换成多个随机数列;
组合模块500,用于组合多个所述随机数列形成一个长随机数序列,作为真随机数。
本实施例的真随机数生成装置用于实现前述的真随机数生成方法,因此真随机数生成装置中的具体实施方式可见前文中的真随机数生成方法的实施例部分,例如,获取模块100,第一转换模块200,划分模块300,第二转换模块400,组合模块500,分别用于实现上述真随机数生成方法中步骤S101,S102,S103,S104和S105,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
可选的,真随机数生成装置还包括:
第一确定模块,用于确定所述散斑图的最小熵;
第二确定模块,用于根据所述最小熵和所述散斑图的像素深度,确定所述真随机数的最优提取率;
第三确定模块,用于根据所述第一数列中数据的数量和所述最优提取率,确定所述输入数列长度。
可选的,所述第二确定模块具体用于根据F=E/D,确定所述最优提取率;
其中,F为最优提取率,E为最小熵,D为像素深度。
可选的,当所述散斑图的数量为多个时,组合模块500包括:
第一组合单元,用于将每个所述散斑图的多个所述随机数列组合为一个长随机数子序列;
第二组合单元,用于将多个所述长随机数子序列组合为一个所述长随机数序列。
可选的,获取模块100包括:
第一获取单元,用于获取彩色散斑图;
第一转换单元,用于对所述彩色散斑图进行灰度转换,形成所述散斑图。
可选的,第一转换模块200包括:
第二获取单元,用于获取所述散斑图中每一个像素的灰度值;
第二转换单元,用于将每个所述灰度值转换为进制数;
第三组合单元,用于将多个所述进制数组合成所述第一数列。
下面对本申请实施例提供的电子设备进行介绍,下文描述的电子设备与上文描述的真随机数生成方法可相互对应参照。
请参考图4,本申请提供的一种电子设备,包括:
存储器11,用于存储计算机程序;
处理器12,用于执行所述计算机程序时实现上述任一实施例所述的真随机数生成方法的步骤。
下面对本申请实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的真随机数生成方法可相互对应参照。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的真随机数生成方法的步骤。
请参考图5,本申请还提供一种真随机数生成系统,包括:
激光光源1、扩束镜2、预选器件3、光学物理不可克隆函数器件4、相机5、上述实施例所述的电子设备6;所述预选器件3为空间光调制器或者数字微镜器件;
其中,所述电子设备6与所述相机5连接,所述扩束镜2、所述预选器件3、所述光学物理不可克隆函数器件4、所述相机5均位于所述激光光源1发出的光束所在的光路上;所述扩束镜2、所述预选器件3、所述光学物理不可克隆函数器件4、所述相机5在所述光路上依次远离所述激光光源1。
其中,空间光调制器可以为相位型空间光调制器,或振幅型空间光调制器。
相机5的帧率小于或者等于空间光调制器的帧率,以避免采集到相同的散斑图,优选的,相机5的帧率与空间光调制器的帧率保持相同。
以预选器件3为空间光调制器为例,对真随机数生成系统的工作过程进行阐述。激光光源1发射出激光光束,激光光束进入到扩束镜2,扩束镜2对激光光束进行扩束,扩束后的光束入射到空间光调制器,空间光调制器连续的对扩束后的光束随机编码,随机编码后的光束入射到光学物理不可克隆函数器件4发生相干多重散射现象而产生散射光,相机5拍摄散射光,得到散斑图,电子设备6从相机5处获取散斑图,并利用散斑图生成真随机数。
相机5优选为灰度相机,拍摄的散斑图如图6所示。相机5采用型号可以为GS3-U3-51S5M。
当预选器件3为空间光调制器,空间光调制器连续呈现不同的伪随机图案对扩束后的光束进行连续编码,其中,空间光调制器加载的伪随机图案如图7所示。当预选器件3为相位型空间光调制器,则伪随机图案中每个像素点的值随机均匀分布于0~2pi之间,当预选器件3为振幅型空间光调制器,则伪随机图案中每个像素点的值随机均匀分布于0~1之间。
当预选器件3为数字微镜器件(Digtial Micromirror Devices,DMD),每个像素点随机设置为0或1。数字微镜器件优选为高速DMD。
光学物理不可克隆函数器件4的材料是一种三维随机散射材料,光学物理不可克隆函数器件4为具有表面微纳结构或内部含有微纳结构的薄膜,使得散斑图复杂度高,最终生成的真随机数随机性能好,能够通过多种权威测试套件的检测。
光学物理不可克隆函数器件4的散射光为透射光或反射光。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的真随机数生成方法、装置、电子设备、计算机可读存储介质及系统进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (9)

1.一种真随机数生成方法,其特征在于,包括:
获取散斑图;其中,所述散斑图由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到;随机编码后光束由预选器件连续的对扩束后的光束随机编码得到,预选器件为数字微镜器件,数字微镜器件加载的伪随机图案中每个像素点随机设置为0或1;光学物理不可克隆函数器件的散射光为反射光;
根据所述散斑图的灰度信息将所述散斑图转换为第一数列;
根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列;安全散列算法为SHA-1、SHA-224、SHA-384、SHA-512;
利用安全散列算法分别将多个所述第二数列对应转换成多个随机数列;
组合多个所述随机数列形成一个长随机数序列,作为真随机数;
所述根据所述散斑图的灰度信息将所述散斑图转换为第一数列包括:
获取所述散斑图中每一个像素的灰度值;
将每个所述灰度值转换为进制数;
将多个所述进制数组合成所述第一数列。
2.如权利要求1所述的真随机数生成方法,其特征在于,所述根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列之前,还包括:
确定所述散斑图的最小熵;
根据所述最小熵和所述散斑图的像素深度,确定所述真随机数的最优提取率;
根据所述第一数列中数据的数量和所述最优提取率,确定所述输入数列长度。
3.如权利要求2所述的真随机数生成方法,其特征在于,所述根据所述最小熵和所述散斑图的像素深度,确定所述真随机数的最优提取率包括:
根据F=E/D,确定所述最优提取率;
其中,F为最优提取率,E为最小熵,D为像素深度。
4.如权利要求1所述的真随机数生成方法,其特征在于,当所述散斑图的数量为多个时,所述组合多个所述随机数列形成一个长随机数序列包括:
将每个所述散斑图的多个所述随机数列组合为一个长随机数子序列;
将多个所述长随机数子序列组合为一个所述长随机数序列。
5.如权利要求1所述的真随机数生成方法,其特征在于,所述获取散斑图包括:
获取彩色散斑图;
对所述彩色散斑图进行灰度转换,形成所述散斑图。
6.一种真随机数生成装置,其特征在于,包括:
获取模块,用于获取散斑图;其中,所述散斑图由随机编码后光束经过光学物理不可克隆函数器件发生相干多重散射而产生的散射光得到;随机编码后光束由预选器件连续的对扩束后的光束随机编码得到,预选器件为数字微镜器件,数字微镜器件加载的伪随机图案中每个像素点随机设置为0或1;光学物理不可克隆函数器件的散射光为反射光;
第一转换模块,用于根据所述散斑图的灰度信息将所述散斑图转换为第一数列;
划分模块,用于根据安全散列算法的输入数列长度,将所述第一数列划分为多个第二数列;安全散列算法为SHA-1、SHA-224、SHA-384、SHA-512;
第二转换模块,用于利用安全散列算法分别将多个所述第二数列对应转换成多个随机数列;
组合模块,用于组合多个所述随机数列形成一个长随机数序列,作为真随机数;
所述第一转换模块包括:
第二获取单元,用于获取所述散斑图中每一个像素的灰度值;
第二转换单元,用于将每个所述灰度值转换为进制数;
第三组合单元,用于将多个所述进制数组合成所述第一数列。
7.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的真随机数生成方法的步骤。
8.一种真随机数生成系统,其特征在于,包括:
激光光源、扩束镜、预选器件、光学物理不可克隆函数器件、相机、如权利要求7所述的电子设备;所述预选器件为数字微镜器件;
其中,所述电子设备与所述相机连接,所述扩束镜、所述预选器件、所述光学物理不可克隆函数器件、所述相机均位于所述激光光源发出的光束所在的光路上;所述扩束镜、所述预选器件、所述光学物理不可克隆函数器件、所述相机在所述光路上依次远离所述激光光源。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的真随机数生成方法的步骤。
CN202210214733.XA 2022-03-04 2022-03-04 真随机数生成方法、装置、电子设备、存储介质及系统 Active CN114564171B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210214733.XA CN114564171B (zh) 2022-03-04 2022-03-04 真随机数生成方法、装置、电子设备、存储介质及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210214733.XA CN114564171B (zh) 2022-03-04 2022-03-04 真随机数生成方法、装置、电子设备、存储介质及系统

Publications (2)

Publication Number Publication Date
CN114564171A CN114564171A (zh) 2022-05-31
CN114564171B true CN114564171B (zh) 2023-09-12

Family

ID=81717938

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210214733.XA Active CN114564171B (zh) 2022-03-04 2022-03-04 真随机数生成方法、装置、电子设备、存储介质及系统

Country Status (1)

Country Link
CN (1) CN114564171B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115658014B (zh) * 2022-12-26 2023-03-10 成都艺馨达科技有限公司 一种基于遗传算法的移动应用服务方法及系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009115611A2 (en) * 2008-03-20 2009-09-24 Universite De Geneve Secure item identification and authentication system and method based on unclonable features
CN107220026A (zh) * 2017-04-07 2017-09-29 太原理工大学 一种基于真空态量子涨落高速产生量子随机数的方法
CN206541291U (zh) * 2017-03-07 2017-10-03 哈尔滨工业大学 一种随机数可视化装置
CN207427176U (zh) * 2017-07-20 2018-05-29 中国工程物理研究院电子工程研究所 一种小型化量子认证系统
CN109344942A (zh) * 2018-09-26 2019-02-15 宁波大学 一种用于防伪标签的光学散斑puf系统
CN110321103A (zh) * 2019-06-27 2019-10-11 北京信息科技大学 一种基于物理设备的真随机数生成方法及设备
WO2019196684A1 (zh) * 2018-04-12 2019-10-17 Oppo广东移动通信有限公司 数据传输方法、装置、计算机可读存储介质、电子设备和移动终端
EP3557407A1 (en) * 2018-04-18 2019-10-23 eMemory Technology Inc. Puf-based true random number generation system
CN114107903A (zh) * 2021-11-12 2022-03-01 中国工程物理研究院电子工程研究所 一种光学puf、其制备方法及应用

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8224018B2 (en) * 2006-01-23 2012-07-17 Digimarc Corporation Sensing data from physical objects

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009115611A2 (en) * 2008-03-20 2009-09-24 Universite De Geneve Secure item identification and authentication system and method based on unclonable features
CN206541291U (zh) * 2017-03-07 2017-10-03 哈尔滨工业大学 一种随机数可视化装置
CN107220026A (zh) * 2017-04-07 2017-09-29 太原理工大学 一种基于真空态量子涨落高速产生量子随机数的方法
CN207427176U (zh) * 2017-07-20 2018-05-29 中国工程物理研究院电子工程研究所 一种小型化量子认证系统
WO2019196684A1 (zh) * 2018-04-12 2019-10-17 Oppo广东移动通信有限公司 数据传输方法、装置、计算机可读存储介质、电子设备和移动终端
EP3557407A1 (en) * 2018-04-18 2019-10-23 eMemory Technology Inc. Puf-based true random number generation system
CN109344942A (zh) * 2018-09-26 2019-02-15 宁波大学 一种用于防伪标签的光学散斑puf系统
CN110321103A (zh) * 2019-06-27 2019-10-11 北京信息科技大学 一种基于物理设备的真随机数生成方法及设备
CN114107903A (zh) * 2021-11-12 2022-03-01 中国工程物理研究院电子工程研究所 一种光学puf、其制备方法及应用

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
贺锋涛等.基于激光散斑和Henon映射的图像加密方法.《红外与激光工程》.2016,第45卷(第45期),275-279. *

Also Published As

Publication number Publication date
CN114564171A (zh) 2022-05-31

Similar Documents

Publication Publication Date Title
JP7025458B2 (ja) 量子乱数ジェネレータ
CN110071798B (zh) 一种等效密钥获取方法、装置及计算机可读存储介质
US20180239592A1 (en) Quantum random number generators
EP2940923B1 (en) Method and device for optics based quantum random number generator
CN107306333B (zh) 一种高速单像素成像方法
US20190156066A1 (en) System and method for physical one-way function authentication via chaotic integrated photonic resonators
US20050190913A1 (en) Random number generation apparatus and randon number generation method
CN114564171B (zh) 真随机数生成方法、装置、电子设备、存储介质及系统
CN109691011A (zh) 量子密钥分发系统所用的发送装置、接收装置、量子密钥分发方法和量子密钥分发程序
Bosworth et al. Unclonable photonic keys hardened against machine learning attacks
Hua et al. Image encryption using 2D Logistic-Sine chaotic map
CN110942413B (zh) 一种大容量光学信息隐藏、提取的方法及系统
Pavanello et al. Recent advances in photonic physical unclonable functions
CN114979407B (zh) 基于码分多址和深度学习鬼成像的多图加密和解密方法
Lin et al. An image compression-encryption algorithm based on cellular neural network and compressive sensing
Gupta et al. Hybrid image compression-encryption scheme based on multilayer stacked autoencoder and logistic map
JP2010271888A (ja) 物理乱数生成装置
Eftaxias et al. Advantages of multicopy nonlocality distillation and its application to minimizing communication complexity
CN116743934B (zh) 一种基于深度学习和鬼成像的等分辨率图像隐藏加密方法
CN110472739B (zh) 量子随机数的高效后处理方法、装置及量子随机数发生器
Hayes Computing Science: The Best Bits
CN110784315A (zh) 基于区块链的摇号方法、装置、计算机设备及存储介质
WO2021224605A1 (en) Random number generator
Yu et al. Single-pixel imaging based on weight sort of the Hadamard basis
Zhang et al. Study on the key technology of optical encryption based on adaptive compressive ghost imaging for a large-sized object

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