CN112306456A - 熵生成器及生成增强熵的方法 - Google Patents
熵生成器及生成增强熵的方法 Download PDFInfo
- Publication number
- CN112306456A CN112306456A CN202010610578.4A CN202010610578A CN112306456A CN 112306456 A CN112306456 A CN 112306456A CN 202010610578 A CN202010610578 A CN 202010610578A CN 112306456 A CN112306456 A CN 112306456A
- Authority
- CN
- China
- Prior art keywords
- entropy
- dynamic
- generating
- frequency
- oscillator
- 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
- 238000000034 method Methods 0.000 title claims description 20
- 230000003068 static effect Effects 0.000 claims abstract description 53
- 230000010355 oscillation Effects 0.000 claims description 37
- 238000009825 accumulation Methods 0.000 claims description 9
- 238000005070 sampling Methods 0.000 claims description 5
- 101100339482 Colletotrichum orbiculare (strain 104-T / ATCC 96160 / CBS 514.97 / LARS 414 / MAFF 240422) HOG1 gene Proteins 0.000 description 17
- 238000010586 diagram Methods 0.000 description 13
- 230000001186 cumulative effect Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000002156 mixing Methods 0.000 description 3
- 238000013478 data encryption standard Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Images
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
-
- 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/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/099—Details of the phase-locked loop concerning mainly the controlled oscillator of the loop
- H03L7/0991—Details of the phase-locked loop concerning mainly the controlled oscillator of the loop the oscillator being a digital oscillator, e.g. composed of a fixed oscillator followed by a variable frequency divider
- H03L7/0994—Details of the phase-locked loop concerning mainly the controlled oscillator of the loop the oscillator being a digital oscillator, e.g. composed of a fixed oscillator followed by a variable frequency divider comprising an accumulator
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3271—Cryptographic 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/3278—Cryptographic 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)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Semiconductor Integrated Circuits (AREA)
- Manipulation Of Pulses (AREA)
Abstract
本发明公开了一种熵生成器,包括静态熵源、动态熵源及熵增强引擎。静态熵源用以提供真正随机静态熵。动态熵源用以生成动态熵。熵增强引擎耦接于静态熵源及动态熵源,及用以依据真正随机静态熵及动态熵生成增强熵。
Description
技术领域
本发明关于随机数生成,特别是一种熵生成器及使用真正随机静态熵生成增强熵的方法。
背景技术
随机数被广泛应用于资安及统计抽样等领域。随机数生成系用以生成符合预定分布之独立且不可预测的数字序列。伪随机数生成器(pseudo-random number generator)使用称为种子(seed)的熵(entropy)输入来生成数字序列。种子的随机性不足会导致生成的序列不够随机。因此,选择足够随机的种子对于生成随机序列而言至关重要,其可确保资安应用程序中的数据安全,并可确保统计采样应用程序中之采样结果的正确性。
发明内容
本发明实施例提出一种熵生成器,包括静态熵源、动态熵源及熵增强引擎。静态熵源用以提供真正随机静态熵。动态熵源用以生成动态熵。熵增强引擎耦接于静态熵源及动态熵源,及用以依据真正随机静态熵及动态熵生成增强熵。
本发明实施例另提出一种增强熵生成方法,包括藉由静态熵源提供真正随机静态熵,藉由动态熵源生成动态熵,及藉由熵增强引擎依据真正随机静态熵及动态熵生成增强熵。
附图说明
图1系为本发明实施例中一种熵生成器之方块图。
图2系为图1中之熵生成器的动态熵源之方块图。
图3系为图2中之动态熵源的环形振荡器之方块图。
图4系为图1中之熵生成器的另一种动态熵源之方块图。
图5系为图1中之熵生成器的另一种动态熵源之方块图。
图6系为图1中之熵生成器的另一种动态熵源之方块图。
图7系为图6中之动态熵源的时序图。
图8系为本发明实施例中之一种增强熵生成方法之流程图。
其中,附图标记说明如下:
1:熵生成器
10:静态熵源
12(1)至12(N),12(n):动态熵源
14:熵增强引擎
20:第一振荡器
22:第二振荡器
24,44:结合电路
240:正反器
3:环形振荡器
30:与非门
32(1)至32(M):反相器
440,520,620:互斥或门
50,60:初始熵源
52,62:累积电路
622:多路复用器
624:计数器
626:选择电路
628:更新电路
800:增强熵生成方法
S802至S806:步骤
a至e:资料
CLK:时钟信号
cnt:计数信号
Eac:累积熵
Eac’:新累积熵
Eini:初始熵
Eini(1)至Eini(P):熵位
EN:致能信号
Es:真正随机静态熵
Ed(1)至Ed(N),Ed(n):动态熵
Eout:增强熵
OSC:振荡信号
OSC1:第一振荡信号
OSC2:第二振荡信号
Sel:选择信号
Sr:随机信号
t0至t5:时间
具体实施方式
在本说明书中使用的术语“真正随机”指的是位流(bit stream)之汉明权重(hamming weight)及设备间汉明距离(inter-device hamming distance)实质上为50%,且最小熵(min-entropy)实质上为1。汉明权重用于测量位流中非零符元的期望值,以百分比形式表示。设备间汉明距离测量响应于相同诘问(challenge)而由两个静态熵源生成的两个静态熵位流之间的汉明距离。最小熵是位流之熵值下限,测量位流的不可预测性。
图1系为本发明实施例中一种熵生成器1之方块图。熵生成器1可响应于外部电路的请求而提供增强熵Eout。例如,熵生成器1可在确定性随机位生成器(deterministicrandom bit generator)的请求下提供增强熵Eout,用以作为确定性随机位生成器的”种子(seed)”。增强熵Eout可以是真正随机的,并且可由混合真正随机静态熵Es及多个动态熵Ed(1)至Ed(N)来生成。真正随机静态熵Es可以是真正随机位流,动态熵Ed(1)至Ed(N)可以是也可以不是真正随机位流。由于将真正随机数与任一随机数混合会生成真正随机数,所以无论动态熵Ed(1)到Ed(N)是否为真正随机数,增强熵Eout都可为真正随机数。
熵生成器1可包括静态熵源10、动态熵源12(1)至12(N)及熵增强引擎14。静态熵源10及动态熵源12(1)至12(N)可耦接于熵增强引擎14,N是正整数。例如,对于熵生成器1中的两个动态熵源12(1)和12(2)来说,N为2。虽然本实施例中使用了一个静态熵源10及多个动态熵源12(1)至12(N),但本发明的范围也包括在熵生成器1中采用二或多个静态熵源10及/或一个动态熵源12(1)。
静态熵源10可提供真正随机静态熵Es。动态熵源12(1)至12(N)可分别生成动态熵Ed(1)至Ed(N)。熵增强引擎14依据真正随机静态熵Es及动态熵Ed(1)至Ed(N)生成增强熵Eout。具体而言,熵增强引擎14可按位(bitwise)方式将真正随机静态熵Es及动态熵Ed(1)至Ed(N)混合以生成增强熵Eout。举例而言,真正随机静态熵Es及动态熵Ed(1)至Ed(N)中之每一者的长度可以是16位,且熵增强引擎14可对真正随机静态熵Es及动态熵Ed(1)到Ed(N)的对应位执行互斥或运算,以生成增强熵Eout中之相应位,从而生成16位的增强熵Eout。熵增强引擎14可包括互斥或(XOR)闸,或采用数据加密标准(data encryption standard,DES)算法、高级加密标准(advanced encryption standard,AES)算法或哈希函数来执行混合的处理器。在一些实施例中,熵增强引擎14可还包括伪随机数生成器。伪随机数生成器可以是线性回馈移位寄存器,且可将互斥或门或处理器的输出作为种子以生成增强熵Eout。
静态熵源10可以是物理不可复制函数(physically unclonable function,PUF),非易失性内存或包括多个真正随机静态熵位的固定逻辑电路。例如,物理不可复制函数可以是32位乘32位的内存单元,包括熵位池,且内存单元的每一列、每一行或对角线都可包括真正的随机熵位。熵位池可包括多个熵位,多个熵位具有固定值,且对于采用熵生成器1的每个装置来说各自的多个熵位都不相同。物理不可复制函数可依据预定的选定算法输出真正随机静态熵Es。例如,物理不可复制函数可以预定的行顺序从多行内存单元中选择熵位,以作为真正随机静态熵Es。在一些实施例中,静态熵源10可以为生成真正随机静态熵Es的伪随机数生成器(pseudo random number generator,PRNG)(称为确定性随机位生成器(deterministic random bit generator,DRBG))。
动态熵源12(1)至12(N)可分别实时生成动态熵Ed(1)至Ed(N)。图2系为熵生成器1的动态熵源12(n)之方块图,n是介于1及N之间的整数。动态熵源12(n)可包括第一振荡器20,第二振荡器22及结合电路24。结合电路24可包括正反器240。第一振荡器20和第二振荡器22可耦接于正反器240。
第一振荡器20可生成第一振荡信号OSC1,第一振荡信号OSC1以第一频率振荡。第二振荡器22可生成第二振荡信号OSC2,第二振荡信号OSC2以第二频率振荡。结合电路24可根据第一振荡信号OSC1及第二振荡信号OSC2生成动态熵Ed(n)。第一振荡器20及第二振荡器22可为环形振荡器。
在一些实施例中,正反器240可使用第二振荡信号OSC2对第一振荡信号OSC1进行采样,以生成动态熵Ed(n)。在一些实施例中,第一频率和第二频率可不同,且第一频率及第二频率可为质数的倍数,即第一振荡信号OSC1及第二振荡信号OSC2的电平切换未对齐。例如第一频率可以是3MHz,第二频率可以是5MHz。由于一质数不能被另一质数完全整除,因此正反器240可以依序生成动态熵Ed(n)。在其他实施例中,第一频率及第二频率可实质上相等,例如第一频率及第二频率都可以是3MHz。由于第一振荡器20及第二振荡器22的组件、绕线、电压及工作温度环境可不完全相同,因此第一振荡信号OSC1及第二振荡信号OSC2可持续互相竞争以抢先到达正反器240,从而依序生成随机的逻辑电平“0”或逻辑电平“1”作为动态熵Ed(n)。
第一振荡器20及第二振荡器22可由图3中之环形振荡器3实现。环形振荡器3可包括与非门30及反相器32(1)至32(M),M是偶数。反及(NAND)闸30可耦接于第一反相器32(1),反相器32(1)至32(M)可依顺序彼此耦接,且最后的反相器32(M)可耦接于与非门30。
与非门30可接收致能信号EN以启动环形振荡器3并输出反及输出。当致能信号EN被设置于逻辑电平“0”时,环形振荡器3被停用以停止生成振荡信号OSC。当致能信号EN被设置于逻辑电平“1”时,环形振荡器3被启动以生成振荡信号OSC。振荡信号OSC的频率可由反相器32(1)至32(M)的总延迟来判定。反相器32(1)至32(M)的总数增加会造成总延迟增加,从而降低振荡信号OSC的频率。
图4系为熵生成器1的另一种动态熵源12(n)之方块图。图4及图2中之动态熵源12(n)相似,但图4中之结合电路44还包括互斥或门440。互斥或门440耦接于第一振荡器20、第二振荡器22及正反器240。第一振荡信号OSC1的第一频率及第二振荡信号OSC2的第二频率可不同,且第一频率及第二频率都可为质数的倍数。互斥或门440可对第一振荡信号OSC1及第二振荡信号OSC2执行互斥或运算以生成随机信号Sr。正反器240可使用时钟信号CLK对随机信号Sr进行采样以生成动态熵Ed(n)。时钟信号CLK可由熵生成器1内部或外部的另一振荡器生成。
图5系为熵生成器1的另一种动态熵源12(n)之方块图。动态熵源12(n)可包括初始熵源50及耦接于初始熵源50的累积电路52。
初始熵Eini可以是一位流,所述位流以时间顺序排列的序列,包括熵位Eini(1)至Eini(P),P为正整数,例如P可以是4。初始熵源50可以由图2中的第一振荡器20、第二振荡器22及结合电路24,或图4中的第一振荡器20、第二振荡器22及结合电路44来实现。
累积电路52可将熵位Eini(1)至Eini(P)结合成动态熵Ed(n)中的位。累积电路52可包括耦接于初始熵源50的互斥或门520。互斥或门520可获取预定的时段(例如4个频率周期)中的熵位Eini(1)至Eini(P),且对熵位Eini(1)至Eini(P)执行互斥或运算以生成动态熵Ed(n)中的位。即累积电路52可在每预定时段后生成一位。相较于图2及图4,图5中的动态熵源12(n)可以更增加动态熵Ed(n)的最小熵。
图6系为熵生成器1的另一种动态熵源12(n)之方块图。动态熵源12(n)可包括初始熵源60及耦接于初始熵源60的累积电路62。初始熵源60可生成携带熵位序列的随机信号Sr。累积电路62可结合预定的时段(例如四个频率周期)中的熵位的序列以在动态熵Ed(n)中生成位。
初始熵源60可包括第一振荡器20、第二振荡器22及互斥或门440。第一振荡器20、第二振荡器22及互斥或门440的配置及操作与图4相似,在此不再赘述。累积电路62可包括互斥或门620、多路复用器622、计数器624、选择电路626、正反器240及更新电路628。互斥或门620可耦接于互斥或门440。计数器624可耦接于选择电路626。多路复用器622可耦接于互斥或门440、互斥或门620及选择电路626。正反器240可具有输入数据端D,耦接于多路复用器622;频率端,用以接收时钟信号CLK;及输出数据端Q。更新电路628可耦接于选择电路626及正反器240的输出数据端Q。
互斥或门620可将随机信号Sr中的熵位与累积熵Eac相加以生成新累积熵Eac'。累积熵Eac可包括在预定时段之内的累积熵位。多路复用器622可从选择电路626接收选择信号sel,以从随机信号Sr及新累积熵Eac'中选择一者以生成多路复用器输出信号。在一些实施例中,当选择信号sel被设置为逻辑电平“0”时,多路复用器622可选择新累积熵Eac′作为多路复用器输出信号。当选择信号sel被设置为逻辑电平“1”时,多路复用器622可选择随机信号Sr作为多路复用器输出信号。正反器240可对多路复用器输出信号进行采样以生成累积熵Eac。
更新电路628可在预定时段的第一频率周期依据累积熵Eac来更新动态熵Ed(n)。在一些实施例中,更新电路628可为开关,依据选择信号sel在更新电路628之内部的累积熵Eac和动态熵Ed(n)之间进行选择以生成动态熵Ed(n)。当选择信号sel被设置至逻辑电平“1”时,更新电路628可选择累积熵Eac以更新动态熵Ed(n),并且当选择信号sel被设置为逻辑电平“0”时,更新电路628可维持动态熵Ed(n)中的电压电平而不进行更新。以这种方式,更新电路628可在每预定时间周期更新动态熵Ed(n)。
计数器624可由致能信号EN致能,并且可以是环形计数器,于时钟信号CLK的每个时钟脉冲更新计数信号cnt。计数信号cnt可对预定时段进行计数。选择电路626可依据计数信号cnt生成选择信号sel。在预定时段的第一频率周期时,选择电路626可将选择信号sel设置为逻辑电平“1”,以便重置累积熵Eac及更新动态熵Ed(n)。相较于图2及图4,图6中的动态熵源12(n)可以更增加动态熵Ed(n)的最小熵。
图7系为图6中之动态熵源12(n)的时序图,显示时钟信号CLK、第一振荡信号OSC1、第二振荡信号OSC2、计数信号cnt、选择信号sel及累积熵Eac的波形。
在时间t0,计数信号cnt从数据状态“0”开始,选择信号sel被设置为逻辑电平“1”,以选择随机信号Sr作为多路复用器输出信号。在时间t1,计数信号cnt进入数据状态“1”,随机信号Sr具有第一数据“a”,“a”是第一振荡信号OSC1及第二振荡信号OSC2的值之和。在时间t1,正反器240对多路复用器输出信号中的第一数据“a”进行采样以更新累积熵Eac,然后将选择信号sel设置为逻辑电平“0”以选择新累积熵Eac’作为多路复用器输出信号。在时间t2,计数信号cnt进入数据状态“2”,新累积熵Eac’具有第二资料“a+b”,“b”是第一振荡信号OSC1及第二振荡信号OSC1在时刻t2的值之和,正反器240对多路复用器输出信号中的第二数据“a+b”进行采样以更新累积熵Eac,然后将选择信号sel保持在逻辑电平“0”以选择新累积熵Eac'作为多路复用器输出信号。在时间t3,计数信号cnt进入数据状态“3”,新累积熵Eac'具有第三资料“a+b+c”,“c”是第一振荡信号OSC1及第二振荡信号OSC1在时刻t3的值之和,正反器240对多路复用器输出信号中的第三数据“a+b+c”进行采样以更新累积熵Eac,然后选择信号sel保持在逻辑电平“0”以选择新累积熵Eac'作为多路复用器输出信号。在时间t4,计数信号cnt再循环到数据状态“0”,新累积熵Eac'具有第四资料“a+b+c+d”,“d”是第一振荡信号OSC1及第二振荡信号OSC1在时刻t4的值之和,正反器240对多路复用器输出信号中的第四数据“a+b+c+d”进行采样,以更新累积熵Eac,然后将选择信号sel设置为逻辑电平“1”以选择随机信号Sr作为多路复用器输出信号。在时间t5,计数信号cnt进入数据状态“1”,随机信号Sr具有第五数据“e”,正反器240在多路复用器输出信号中采样第五数据“e”以更新累积熵Eac,然后将选择信号sel设置为逻辑电平“0”,以选择新累积熵Eac'作为多路复用器输出信号。
熵生成器1利用真正随机静态熵Es及动态熵Ed(1)至Ed(N)来提供增强熵Eout的真正随机性及动态随机性,从而为使用熵生成器1的装置提供数据安全性。
图8系为本发明实施例中一种增强熵生成方法800之流程图。增强熵生成方法800包括步骤S802至S806,使用真正随机静态熵Es及动态熵Ed(n)生成增强熵Eout。任何合理的步骤改变或调整都在本公开的范围内。步骤S802至S806说明如下:
步骤S802:静态熵源10提供真正随机静态熵Es;
步骤S804:动态熵源12(n)生成动态熵Ed(n);
步骤S806:熵增强引擎14依据真正随机静态熵Es及动态熵Ed(n)生成增强熵Eout。
方法800的细节已经在前面的段落中解释,在此不再赘述。方法800利用真正随机静态熵Es及动态熵Ed(n)来提供增强熵Eout的真正随机性及动态随机性,从而为安全装置提供数据安全性。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种熵生成器,其特征在于,包括:
一静态熵源,用以提供一真正随机静态熵;
一动态熵源,用以生成一动态熵;及
一熵增强引擎,耦接于所述静态熵源及所述动态熵源,及用以依据所述真正随机静态熵及所述动态熵生成一增强熵。
2.根据权利要求1所述的熵生成器,其特征在于,其中所述真正随机静态熵具有实质上50%的一汉明权重(hamming weight),实质上50%的一汉明距离(hamming distance)及实质上为1的一最小熵(min-entropy)。
3.根据权利要求1所述的熵生成器,其特征在于,其中所述动态熵源包括:
一初始熵源,用以生成以时序排列之一熵位序列;及
一累积电路,耦接于所述初始熵源,用以将以时序排列之所述熵位序列结合为所述动态熵之一位(bit)。
4.根据权利要求3所述的熵生成器,其特征在于,其中:
所述初始熵源包括:
一第一振荡器,用以生成一第一振荡信号,所述第一振荡信号以一第一频率振荡;
一第二振荡器,用以生成一第二振荡信号,所述第二振荡信号以一第二频率振荡,所述第一频率及所述第二频率相异;
一结合电路,耦接于所述第一振荡器及所述第二振荡器,用以根据所述第一振荡信号及所述第二振荡信号依序生成所述熵位序列;及
所述累积电路包括一互斥或门,耦接于所述结合电路,用以在一段预定时间中结合所述熵位序列以生成所述动态熵之所述位。
5.根据权利要求1所述的熵生成器,其特征在于,其中所述动态熵源包括:
一第一振荡器,用以生成一第一振荡信号,所述第一振荡信号以一第一频率振荡;
一第二振荡器,用以生成一第二振荡信号,所述第二振荡信号以一第二频率振荡;及
一结合电路,耦接于所述第一振荡器及所述第二振荡器,用以根据所述第一振荡信号及所述第二振荡信号生成所述动态熵。
6.根据权利要求5所述的熵生成器,其特征在于,其中所述第一频率及所述第二频率相异。
7.根据权利要求5所述的熵生成器,其特征在于,其中所述第一频率及所述第二频率相同。
8.根据权利要求5所述的熵生成器,其特征在于,其中所述结合电路包括一正反器,用以使用所述第二振荡信号取样所述第一振荡信号以生成所述动态熵。
9.根据权利要求1所述的熵生成器,其特征在于,其中所述静态熵源系由一物理不可复制函数(physically unclonable function)生成。
10.一种增强熵生成方法,于一装置内使用,其特征在于,所述增强熵生成方法包括:
藉由一静态熵源提供一真正随机静态熵;
藉由一动态熵源生成一动态熵;及
藉由一熵增强引擎依据所述真正随机静态熵及所述动态熵生成一增强
熵。
11.根据权利要求10所述的方法,其特征在于,其中所述真正随机静态熵具有实质上50%的一汉明权重,实质上50%的一汉明距离及实质上为1的一最小熵。
12.根据权利要求10所述的方法,其特征在于,其中藉由所述动态熵源生成所述动态熵包括:
生成以时序排列之一熵位序列;及
将所述熵位序列结合为所述动态熵之一位。
13.根据权利要求12所述的方法,其特征在于,其中:
生成以时序排列之所述熵位序列包括:
藉由一第一振荡器生成一第一振荡信号,所述第一振荡信号以一第一频率振荡;
藉由一第二振荡器生成一第二振荡信号,所述第二振荡信号以一第二频率振荡,所述第一频率及所述第二频率相异;及
藉由一结合电路根据所述第一振荡信号及所述第二振荡信号依序生成所述熵位序列;及
将所述熵位序列结合为所述动态熵之所述位包括:
藉由一互斥或门结合一段预定时间中之所述熵位序列以生成所述动态熵之所述位。
14.根据权利要求10所述的方法,其特征在于,其中藉由所述动态熵源生成所述动态熵包括:
藉由一第一振荡器生成一第一振荡信号,所述第一振荡信号以一第一频率振荡;
藉由一第二振荡器生成一第二振荡信号,所述第二振荡信号以一第二频率振荡;及
藉由一结合电路根据所述第一振荡信号及所述第二振荡信号生成所述动态熵。
15.根据权利要求14所述的方法,其特征在于,其中所述第一频率及所述第二频率相异。
16.根据权利要求14所述的方法,其特征在于,其中所述第一频率及所述第二频率相同。
17.根据权利要求14所述的方法,其特征在于,其中所述结合电路包括一正反器,及藉由所述结合电路根据所述第一振荡信号及所述第二振荡信号生成所述动态熵包括:
藉由所述正反器使用所述第二振荡信号取样所述第一振荡信号以生成所述动态熵。
18.根据权利要求10所述的方法,其特征在于,其中所述静态熵源系由一物理不可复制函数生成。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962878725P | 2019-07-25 | 2019-07-25 | |
US62/878,725 | 2019-07-25 | ||
US16/858,710 | 2020-04-27 | ||
US16/858,710 US20210026602A1 (en) | 2019-07-25 | 2020-04-27 | Entropy Generator and Method of Generating Enhanced Entropy Using Truly Random Static Entropy |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112306456A true CN112306456A (zh) | 2021-02-02 |
CN112306456B CN112306456B (zh) | 2024-06-25 |
Family
ID=70736742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010610578.4A Active CN112306456B (zh) | 2019-07-25 | 2020-06-29 | 熵生成器及生成增强熵的方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20210026602A1 (zh) |
EP (1) | EP3770750A1 (zh) |
JP (1) | JP2021021937A (zh) |
CN (1) | CN112306456B (zh) |
TW (1) | TWI801742B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377337A (zh) * | 2021-07-07 | 2021-09-10 | 山东方寸微电子科技有限公司 | 一种真随机数发生器及芯片 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20240126509A1 (en) * | 2022-10-11 | 2024-04-18 | Analog Devices International Unlimited Company | Random number generation |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5963104A (en) * | 1996-04-15 | 1999-10-05 | Vlsi Technology, Inc. | Standard cell ring oscillator of a non-deterministic randomizer circuit |
CN105247471A (zh) * | 2013-05-23 | 2016-01-13 | 新思公司 | 用于动态调谐对于随机数生成器的反馈控制的系统和方法 |
US20170048061A1 (en) * | 2015-08-12 | 2017-02-16 | Samsung Electronics Co., Ltd. | Apparatus for generating random number |
US20180314493A1 (en) * | 2016-03-08 | 2018-11-01 | Secturion Systems, Inc. | Systolic Random Number Generator |
CN109478132A (zh) * | 2016-08-19 | 2019-03-15 | 甲骨文国际公司 | 从不同的源收集熵 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4694412A (en) * | 1982-09-22 | 1987-09-15 | Intel Corporation | Random number generator for use in an authenticated read-only memory |
US7047262B2 (en) * | 2002-08-21 | 2006-05-16 | Koninklijke Philips Electronics N.V. | Entropy estimation and decimation for improving the randomness of true random number generation |
EP2081170A1 (en) * | 2006-11-06 | 2009-07-22 | Panasonic Corporation | Information security apparatus |
US8010587B2 (en) * | 2007-09-06 | 2011-08-30 | Intel Corporation | Random number generator |
US8861720B2 (en) * | 2010-07-28 | 2014-10-14 | The Ritsumeikan Trust | Tamper-resistant memory integrated circuit and encryption circuit using same |
US9383969B2 (en) * | 2011-04-05 | 2016-07-05 | Intrinsic Id B.V. | Random number generating system based on memory start-up noise |
KR102198499B1 (ko) * | 2013-12-31 | 2021-01-05 | 주식회사 아이씨티케이 홀딩스 | 디지털 값 처리 장치 및 방법 |
JP6886700B2 (ja) * | 2017-07-11 | 2021-06-16 | 吉川工業アールエフセミコン株式会社 | 乱数生成回路 |
US10917251B2 (en) * | 2018-03-30 | 2021-02-09 | Intel Corporation | Apparatus and method for generating hybrid static/dynamic entropy physically unclonable function |
US11294640B2 (en) * | 2019-03-13 | 2022-04-05 | Ememory Technology Inc. | Random number generator |
-
2020
- 2020-04-27 US US16/858,710 patent/US20210026602A1/en not_active Abandoned
- 2020-05-14 EP EP20174706.0A patent/EP3770750A1/en active Pending
- 2020-06-03 JP JP2020097045A patent/JP2021021937A/ja active Pending
- 2020-06-22 TW TW109121045A patent/TWI801742B/zh active
- 2020-06-29 CN CN202010610578.4A patent/CN112306456B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5963104A (en) * | 1996-04-15 | 1999-10-05 | Vlsi Technology, Inc. | Standard cell ring oscillator of a non-deterministic randomizer circuit |
CN105247471A (zh) * | 2013-05-23 | 2016-01-13 | 新思公司 | 用于动态调谐对于随机数生成器的反馈控制的系统和方法 |
US20170048061A1 (en) * | 2015-08-12 | 2017-02-16 | Samsung Electronics Co., Ltd. | Apparatus for generating random number |
US20180314493A1 (en) * | 2016-03-08 | 2018-11-01 | Secturion Systems, Inc. | Systolic Random Number Generator |
CN109478132A (zh) * | 2016-08-19 | 2019-03-15 | 甲骨文国际公司 | 从不同的源收集熵 |
Non-Patent Citations (1)
Title |
---|
李冰;周岑军;陈帅;吉建华;: "用于SRAM PUFs的伪随机数发生器的FPGA实现", 电子学报, no. 09 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377337A (zh) * | 2021-07-07 | 2021-09-10 | 山东方寸微电子科技有限公司 | 一种真随机数发生器及芯片 |
Also Published As
Publication number | Publication date |
---|---|
CN112306456B (zh) | 2024-06-25 |
TWI801742B (zh) | 2023-05-11 |
US20210026602A1 (en) | 2021-01-28 |
EP3770750A1 (en) | 2021-01-27 |
TW202105919A (zh) | 2021-02-01 |
JP2021021937A (ja) | 2021-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7376687B2 (en) | Pseudo-random number generator | |
EP1782181B1 (en) | Method and apparatus for generating random data | |
CN111694545B (zh) | 随机数产生器 | |
US8410857B2 (en) | Apparatus and method for generating a random bit sequence | |
US9047152B2 (en) | Delay device, method, and random number generator using the same | |
US11876899B2 (en) | Random number generator and method of generating output random number | |
JP2006139756A (ja) | 乱数発生器および乱数を発生する方法 | |
US9612801B2 (en) | Power supply for ring-oscillator based true random number generator and method of generating true random numbers | |
CN112306456B (zh) | 熵生成器及生成增强熵的方法 | |
JP2012186809A (ja) | 乱数を発生させるための装置および方法 | |
KR20140110142A (ko) | 난수 발생기 | |
Yakut et al. | Secure and efficient hybrid random number generator based on sponge constructions for cryptographic applications | |
Lee et al. | Implementing a phase detection ring oscillator PUF on FPGA | |
TWI579763B (zh) | 具有亂數產生模式的儲存電路 | |
US20070150531A1 (en) | Apparatus and method for generating random number using digital logic | |
JP5119417B2 (ja) | 擬似乱数生成装置 | |
US20230333818A1 (en) | Entropy Generator and Method of Generating Enhanced Entropy Using Truly Random Static Entropy | |
US20210224041A1 (en) | Random number generator, random number generating circuit, and random number generating method | |
KR102197744B1 (ko) | 무작위 천이 규칙을 적용한 셀룰러 오토마타 기반 참 난수 생성 장치 | |
Mao et al. | Zero-bias true random number generator using LFSR-based scrambler | |
Taştan et al. | A robust random number generator based on chaotic ring oscillators | |
Anchana et al. | Design of PUF Based Chaotic Random Number Generator | |
Gyorfi et al. | High performance true random number generator based on FPGA block RAMs | |
Fischer et al. | True random number generators in configurable logic devices | |
US20230169167A1 (en) | Semiconductor device and clock control method |
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 |