CN201327636Y - 真随机数发生器 - Google Patents
真随机数发生器 Download PDFInfo
- Publication number
- CN201327636Y CN201327636Y CNU2008201665341U CN200820166534U CN201327636Y CN 201327636 Y CN201327636 Y CN 201327636Y CN U2008201665341 U CNU2008201665341 U CN U2008201665341U CN 200820166534 U CN200820166534 U CN 200820166534U CN 201327636 Y CN201327636 Y CN 201327636Y
- Authority
- CN
- China
- Prior art keywords
- trigger
- group
- random number
- output
- delay chain
- 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.)
- Expired - Fee Related
Links
Landscapes
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
真随机数发生器,属于随机数发生器技术领域。其特征在于包括由一组反相器首尾相连组成的环形振荡器、由一组反相器串联组成的延迟链、由一组触发器组成的触发器组,环形振荡器输出端与延迟链输入端连接,延迟链中各反相器的输出与触发器组中对应触发器输入端连接,触发器组中各触发器均与采样时钟电路连接,触发器组中各触发器的输出连接到异或运算器输入端,异或运算器进行异或运算得到最终的比特输出。上述真随机数发生器,通过延迟链各级输出同时采样以增加输出序列的随机性,产生的数据在进行后处理前就有良好的统计特性,而且随机性与采样频率以没有明显联系。
Description
技术领域
本实用新型属于随机数发生器技术领域,具体为真随机数发生器。
背景技术
虽然消除各种不确定性是大多数学科的目标之,但人们有时仍然离不开对随机性的依赖。从日常生活中的***到学术领域的统计学、密码学,随机数以及随机数发生器(RNG)有着广泛的应用。随机数分为伪随机数和真随机数两种,伪随机数是有一定规律可循的,周期长度为有限长的随机数,伪随机数是可预测的。真随机数一般是由模拟电路构成的真随机数发生器产生,由于在电路中引入了噪声,真随机数没有规律可循,是完全不可预测的。在很多场合下,以数学公式不断的迭代方式工作的伪随机数发生器(PRNG)就可以满足需求。虽然伪随机数可以具有很好地统计特性,但其可以被准确预测的特点使得它无法应用于特定场合,比如信息安全领域,在这些领域中,不仅要求随机数有良好的统计特性,更要求其具有不可预测性,只有这样才可以抵挡住对随机性的攻击。
真随机数发生器之所以能产生不可预测的输出,是因为其利用了物理过程中的各种随机噪声,最常见的三种真随机数产生方法为:直接放大法,放大电路中的电阻热噪声等物理噪声,并通过比较器进行比较后可获得随机数序列;振荡采样法,通过D触发器把两个独立的振荡信号进行数字混合,用低频信号采样高频信号,利用环形振荡器的频率抖动作为随机源,并进行后处理,从而得到随机数序列;离散时间混沌法,利用混沌电路不可预测以及对初始条件敏感的依赖性的本质特点产生随机数。真随机数发生器的性能受以下三部分的性能影响:熵源(Entropy Source),采集手段(Harvesting Mechanism),以及后处理(Postprocessing)。基于模拟电路的结构,如直接放大法真随机数发生器,其熵源的统计分布更加理想,且熵源噪声不随采样周期变化而改变;基于数字电路的结构,如振荡采样法真随机数发生器,其功耗较低,集成度较高,便于在通用可编程平台(如FPGA,CPLD)上进行实现,且易于在SoC中使用。但熵源的统计特性与模拟电路相比不够理想,且采样速率与随机性能之间有着一定的联系。
利用振荡较慢的时钟去采集环形振荡器的输出信号可以得到具有一定随机性的输出序列,其随机性来源于输入信号的相位和频率中存在的物理噪声,但相位噪声方差较小,频率漂移的周期较长,故只有在采样时钟周期较长的情况下,得到的值才有较高的不确定性。这是因为相位噪声和频率漂移的影响只有在经过多个振荡周期的积累后,效果才明显。实验表明,采样时钟频率越接近环形振荡器振荡频率,输出比特的周期性就越明显。振荡采样法对采样周期的要求限制了采集速率。当需要高速率产生随机数时,采样频率与环形振荡器振荡频率可以相比拟,任意两次采样间隔很近,则噪声的影响减小,每两次采样得到的数据相关性增加,最终导致输出值的随机性减小。如何使得高速采样频率下,每个采样时钟都能采集到随机事件,对于设计高速率随机数发生器的工作者来说,是一个值得关注的问题。
实用新型内容
针对现有技术中存在的上述问题,本实用新型的目的在于设计提供一种真随机数发生器的技术方案,通过对延迟链各级输出同时采样来增加输出序列的随机性,产生的数据在进行后处理前就有良好的统计特性,而且随机性与采样频率间没有明显联系。
所述的真随机数发生器,其特征在于包括由一组反相器首尾相连组成的环形振荡器、由一组反相器串联组成的延迟链、由一组触发器组成的触发器组,环形振荡器输出端与延迟链输入端连接,延迟链中各反相器的输出与触发器组中对应触发器输入端连接,触发器组中各触发器均与采样时钟电路连接,触发器组中各触发器的输出连接到异或运算器输入端,异或运算器进行异或运算得到最终的比特输出。
所述的真随机数发生器,其特征在于所述的环形振荡器由反相器R1、R2、R3……R2n+1(n=1,2,3……)首尾相连构成。
所述的真随机数发生器,其特征在于所述的延迟链由反相器O1、O2、O3、O4、O5、O6、O7、O8………On(n=1,2,3……)串联组成。
所述的真随机数发生器,其特征在于所述的触发器组包括均与采样时钟电路连接的触发器D1、D2、D3、D4、D5、D6、D7、D8……Dn(n=1,2,3……),触发器D1、D2、D3、D4、D5、D6、D7、D8……Dn(n=1,2,3……)的输出分别为Q1、Q2、Q3、Q4、Q5、Q6、Q7、Q8……Qn(n=1,2,3……)。
上述真随机数发生器,其电路采用纯数字形式,便于在通用可编程平台(如FPGA,CPLD)上进行实现,且易于在SoC中使用。通过延迟链各级输出同时采样以增加输出序列的随机性,产生的数据在进行后处理前就有良好的统计特性,而且随机性与采样频率以没有明显联系。该真随机数发生器规模较小,数据产生速率较高。
附图说明
图1为本实用新型的结构示意图;
图中:1-环形振荡器、2-延迟链、3-采样时钟电路、4-触发器组、5-异或运算器。
具体实施方式
以下结合说明书附图对本实用新型作进一步说明。
如图所示,该真随机数发生器包括由一组反相器首尾相连组成的环形振荡器1、由一组反相器串联组成的延迟链2、由一组触发器组成的触发器组4,环形振荡器1输出端与延迟链2输入端连接,延迟链2中各反相器的输出与触发器组4中对应触发器输入端连接,触发器组4中各触发器均与采样时钟电路3连接,触发器组4中各触发器的输出连接到异或运算器5输入端,异或运算器5进行异或运算得到最终的比特输出。所述的环形振荡器1由反相器R1、R2、R3……R2n+1(n=1,2,3……)首尾相连构成,反相器个数为奇数即可。所述的延迟链2由反相器O1、O2、O3、O4、O5、O6、O7、O8……On(n=1,2,3……)串联组成,延迟链2的长度不是固定的,但是每一级结构相同,延迟链2越长,随机效果越好。所述的触发器组4包括均与采样时钟电路(3)连接的触发器D1、D2、D3、D4、D5、D6、D7、D8……Dn(n=1,2,3……),触发器D1、D2、D3、D4、D5、D6、D7、D8……Dn(n=1,2,3……)的输出分别为Q1、Q2、Q3、Q4、Q5、Q6、Q7、Q8……Qn(n=1,2,3……)。在图1中反相器R3的输出直接送入反相器O1的输入端,延迟链2各级输出分别用触发器组4的各触发器进行采样。反相器O1的输出送入触发器D1输入端进行采样,反相器O2的输出送入触发器D2输入端进行采样,反相器O3的输出送入触发器D3输入端进行采样,如此类推。所有触发器使用同一个时钟信号C0。
工作原理如下:在数字电路中,当触发器的数据输入信号边沿与采样时钟边沿重合或相隔很近时,触发器输出值具有不确定性,本文简称该现象为“边沿碰撞”。对于单独的触发器,每次采样时刻都发生边沿碰撞是很难的。若采用多个触发器对多点信号同时进行采样,把各个输出异或起来,只要有一个触发器发生边沿碰撞,最终的输出就具有不确定性。在这种结构下,便可以产生每次采样都发生边沿碰撞的效果。无论采样频率的高低,发生边沿碰撞时的输出值都具有很好的随机性。
(1)如图1所示,振荡器输出经过多极反相器延迟,在每个反相器输出端可得到不同延迟的输出信号,将这些信号分别输入触发器同时进行采样,并把各个输出异或起来,得到最终的比特输出。
(2).反相器延迟链噪声的定性分析
假设反相器的延迟噪声ζ服从高斯分布,则第i级反相器的延迟为di=Tdi+ζi,均值为Tdi,方差为σi。设Q0处的发生跳变的时刻为t0,那么在On处,跳变的时刻为 假设每个反相器的延迟的均值相同,噪声相互独立且服从同一分布,所以Tdi=Td0=Td,σi=σ0(i=1,2,...n),则t0=t0+n·Td+n·ζ,均值为t0+n·Td,方差为σ=n·σ0
(3).边沿碰撞概率定性分析
假设一个边沿碰撞的宽度为ε,即只要采样时钟跳变边沿与输入信号跳变边沿的时间差小于ε,即可认为边沿碰撞现象发生。对于以反相器延迟链第n级输出On为输入的触发器,若采样发生在t时刻,则发生边沿碰撞的充要条件为数据信号跳变边沿出现在(t-ε/2,t+ε/2)的时间段内。
比特输出值不可预测的概率P(unpredictable)=1-P(predictable),其中P(predictable)为比特输出值可预测的概率,即所有触发器都不发生边沿碰撞的概率。根据上文分析,第n级反相器输出跳变沿时刻的方差为n·σ0,那么对于确定的采样时刻t,边沿碰撞发生的概率 则 m为延时链长度。
随着延时链长度m的增大,P(n)增大,P(predictable)减小,最终导致P(unpredictable)增加。可见,随着反相器延迟链级数的增加,输出比特值为不可预测的概率上升。
Claims (4)
1、真随机数发生器,其特征在于包括由一组反相器首尾相连组成的环形振荡器(1)、由一组反相器串联组成的延迟链(2)、由一组触发器组成的触发器组(4),环形振荡器(1)输出端与延迟链(2)输入端连接,延迟链(2)中各反相器的输出与触发器组(4)中对应触发器输入端连接,触发器组(4)中各触发器均与采样时钟电路(3)连接,触发器组(4)中各触发器的输出连接到异或运算器(5)输入端,异或运算器(5)进行异或运算得到最终的比特输出。
2、如权利要求1所述的真随机数发生器,其特征在于所述的环形振荡器(1)由反相器R1、R2、R3……R2n+1首尾相连构成,其中n为自然数。
3、如权利要求1所述的真随机数发生器,其特征在于所述的延迟链(2)由反相器O1、O2、O3、O4、O5、O6、O7、O8……On串联组成,其中n为自然数。
4、如权利要求1所述的真随机数发生器,其特征在于所述的触发器组(4)包括均与采样时钟电路(3)连接的触发器D1、D2、D3、D4、D5、D6、D7、D8……Dn,触发器D1、D2、D3、D4、D5、D6、D7、D8……Dn的输出分别为Q1、Q2、Q3、Q4、Q5、Q6、Q7、Q8……Qn,其中n为自然数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNU2008201665341U CN201327636Y (zh) | 2008-10-27 | 2008-10-27 | 真随机数发生器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNU2008201665341U CN201327636Y (zh) | 2008-10-27 | 2008-10-27 | 真随机数发生器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN201327636Y true CN201327636Y (zh) | 2009-10-14 |
Family
ID=41179603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNU2008201665341U Expired - Fee Related CN201327636Y (zh) | 2008-10-27 | 2008-10-27 | 真随机数发生器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN201327636Y (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375722A (zh) * | 2010-08-09 | 2012-03-14 | 中国科学技术大学 | 一种真随机数生成方法及发生器 |
CN103324462A (zh) * | 2013-05-24 | 2013-09-25 | 深圳职业技术学院 | 真随机数发生*** |
CN103513955A (zh) * | 2012-06-20 | 2014-01-15 | 罗伯特·博世有限公司 | 用于产生随机数的方法 |
CN104461452A (zh) * | 2013-09-17 | 2015-03-25 | 航天信息股份有限公司 | 片上***中生成真随机数的方法及装置 |
CN110045947A (zh) * | 2019-04-22 | 2019-07-23 | 湖南国科微电子股份有限公司 | 一种随机数发生单元与装置 |
CN111198671A (zh) * | 2018-11-20 | 2020-05-26 | 三星电子株式会社 | 随机数发生器 |
CN111258548A (zh) * | 2018-11-30 | 2020-06-09 | 紫光同芯微电子有限公司 | 一种真随机数发生器 |
CN111900958A (zh) * | 2020-06-19 | 2020-11-06 | 上海美仁半导体有限公司 | 随机数产生电路、芯片及家用电器 |
-
2008
- 2008-10-27 CN CNU2008201665341U patent/CN201327636Y/zh not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375722A (zh) * | 2010-08-09 | 2012-03-14 | 中国科学技术大学 | 一种真随机数生成方法及发生器 |
CN103513955A (zh) * | 2012-06-20 | 2014-01-15 | 罗伯特·博世有限公司 | 用于产生随机数的方法 |
CN103324462A (zh) * | 2013-05-24 | 2013-09-25 | 深圳职业技术学院 | 真随机数发生*** |
CN104461452A (zh) * | 2013-09-17 | 2015-03-25 | 航天信息股份有限公司 | 片上***中生成真随机数的方法及装置 |
CN111198671A (zh) * | 2018-11-20 | 2020-05-26 | 三星电子株式会社 | 随机数发生器 |
CN111258548A (zh) * | 2018-11-30 | 2020-06-09 | 紫光同芯微电子有限公司 | 一种真随机数发生器 |
CN110045947A (zh) * | 2019-04-22 | 2019-07-23 | 湖南国科微电子股份有限公司 | 一种随机数发生单元与装置 |
CN111900958A (zh) * | 2020-06-19 | 2020-11-06 | 上海美仁半导体有限公司 | 随机数产生电路、芯片及家用电器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN201327636Y (zh) | 真随机数发生器 | |
CN102916687B (zh) | 基于cmos工艺的三值时钟发生器 | |
CN101620523B (zh) | 一种随机数发生器电路 | |
CN107943451B (zh) | 基于自治布尔网络结构的真随机数发生器 | |
CN103150138B (zh) | 一种基于数字电路的真随机数发生器 | |
CN108345446A (zh) | 一种高速随机数产生方法及装置 | |
CN101788899B (zh) | 一种低功耗数字真随机源 | |
CN102968290B (zh) | 一种异构轻量级的真随机数产生器 | |
CN101515228A (zh) | 一种真随机数发生器 | |
CN105138307B (zh) | 一种基于相位噪声的可集成真随机数产生方法及装置 | |
CN106293616A (zh) | 基于时延反馈振荡器的真随机数生成器 | |
Mei et al. | A highly flexible lightweight and high speed true random number generator on FPGA | |
CN101882062A (zh) | 真随机比特流发生器 | |
CN104598198A (zh) | 一种真随机数发生器 | |
CN104133658A (zh) | 一种片内真随机数生成器 | |
CN109783060A (zh) | 基于电流饥饿型环形振荡器的高速真随机数发生器 | |
Cao et al. | An energy-efficient true random number generator based on current starved ring oscillators | |
CN205015881U (zh) | 一种基于相位噪声的可集成真随机数产生装置 | |
CN104182203A (zh) | 真随机数的产生方法和装置 | |
CN203191961U (zh) | 一种基于数字电路的真随机数发生器 | |
CN102662627B (zh) | 一种基于混沌双螺旋的混合随机序列发生器 | |
CN106201436B (zh) | 基于双耦合斐波那契振荡环的真随机数生成器 | |
CN202995706U (zh) | 一种反馈型高强度真随机数发生器 | |
CN111078191A (zh) | 一种基于fpga硬件实现的伪随机数的生成方法 | |
CN103716149A (zh) | 基于混沌网络的高速随机数产生*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091014 Termination date: 20101027 |