CN109375898A - 基于cmos探测的量子真随机数生成器芯片及方法 - Google Patents
基于cmos探测的量子真随机数生成器芯片及方法 Download PDFInfo
- Publication number
- CN109375898A CN109375898A CN201811420139.6A CN201811420139A CN109375898A CN 109375898 A CN109375898 A CN 109375898A CN 201811420139 A CN201811420139 A CN 201811420139A CN 109375898 A CN109375898 A CN 109375898A
- Authority
- CN
- China
- Prior art keywords
- cmos
- pixel
- photons
- entropy
- extractor
- 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.)
- Granted
Links
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)
- Photometry And Measurement Of Optical Pulse Characteristics (AREA)
Abstract
基于CMOS探测的量子真随机数生成器芯片及方法,芯片内置光源,随机发射符合泊松分布的光子;采用CMOS像素阵列接收光源信号并转换成电信号,经过放大处理和模数转换以提取器从信号中提取出量子随机数。通过调整CMOS的采集速率、像素阵列数量以及其他参数,可以获得覆盖2Mbps到2Gbps速率区间的随机数输出,生成的随机数质量良好,方便的应用于多种场景,以满足不同需求。芯片典型尺寸小于5mm*5mm*2mm;价格便宜,功耗低,尤其适宜在物联网安全领域得到大规模的推广应用。
Description
技术领域
本发明属于IPC分类G06F电数字数据处理技术领域,具体涉及随机数生成技术,尤其是基于CMOS探测的量子真随机数生成器芯片及方法。
背景技术
在统计学的不同技术中需要使用随机数,比如在从统计总体中抽取有代表性的样本的时候,或者在将实验动物分配到不同的试验组的过程中,或者在进行蒙特卡罗模拟法计算的时候等等。随机数是专门的随机试验的结果。在统计学的不同技术中需要使用随机数,比如在从统计总体中抽取有代表性的样本的时候,或者在将实验动物分配到不同的试验组的过程中,或者在进行蒙特卡罗模拟法计算的时候。随机数在量子通信、密码学、博彩业、蒙特卡洛模拟、数值计算、随机抽样、神经网络计算、传统信息安全等众多的领域中有着广泛的应用。
产生随机数有多种不同的方法。这些方法被称为随机数发生器。随机数最重要的特性是:它所产生的后面的那个数与前面的那个数毫无关系。
随机数发生器一般分为两类:伪随机数发生器和真随机数发生器。伪随机数发生器一般由算法产生,其生成的序列取决于算法和使用的初始值,所以其本质上并非真正的随机序列。真随机数发生器一般采用具有随机特性的物理过程作为信号源,通过提取这些信号然后经过一定的后处理得到随机序列。
量子物理过程是实现真随机数发生器的重要方法。已公开文献涉及基于单光子经过50:50光学分束器得到的空间路径、单光子到达时间、真空涨落等物理过程的量子随机数发生装置。但是,这些量子随机数发生装置结构比较复杂,而且,光学分束器难以做到精确的50:50的分光比,同时,分光比这一参数可能会受到波长等其他物理参数的影响,从而导致最终产生的随机数序列0、1不平衡,进而其他统计检测项的性能也将受到影响。此外,现有技术中的量子随机数发生器大多数采用单光子探测接收光信号,但因为其高昂的成本,导致最终产品的价格也是非常高,并且产品的体积也比较大,所以难以推广使用。
韩国SK推出一款超小型量子随机数生成器(QRNG)芯片原型,提升物联网安全性方面已经取得应用。该芯片远期目标实现外形尺寸不超过5平方毫米,但是到目前为止,QRNG芯片对于广泛普及采用来说尺寸太大,同时成本过高。
改进技术中,CMOS用于量子真随机数生成的相关技术方案正在受到关注。这一类量子随机数发生器产品结构简单、性能可靠、小尺寸、同时成本比较低廉。技术优势明显,但是相关公开文献较少。
CMOS(Complementary Metal-Oxide-Semiconductor),中文学名为互补金属氧化物半导体,是计算机系统内一种重要的芯片,保存系统引导最基本的资料,和CCD一样同为在数码相机中可记录光线变化的半导体。在计算机领域,CMOS常指保存计算机如日期、时间、启动设置等基本启动信息的芯片。有时人们会把CMOS和BIOS混称,其实CMOS是主板上的一块可读写的并行或串行FLASH芯片,是用来保存BIOS的硬件配置和用户对某些参数的设定。
CMOS通常在三个领域普遍应用:一是用于计算机信息保存,CMOS作为可擦写芯片使用,系统故障时,进行CMOS放电操作,从而还原BIOS设置。二是在数字影像领域,常见的数码产品,其感光元件主要就是CCD或者CMOS,尤其是低端摄像头产品,而通常高端摄像头都是CCD感光元件。三是在更加专业的集成电路设计与制造领域。
《微电子学》2017年第4期519-522页刊载了《一种64位输出的真随机数发生器》。其中记载,在传统Fibonacci环形振荡器和Galois环形振荡器的基础上,通过控制电路使环形振荡器的输出在亚稳态与稳态之间不断切换,为生成的随机序列引入真随机性。通过加入后处理模块,提高随机序列的质量和增加每比特的熵,并利用DES算法实现随机序列的重新组合。利用FPGA进行实验验证后,最终集成在一个加密USB盘控制器芯片内,产生的随机序列通过了NIST SP800-22标准检测。采用110nm CMOS工艺,该芯片实现了批量生产。
清华大学提出的中国专利申请201010108937.2,公开了集成电路设计技术领域中的一种基于环型振荡器的真随机数发生电路及真随机数发生器。基于环型振荡器的真随机数发生电路,包括顺序连接的振荡采样电路、后处理电路和控制电压产生电路;振荡采样电路包括第一高频环形振荡电路、第二高频环形振荡电路和一个低频环形振荡电路;基于环型振荡器的真随机数发生器,包括三级基于环型振荡器的真随机数发生电路。本发明解决了随机比特流产生速度较慢的相位抖动累积问题,能够快速得到随机性更好的随机比特流。
国民技术股份有限公司提出的中国专利申请201110444656.9,公开一种CMOS随机数发生器,其包括偏置电路、双漏极CMOS管噪声电流源和控制单元。偏置电路用于为所述双漏极CMOS管噪声电流源提供直流工作点。双漏极CMOS管噪声电流源采用双漏极CMOS管产生噪声电流信号。控制单元用于将双漏极CMOS管噪声电流源产生的噪声电流信号直接放大后产生随机数。本发明的电路结构更简单且功耗更低。
无锡华大国奇科技有限公司提出的中国专利申请201210060818.3,涉及随机数发生器,其特征在于:包括线性移位寄存器、控制模块、环形振荡器、分频器;所述的控制模块与线性移位寄存器、环形振荡器、分频器连接,用于采集线性移位寄存器输出的第一随机序列出并传递给环形振荡器;所述环形振荡器与分频器连接,接收第一随机序列并向分频器输出方波信号,翻转分频器的输出值;所述的控制模块还用于采集分频器的输出值传递给线性移位寄存器;所述的线性移位寄存器异或第一随机序列与分频器的输出值,形成第二随机序列输出。全部采用数字逻辑单元,电路实现容易,而且可以兼容不同的CMOS集成电路工艺节点,具有普遍的实用性。
大唐微电子技术有限公司提出的中国专利申请201510105707.3,提供一种噪声型随机数生成装置,该噪声电流源,包括:共源共栅电流源、电阻、第一共源放大器、第一镜像器、第一CMOS管、第二CMOS管、第三CMOS管、第四CMOS管、第一电容和第二电容;第一CMOS管的栅极和第二CMOS管的栅极连接,以使第二CMOS管的漏极输出第一电流;第三CMOS管的栅极和第四CMOS管的栅极连接,以使第四CMOS管的漏极输出第二电流。第二CMOS管的漏极和第四CMOS管的漏极分别与电流比较器连接,以使第一电流和第二电流分别流入电流比较器,获得随机数列。从而提高了生成随机数的速率。
深圳华视微电子有限公司提出的中国专利申请201610346245.9,涉及一种基于电阻热噪声的真随机数发生器,其中,反馈电阻R3和第一反相器构成第一单级放大器,反馈电阻R4和第二反相器构成另第二单级放大器,第一单级放大器和第二单级放大器用于热噪声源的电压放大,第二反相器输出带有热噪声源噪声信息的电压信号;比较器通过比较热噪声源噪声信息的电压信号与参考电压,在比较器的输出端输出随机信号。本发明相对于传统的基于热噪声的真随机数发生器的改进之处在于采用CMOS单级放大器,没有采用传统的低噪声放大器,因此设计结构简单,而且放大倍数高,稳定性好,并可以有效的节约芯片面积,降低功耗。
芯片或集成电路(integrated circuit)是一种微型电子器件或部件。采用一定的工艺,把一个电路中所需的晶体管、电阻、电容和电感等元件及布线互连一起,并封装在一个管壳内,成为具有所需电路功能的微型结构;现有技术中尚未发现基于CMOS探测真随机数生成芯片或集成电路。
发明内容
本发明的目的是提供基于CMOS探测的量子真随机数生成器芯片及方法,适宜经济节能地大规模广泛应用。
本发明的目的将通过以下技术措施来实现:采用CMOS像素阵列接收光源信号并转换成电信号,经过放大处理和模数转换,再由提取器从信号中提取出量子随机数;调整CMOS的采集速率、像素阵列数量参数,获得覆盖2Mbps到2Gbps速率区间的随机数输出。芯片内置模块包括:光源、CMOS传感器、后处理单元;光源安装在CMOS传感器中的CMOS像素阵列前方,在CMOS传感器中的CMOS像素阵列依次连接模拟放大器和模数转换器;CMOS传感器中的模数转换器连接到后处理单元中的处理器;在后处理单元中,处理器进一步连接到提取器;后处理单元中,处理器连接有输出接口;其中:
光源,采用可见光波段的LED光源,随机发射光子;
CMOS传感器包括CMOS像素阵列、模拟放大器、模数转换器;CMOS像素阵列,用于接收光子并转换成电信号;模拟放大器,用于对电信号进行放大;
模数转换器,用于将放大后的信号转换成数字信号,并发送给处理器做进一步的处理;
后处理单元包括:处理器和提取器;所述处理器,用于接收数字信号,计算每个像素的最小熵并根据最小熵,并根据最小熵值进行统计和筛选,行统计和筛选,确定是否把该像素的数据发送给提取器;提取器,对接收到的数据进行随机数提取,得到QRN随机数序列,并输出随机数。
尤其是,光源选自发光二极管、激光二极管类随机发射光子的光源;所述光源由稳流电路驱动;所述CMOS传感器除了在吸收光子数非常小和吸收光子数接近饱和时之外具有大范围的线性工作区间;所述模数转换器的位数与CMOS像素阵列吸收的饱和光子数相匹配,即其位数d满足条件:2d大于CMOS像素阵列吸收的饱和光子数;所述处理器实时统计每个像素吸收的光子数的平均值,并把每个像素的平均值和预设的阈值区间比较,如果某像素的平均值处于阈值区间之内则把该像素的数据发送给提取器进行提取,否则舍弃该像素的数据;所述提取器从长度m的低熵值序列中提取长度k的高熵值序列,其中m>k;所述提取器选自包括Universal hash function、Toeplitz矩阵哈希提取器、Trevisan提取器、HMAC(Hash-based Message Authentication Code)算法或其他随机性提取器。
尤其是,采用可见光波段的LED光源,随机发射光子;设光源在时间间隔T发射的平均光子数为n,其在时间间隔T内发射的光子数是符合标准差为的泊松分布;CMOS像素阵列输出值随着照射光子数增加而线性变化,通过统计测量值的均值和方差比值来检测,如果CMOS线性工作,那么除了在吸收光子数非常小和吸收光子数接近饱和时之外,其比值应该都约等于1;放大器要的增益使其与模数转换器相匹配,使模数转换器的位数d与CMOS传感器吸收的饱和光子数满足条件:2d大于CMOS传感器吸收的饱和光子数,从而确保CMOS吸收的每个可能的光子数量,在进行模数转后都有一个唯一的值与之对应。
尤其是,选用的CMOS传感器参数为:
CMOS传感器,其饱和吸收光子数为2000,而模数转换器的位数或单像素的输出位为12,212=4096>2000,为了能够使得CMOS在吸收的光子平均数在不饱和的情况下尽可能的大,以提供尽可能多的量子不确定性并且吸收光子数处于CMOS传感器线性范围内,通过调整光源的工作电流使其具有对应的发光强度,使得单位时间间隔T内CMOS传感器单像素产生的电子数平均为CMOS传感器接收的光子信号呈正态分布;
根据最小熵的定义:
Hmin=-log2(Pmax) (1)
CMOS传感器吸收的平均光子数为n,则在吸收的平均光子数n与饱和光子数差距很大时用如下公式计算最小熵:
将带入公式(2)得到每个像素位的最小熵为6.64位。这个熵被编码为12位,所以,其每个输出位的平均最小熵为0.55位;模数转换器在采集到这个低熵值的序列之后,把其发送给处理器;
在处理器中预设了一个熵值的阈值区间,以略去熵值很大和很小的情况:熵值很小的时候,像素吸收的光子数很少,这时候噪声的影响非常显著;而在熵值很大的时候,像素吸收的光子数接近饱和值,得到的数据不准确。当像素的最小熵值落在这个区间时使用这一像素的数据,否则舍弃这一像素的数据;
处理器根据采集到的数据统计每个像素的平均光子数n,并在n与饱和光子数差距很大时可以根据公式(2)计算最小熵,而在n接近饱和光子数的时候需要根据最小熵原始定义来计算最小熵。然后,把得到的最小熵与预设的熵值阈值区间作对比,如果某一像素的最小熵落在这个区间之内,则把这一像素的数据发送给提取器进行提取,否则舍弃该像素的数据。
最后,提取器从处理器筛选后的长度m的低熵值序列中提取长度k的高熵值序列,其中m>k。
尤其是,提取器使用Toeplitz矩阵哈希提取器,从低随机性的n bit的序列中提取高随机性的k bit序列时,需要根据最小熵情况设定提取器的具体参数;使用Toeplitz矩阵哈希提取器提取公式如下:
其中m为一个随机矩阵。
尤其是,哈希提取器的大小为m*n的Toeplitz矩阵的对角线是相同的。
本发明的优点和效果:芯片内置光源,随机发射符合泊松分布的光子;采用CMOS像素阵列接收光源信号并转换成电信号,经过放大处理和模数转换以提取器从信号中提取出量子随机数。通过调整CMOS的采集速率、像素阵列数量以及其他参数,可以获得覆盖2Mbps到2Gbps速率区间的随机数输出,生成的随机数质量良好,方便的应用于多种场景,以满足不同需求。芯片典型尺寸小于5mm*5mm*2mm;价格便宜,功耗低,尤其适宜在物联网安全领域得到大规模的推广应用。
附图说明
图1为本发明中的芯片模块及连接结构示意图。
图2为实施例1中CMOS接收的光子信号分布图。
图3为实施例1中Toeplitz矩阵构成示意图。
图4实施例1中NIST测试结果。
具体实施方式
本发明原理在于,CMOS足够成熟而且经济节能,采用CMOS像素阵列接收光源信号并转换成电信号,经过放大处理和模数转换,再由提取器从信号中提取出量子随机数。更重要的在于,CMOS的采集速率、像素阵列数量以及其他参数可以精确调整,可以很好的支持不同场景条件下的不同应用需求。
为使本发明中技术方案和优点更加清楚明白,以下结合具体实施例和附图,对本发明作进一步详细说明。
如图1所示,本发明中,芯片内置模块包括:光源、CMOS传感器、后处理单元;光源安装在CMOS传感器中的CMOS像素阵列前方,在CMOS传感器中的CMOS像素阵列依次连接模拟放大器和模数转换器;CMOS传感器中的模数转换器连接到后处理单元中的处理器;在后处理单元中,处理器进一步连接到提取器;后处理单元中,处理器连接有输出接口;其中:
光源,采用可见光波段的LED光源,随机发射光子。
CMOS传感器包括CMOS像素阵列、模拟放大器、模数转换器。CMOS像素阵列,用于接收光子并转换成电信号。模拟放大器,用于对电信号进行放大;
模数转换器,用于将放大后的信号转换成数字信号,并发送给处理器做进一步的处理。
后处理单元包括:处理器和提取器。所述处理器,用于接收数字信号,计算每个像素的最小熵并根据最小熵,并根据最小熵值进行统计和筛选,行统计和筛选,确定是否把该像素的数据发送给提取器。提取器,对接收到的数据进行随机数提取,得到QRN随机数序列。并输出随机数。
前述中,光源选自发光二极管、激光二极管或其他任何随机发射光子的光源。所述光源由稳流电路驱动,以防止电流波动对于发光强度的影响。所述光源使用负反馈调整电路,以保证光源输出恒定的发光强度,消除光源光衰的影响。所述CMOS传感器除了在吸收光子数非常小和吸收光子数接近饱和时之外具有大范围的线性工作区间。所述模数转换器的位数与CMOS像素阵列吸收的饱和光子数相匹配,即其位数d满足条件:2d大于CMOS像素阵列吸收的饱和光子数。
前述中,所述处理器实时统计每个像素吸收的光子数的平均值,并把每个像素的平均值和预设的阈值区间比较,如果某像素的平均值处于阈值区间之内则把该像素的数据发送给提取器进行提取,否则舍弃该像素的数据。所述提取器从长度m的低熵值序列中提取长度k的高熵值序列,其中m>k。所述提取器选自包括Universal hash function、Toeplitz矩阵哈希提取器、Trevisan提取器、HMAC(Hash-based Message Authentication Code)算法或其他适当的随机性提取器。
本发明通过调整CMOS的采集速率、像素阵列数量以及其他参数,可以获得覆盖2Mbps到2Gbps速率区间的随机数输出,以满足不同需求。
实施例1:采用可见光波段的LED光源,随机发射光子。设光源在时间间隔T发射的平均光子数为n,其在时间间隔T内发射的光子数是符合标准差为的泊松分布。由量子物理理论可知,这一光子数在测量之前是完全未知的且从根本上是不可预测的,本发明以这一随机的光子数作为随机源。光源由稳流电路来驱动,使得发射光子数的波动来自光源本身而不是受到电流波动的影响。此外,光源使用负反馈调整电路,以保证光源输出恒定的发光强度,消除光源光衰的影响。
前述中,CMOS传感器包括CMOS像素阵列、模拟放大器、模数转换器。其中:
CMOS像素阵列,用于接收数量随机的光子并转换成电子信号。为了能够准确的获取光子数信息,这里需要CMOS像素阵列具有大范围的线性工作区间,即其输出值随着照射光子数增加而线性变化。这里可以通过统计测量值的均值和方差比值来检测,如果CMOS线性工作,那么除了在吸收光子数非常小和吸收光子数接近饱和时之外,其比值应该都是约等于1的。
模拟放大器,用于对电信号进行放大。
模数转换器,用于将放大信号转换成数字信号,并发送给处理器做进一步的处理。放大器要选取合适的增益使其与模数转换器相匹配,使模数转换器的位数d与CMOS传感器吸收的饱和光子数满足条件:2d大于CMOS传感器吸收的饱和光子数,从而确保CMOS吸收的每个可能的光子数量,在进行模数转后都有一个唯一的值与之对应。
处理单元,包括处理器和提取器。其中:处理器,用于计算每个像素的最小熵,并根据最小熵值确定是否把该像素的数据发送给提取器。提取器从得到的数字信号中提取随机数并输出随机数。
本实施例中,选用的CMOS传感器参数为:
本实施例中,选取参数如上表中给出的CMOS传感器,其饱和吸收光子数为2000,而模数转换器的位数或单像素的输出位为12,212=4096>2000,满足对于模数转换器的要求。为了能够使得CMOS在吸收的光子平均数在不饱和的情况下尽可能的大,以提供尽可能多的量子不确定性并且吸收光子数处于CMOS传感器线性范围内,解决方案是通过调整光源的工作电流使其具有对应的发光强度,使得单位时间间隔T内CMOS传感器单像素产生的电子数平均为CMOS传感器接收的光子信号呈正态分布如附图2所示。
前述中,根据最小熵的定义:
Hmin=-log2(Pmax) (1)
CMOS传感器吸收的平均光子数为n,则在吸收的平均光子数n与饱和光子数差距很大时用如下公式计算最小熵:
将带入公式(2)得到每个像素位的最小熵为6.64位。这个熵被编码为12位,所以,其每个输出位的平均最小熵为0.55位。模数转换器在采集到这个低熵值的序列之后,把其发送给处理器。
在处理器中预设了一个熵值的阈值区间,以略去熵值很大和很小的情况:熵值很小的时候,像素吸收的光子数很少,这时候噪声的影响非常显著;而在熵值很大的时候,像素吸收的光子数接近饱和值,得到的数据不准确。当像素的最小熵值落在这个区间时使用这一像素的数据,否则舍弃这一像素的数据。
处理器根据采集到的数据统计每个像素的平均光子数n,并在n与饱和光子数差距很大时可以根据公式(2)计算最小熵,而在n接近饱和光子数的时候需要根据最小熵原始定义来计算最小熵。然后,把得到的最小熵与预设的熵值阈值区间作对比,如果某一像素的最小熵落在这个区间之内,则把这一像素的数据发送给提取器进行提取,否则舍弃该像素的数据。
最后,提取器从处理器筛选后的长度m的低熵值序列中提取长度k的高熵值序列,其中m>k。
这里以Toeplitz矩阵哈希提取器为例对提取器的工作方式进行简要说明。
使用Toeplitz矩阵哈希提取器从低随机性的n bit的序列中提取高随机性的kbit序列时,需要根据最小熵情况设定提取器的具体参数。
例如,在本实施例中,最小熵为6.64,平均每位的熵为0.55,提取器的最终提取比例不能大于这个值。选取输入序列长度n=1000,输出序列长度可以得到k=300,也就是说从1000bits的输入中可以提取出300bits的输出,其提取比例为0.3,小于之前要求的0.55,符合提取器对于熵值的要求。
使用Toeplitz矩阵哈希提取器提取公式如下:
其中m为一个随机矩阵。在本实施实例中,输入序列为1000*1的矩阵,输出序列为300*1的矩阵,矩阵m为300*1000的矩阵,这个矩阵由大小为1299个随机在{0,1}取值的数字组成,矩阵的对角线是相同的。
如附图3所示,给出了一个大小为m*n的Toeplitz矩阵的组构成方式。
通过上述提取器的提取之后,输出生成的随机数序列。为了验证生成的随机数的随机性,本实施例对生成的数据做了多轮NIST测试,每轮测试输入106个(0、1)数据,测试103次,如附图4所示,判定数据随机性的15个项目全部测试通过,说明本发明生成的随机数质量良好。
以上实施例仅是结合优选实施方式对本发明进行的说明和描述,并非对本发明构思和范围进行限定,在不脱离本发明设计原理的前提下,本领域技术人员对本发明的技术方案作出的各种变型和改进,比如,在本发明中的模块连接结构中增加辅助模块,或者,调整模块的连接关系,或者,改变芯片的封装结构,或者,对提取算法进行有限改进,或者叠加应用或直接嵌入在其它芯片、模块、系统中,这些均应落入本发明的保护范围。
Claims (7)
1.基于CMOS探测的量子真随机数生成器芯片,其特征在于,芯片内置模块包括:光源、CMOS传感器、后处理单元;光源安装在CMOS传感器中的CMOS像素阵列前方,在CMOS传感器中的CMOS像素阵列依次连接模拟放大器和模数转换器;CMOS传感器中的模数转换器连接到后处理单元中的处理器;在后处理单元中,处理器进一步连接到提取器。
2.基于CMOS探测的量子真随机数生成方法,其特征在于,采用CMOS像素阵列接收光源信号并转换成电信号,经过放大处理和模数转换,再由提取器从信号中提取出量子随机数;调整CMOS的采集速率、像素阵列数量参数,获得覆盖2Mbps到2Gbps速率区间的随机数输出;后处理单元中,处理器连接有输出接口;其中:
光源,采用可见光波段的LED光源,随机发射光子;
CMOS传感器包括CMOS像素阵列、模拟放大器、模数转换器;CMOS像素阵列,用于接收光子并转换成电信号;模拟放大器,用于对电信号进行放大;
模数转换器,用于将放大后的信号转换成数字信号,并发送给处理器做进一步的处理;
后处理单元包括:处理器和提取器;所述处理器,用于接收数字信号,计算每个像素的最小熵,并根据最小熵值进行统计和筛选,确定是否把该像素的数据发送给提取器;提取器,对接收到的数据进行随机数提取,得到QRN随机数序列,并输出随机数。
3.如权利要求1所述的基于CMOS探测的量子真随机数生成器芯片,其特征在于,光源选自发光二极管、激光二极管类随机发射光子的光源;所述光源由稳流电路驱动;所述CMOS传感器除了在吸收光子数非常小和吸收光子数接近饱和时之外具有大范围的线性工作区间;所述模数转换器的位数与CMOS像素阵列吸收的饱和光子数相匹配,即其位数d满足条件:2d大于CMOS像素阵列吸收的饱和光子数;所述处理器实时统计每个像素吸收的光子数的平均值,并把每个像素的平均值和预设的阈值区间比较,如果某像素的平均值处于阈值区间之内则把该像素的数据发送给提取器进行提取,否则舍弃该像素的数据;所述提取器从长度m的低熵值序列中提取长度k的高熵值序列,其中m>k;所述提取器选自包括Universal hashfunction、Toeplitz矩阵哈希提取器、Trevisan提取器、HMAC(Hash-based MessageAuthentication Code)算法或其他随机性提取器。
4.如权利要求1所述的基于CMOS探测的量子真随机数生成器芯片,其特征在于,采用可见光波段的LED光源,随机发射光子;设光源在时间间隔T发射的平均光子数为n,其在时间间隔T内发射的光子数是符合标准差为的泊松分布;CMOS像素阵列输出值随着照射光子数增加而线性变化,通过统计测量值的均值和方差比值来检测,如果CMOS线性工作,那么除了在吸收光子数非常小和吸收光子数接近饱和时之外,其比值应该都约等于1;放大器要的增益使其与模数转换器相匹配,使模数转换器的位数d与CMOS传感器吸收的饱和光子数满足条件:2d大于CMOS传感器吸收的饱和光子数,从而确保CMOS吸收的每个可能的光子数量,在进行模数转后都有一个唯一的值与之对应。
5.如权利要求2所述的基于CMOS探测的量子真随机数生成方法,其特征在于,选用的CMOS传感器参数为:
CMOS传感器,其饱和吸收光子数为2000,而模数转换器的位数或单像素的输出位为12,212=4096>2000,为了能够使得CMOS在吸收的光子平均数在不饱和的情况下尽可能的大,以提供尽可能多的量子不确定性并且吸收光子数处于CMOS传感器线性范围内,通过调整光源的工作电流使其具有对应的发光强度,使得单位时间间隔T内CMOS传感器单像素产生的电子数平均为CMOS传感器接收的光子信号呈正态分布;
根据最小熵的定义:
Hmin=-log2(Pmax) (1)
CMOS传感器吸收的平均光子数为n,则在吸收的平均光子数n与饱和光子数差距很大时用如下公式计算最小熵:
将带入公式(2)得到每个像素位的最小熵为6.64位;这个熵被编码为12位,所以,其每个输出位的平均最小熵为0.55位;模数转换器在采集到这个低熵值的序列之后,把其发送给处理器;
在处理器中预设了一个熵值的阈值区间,以略去熵值很大和很小的情况:熵值很小的时候,像素吸收的光子数很少,这时候噪声的影响非常显著;而在熵值很大的时候,像素吸收的光子数接近饱和值,得到的数据不准确;当像素的最小熵值落在这个区间时使用这一像素的数据,否则舍弃这一像素的数据;
处理器根据采集到的数据统计每个像素的平均光子数n,并在n与饱和光子数差距很大时可以根据公式(2)计算最小熵,而在n接近饱和光子数的时候需要根据最小熵原始定义来计算最小熵;然后,把得到的最小熵与预设的熵值阈值区间作对比,如果某一像素的最小熵落在这个区间之内,则把这一像素的数据发送给提取器进行提取,否则舍弃该像素的数据;
最后,提取器从处理器筛选后的长度m的低熵值序列中提取长度k的高熵值序列,其中m>k。
6.如权利要求5所述的基于CMOS探测的量子真随机数生成方法,其特征在于,提取器使用Toeplitz矩阵哈希提取器,从低随机性的n bit的序列中提取高随机性的k bit序列时,需要根据最小熵情况设定提取器的具体参数;使用Toeplitz矩阵哈希提取器提取公式如下:
其中m为一个随机矩阵。
7.如权利要求6所述的基于CMOS探测的量子真随机数生成方法,其特征在于,哈希提取器的大小为m*n的Toeplitz矩阵的对角线是相同的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811420139.6A CN109375898B (zh) | 2018-11-26 | 2018-11-26 | 基于cmos探测的量子真随机数生成器芯片及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811420139.6A CN109375898B (zh) | 2018-11-26 | 2018-11-26 | 基于cmos探测的量子真随机数生成器芯片及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109375898A true CN109375898A (zh) | 2019-02-22 |
CN109375898B CN109375898B (zh) | 2019-09-13 |
Family
ID=65383192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811420139.6A Active CN109375898B (zh) | 2018-11-26 | 2018-11-26 | 基于cmos探测的量子真随机数生成器芯片及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109375898B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918046A (zh) * | 2019-02-28 | 2019-06-21 | 徐文婷 | 一种改进的基于光学的量子随机数产生的装置 |
CN109918045A (zh) * | 2019-02-28 | 2019-06-21 | 徐文婷 | 一种改进的光量子随机数产生的实现方法 |
CN110321103A (zh) * | 2019-06-27 | 2019-10-11 | 北京信息科技大学 | 一种基于物理设备的真随机数生成方法及设备 |
CN110472739A (zh) * | 2019-08-12 | 2019-11-19 | 北京中创为南京量子通信技术有限公司 | 量子随机数的高效后处理方法、装置及量子随机数发生器 |
CN110569022A (zh) * | 2019-09-09 | 2019-12-13 | 弦海(上海)量子科技有限公司 | 全硅基cmos量子随机数发生装置 |
CN110750236A (zh) * | 2019-10-28 | 2020-02-04 | 安徽安匠信息科技有限公司 | 基于cmos图像传感器的量子随机数发生器 |
CN111221503A (zh) * | 2019-12-03 | 2020-06-02 | 核芯互联科技(青岛)有限公司 | 适用物联网环境下的伪随机数发生方法、发生器和传感器 |
US11477021B1 (en) | 2022-03-09 | 2022-10-18 | Tuatara QRNG, LLC | Systems and methods for universal three-dimensional quantum random number generation and encryption |
US11526330B1 (en) | 2022-03-16 | 2022-12-13 | Tuatara QRNG, LLC | Universal interferometer and systems and methods for universal three-dimensional quantum random number generation |
CN117555516A (zh) * | 2023-11-13 | 2024-02-13 | 格物量子技术(合肥)有限公司 | 一种小型化量子随机数产生装置及方法 |
CN117591075A (zh) * | 2024-01-18 | 2024-02-23 | 上海卫星互联网研究院有限公司 | 一种基于星体光相干性的随机数生成方法、装置及设备 |
CN117555516B (zh) * | 2023-11-13 | 2024-06-07 | 格物量子技术(合肥)有限公司 | 一种小型化量子随机数产生装置及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186361A (zh) * | 2011-12-27 | 2013-07-03 | 国民技术股份有限公司 | Cmos随机数发生器 |
CN106020770A (zh) * | 2016-05-23 | 2016-10-12 | 深圳华视微电子有限公司 | 一种基于电阻热噪声的真随机数发生器 |
CN107066236A (zh) * | 2015-11-10 | 2017-08-18 | Id量子技术公司 | 基于光学的量子随机数生成的方法和装置 |
-
2018
- 2018-11-26 CN CN201811420139.6A patent/CN109375898B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186361A (zh) * | 2011-12-27 | 2013-07-03 | 国民技术股份有限公司 | Cmos随机数发生器 |
CN107066236A (zh) * | 2015-11-10 | 2017-08-18 | Id量子技术公司 | 基于光学的量子随机数生成的方法和装置 |
CN106020770A (zh) * | 2016-05-23 | 2016-10-12 | 深圳华视微电子有限公司 | 一种基于电阻热噪声的真随机数发生器 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918045A (zh) * | 2019-02-28 | 2019-06-21 | 徐文婷 | 一种改进的光量子随机数产生的实现方法 |
CN109918046A (zh) * | 2019-02-28 | 2019-06-21 | 徐文婷 | 一种改进的基于光学的量子随机数产生的装置 |
CN110321103A (zh) * | 2019-06-27 | 2019-10-11 | 北京信息科技大学 | 一种基于物理设备的真随机数生成方法及设备 |
CN110472739A (zh) * | 2019-08-12 | 2019-11-19 | 北京中创为南京量子通信技术有限公司 | 量子随机数的高效后处理方法、装置及量子随机数发生器 |
CN110472739B (zh) * | 2019-08-12 | 2021-08-24 | 北京中创为南京量子通信技术有限公司 | 量子随机数的高效后处理方法、装置及量子随机数发生器 |
CN110569022B (zh) * | 2019-09-09 | 2022-12-27 | 弦海(上海)量子科技有限公司 | 全硅基cmos量子随机数发生装置 |
CN110569022A (zh) * | 2019-09-09 | 2019-12-13 | 弦海(上海)量子科技有限公司 | 全硅基cmos量子随机数发生装置 |
CN110750236A (zh) * | 2019-10-28 | 2020-02-04 | 安徽安匠信息科技有限公司 | 基于cmos图像传感器的量子随机数发生器 |
CN111221503A (zh) * | 2019-12-03 | 2020-06-02 | 核芯互联科技(青岛)有限公司 | 适用物联网环境下的伪随机数发生方法、发生器和传感器 |
US11477021B1 (en) | 2022-03-09 | 2022-10-18 | Tuatara QRNG, LLC | Systems and methods for universal three-dimensional quantum random number generation and encryption |
US11526330B1 (en) | 2022-03-16 | 2022-12-13 | Tuatara QRNG, LLC | Universal interferometer and systems and methods for universal three-dimensional quantum random number generation |
CN117555516A (zh) * | 2023-11-13 | 2024-02-13 | 格物量子技术(合肥)有限公司 | 一种小型化量子随机数产生装置及方法 |
CN117555516B (zh) * | 2023-11-13 | 2024-06-07 | 格物量子技术(合肥)有限公司 | 一种小型化量子随机数产生装置及方法 |
CN117591075A (zh) * | 2024-01-18 | 2024-02-23 | 上海卫星互联网研究院有限公司 | 一种基于星体光相干性的随机数生成方法、装置及设备 |
CN117591075B (zh) * | 2024-01-18 | 2024-04-09 | 上海卫星互联网研究院有限公司 | 一种基于星体光相干性的随机数生成方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109375898B (zh) | 2019-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109375898B (zh) | 基于cmos探测的量子真随机数生成器芯片及方法 | |
JP6908606B2 (ja) | 光学に基づいた量子的な乱数の発生のための方法およびデバイス | |
Gersbach et al. | A time-resolved, low-noise single-photon image sensor fabricated in deep-submicron CMOS technology | |
Field et al. | A 100 fps, time-correlated single-photon-counting-based fluorescence-lifetime imager in 130 nm CMOS | |
US9430192B2 (en) | Method and system for generating random numbers | |
WO2017080860A1 (en) | Method and device for optics based quantum random number generation | |
Gersbach et al. | A parallel 32× 32 time-to-digital converter array fabricated in a 130 nm imaging CMOS technology | |
Acconcia et al. | Note: Fully integrated active quenching circuit achieving 100 MHz count rate with custom technology single photon avalanche diodes | |
Xu et al. | A $16\times 16$ Pixel Post-Processing Free Quantum Random Number Generator Based on SPADs | |
Lupberger et al. | Implementation of the VMM ASIC in the Scalable Readout System | |
Lindner et al. | Column-parallel dynamic TDC reallocation in SPAD sensor module fabricated in 180 nm CMOS for near infrared optical tomography | |
Jiang et al. | High-speed active quench and reset circuit for SPAD in a standard 65 nm CMOS technology | |
Perenzoni et al. | 11.3 A 160× 120-pixel analog-counting single-photon imager with Sub-ns time-gating and self-referenced column-parallel A/D conversion for fluorescence lifetime imaging | |
Che et al. | A random number generator for application in RFID tags | |
Gao et al. | Topmetal-II−: A direct charge sensor for high energy physics and imaging applications | |
US20220391173A1 (en) | Quantum random number generator | |
CN110121041A (zh) | 一种用于cmos动态视觉图像传感器的物理不可克隆函数电路 | |
EP3861431B1 (en) | Device and method for generating random bit sequences | |
Massari et al. | A monolithic SPAD-based random number generator for cryptographic application | |
CN110569022B (zh) | 全硅基cmos量子随机数发生装置 | |
US20200310759A1 (en) | Random number generator and method of fabricating the same | |
CN115048077A (zh) | 一种量子随机数发生器 | |
Dutton et al. | Time of flight imaging and sensing for mobile applications | |
Pacher et al. | Results from CHIPIX-FE0, a small-scale prototype of a new generation pixel readout ASIC in 65 nm CMOS for HL-LHC | |
Gomez et al. | Low‐cost TRNG IPs |
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 |