CN117579268A - 一种基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块 - Google Patents
一种基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块 Download PDFInfo
- Publication number
- CN117579268A CN117579268A CN202311596114.2A CN202311596114A CN117579268A CN 117579268 A CN117579268 A CN 117579268A CN 202311596114 A CN202311596114 A CN 202311596114A CN 117579268 A CN117579268 A CN 117579268A
- Authority
- CN
- China
- Prior art keywords
- module
- entropy source
- output
- entropy
- post
- 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
- 238000012805 post-processing Methods 0.000 claims abstract description 55
- 238000005259 measurement Methods 0.000 claims abstract description 36
- 238000007689 inspection Methods 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims description 21
- 238000009826 distribution Methods 0.000 claims description 20
- 238000012360 testing method Methods 0.000 claims description 19
- 238000003860 storage Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 13
- 230000008859 change Effects 0.000 claims description 7
- 238000009825 accumulation Methods 0.000 claims description 4
- 230000009471 action Effects 0.000 claims description 4
- 230000003631 expected effect Effects 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 230000005856 abnormality Effects 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 abstract description 6
- 238000013461 design Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000003491 array Methods 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 101100003180 Colletotrichum lindemuthianum ATG1 gene Proteins 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 101100328957 Caenorhabditis elegans clk-1 gene Proteins 0.000 description 1
- 101100269850 Caenorhabditis elegans mask-1 gene Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Classifications
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Semiconductor Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明公开了一种基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,该模块具有M个相同的基本单元和一个TRNG后处理模块,每个基本单元包含熵源阵列模块、偏置衡量模块、输出检验模块、PUF后处理模块与状态控制模块。每个基本单元会输出一组未经处理的随机数比特流,M组未经处理的随机数比特流将分别输入TRNG后处理模块处理。本发明利用亚稳态熵源输出随机性同时受到器件制造过程中的失配和器件工作环境中的噪声影响这一特性,在熵源阵列中进行选择,保证每个熵源都能够产生输出,大幅度提高了电路的利用效率;此外,亚稳态结构熵源的使用也使一体化模块具有低功耗、高电路复用率以及高吞吐率的特点。
Description
技术领域
本发明属于硬件安全领域,具体设计一种基于熵源选择原理的结合真随机数发生器与物理不可克隆函数的一体化模块。
背景技术
PPMA(Privacy Preserving Mutual Authentication,保护隐私的相互认证)是近年来提出的一种允许重复使用激励响应对的同时能够显著降低隐私信息泄露可能性的一种相互认证方案,其工作原理如图1所示:
在图1所示的方案中,服务器将预先存储在其内部的PUF(Physically UnclonableFunction,物理不可克隆函数)的序列信息通过其内部的TRNG(True Random NumberGenerator,真随机数发生器)生成的随机数序列R1加密后传输给设备,设备收到加密信息后通过PUF对收到的序列进行解密,将R1进行还原,并利用其内部的TRNG生成的随机数序列R2生成两组加密信息:其中一组是通过R2对PUF加密后产生的加密信息,另一组是通过R1与R2二者共同对PUF加密后产生的加密信息。这两组加密信息从设备发送回服务器,服务器接收到信息之后通过其内部存储的PUF对两组加密信息进行解密,得到随机数序列R2以及R1+R2,将二者进行减运算后的结果与TRNG1生成的随机数序列R1进行对比,如果二者结果相同则认证成功,否则认证失败。
与传统的相互认证相比,PPMA可以增加攻击者获取明文的敏感信息的难度,进而降低信息泄露的风险。真随机数发生器的存在能够增加CRP(Challenge Response Pair,激励响应对)的复用次数,降低产生CRP的面积成本,提高系统对于重放攻击的抵抗能力,是一种可靠的认证方案。
在IoT(Internet of Things,万物互联)应用场景中,PPMA方案的实现要求PUF与TRNG同时存在,这对于PUF与TRNG设计的面积,功耗,输出速率等都提出了较高的要求,现有的TRNG与PUF的设计常常是分立的,存在面积大、电路复用度低、资源开销大等缺点,在TRNG与PUF的一体化设计领域目前仍然存在空缺。
亚稳态熵源是一种基于电路亚稳态的电路结构,其输出由电路制造过程中的失配与电路中的噪声共同决定,当电路制造过程中的失配占据主导作用时,熵源输出相对恒定,熵源表现出PUF的性质;当电路制造过程中的失配比较理想乃至于可以忽略不计时,熵源输出具有随机性,熵源将表现出TRNG的性质。在熵源阵列中通过一定的筛选方法,可以对具有随机性和具有稳定性的熵源进行筛选,利用二者分别产生PUF与TRNG输出,大大提高电路的资源利用效率,实现PUF+TRNG一体化功能。
发明内容
为解决现有技术中的问题,填补该领域的技术空缺,本发明提出了一种基于熵源选择原理的TRNG+PUF一体化模块。本发明利用亚稳态熵源输出随机性同时受到器件制造过程中的失配和器件工作环境中的噪声影响这一特性,结合熵源阵列,偏置衡量,输出检验和后处理等多个子模块,实现具有低功耗,高吞吐率特征的TRNG+PUF一体化模块。
本发明的技术方案如下:
本发明提供了一种基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,所述一体化模块包括M个相同的基本单元和一个TRNG后处理模块,M≥2;每个基本单元包括:
可调节结构的熵源阵列模块,其由N个可调节结构的亚稳态熵源组成,N≥20;所述亚稳态熵源包含有可调节交叉耦合反相器阵列,所述可调节交叉耦合反相器阵列用于TRNG和PUF比特流的产生,以及用于调节对应熵源的偏置分布;
偏置衡量模块,在一体化模块处于偏置衡量工作状态时,对各个亚稳态熵源的输出随机性依次进行统计,并进行衡量与比较,选择出适用于生成PUF和适用于生成TRNG序列的熵源;
输出检验模块,在一体化模块处于输出检验工作状态时,判断偏置衡量模块选择的熵源的输出偏置是否在合理的范围内;
状态控制模块,对所在基本单元的工作状态进行控制,并在输出检验模块检测到异常时接收由输出检验模块发送的失败信号,再发送控制信号对熵源阵列模块的配置进行调整进而改变熵源阵列的失配情况;
PUF后处理模块,对其所在基本单元内的全体熵源的比特流输出进行处理,降低PUF输出的误码率;
所述TRNG后处理模块采用迭代冯诺依曼提取器结构,每个所述基本单元会选择一个偏置情况最为理想的熵源并由选择的熵源输出一组未经处理的随机数比特流,M组未经处理的随机数比特流将分别作为输入提供给TRNG后处理模块中第一层的M个冯诺依曼提取器,供迭代冯诺依曼提取器进行后处理;
整个一体化模块以M个PUF后处理模块的处理结果作为PUF输出,以TRNG后处理模块的处理结果作为真随机数输出。
根据本发明的优选方案,每个所述的可调节结构的亚稳态熵源均包含一个上拉网络、一个下拉网络和一个可调节交叉耦合反相器阵列;
所述上拉网络与下拉网络分别控制可调节交叉耦合反相器阵列的复位状态与工作状态,使熵源进行输出;可调节交叉耦合反相器阵列由两个位宽为n的控制信号控制其内部的n个可调节交叉耦合反相器的通断,可调节交叉耦合反相器阵列有2^n种配置方案,对应地,熵源阵列模块会具有2^n种偏置分布。
根据本发明的优选方案,所述可调节交叉耦合反相器内部由两个加入了通断控制晶体管的子反相器通过互相用输入连接另一个子反相器的输出的方式组合而成,每个子反相器包含两个通断控制晶体管和复位控制晶体管,通断控制晶体管接在复位控制晶体管和输出中间,负责控制可调节交叉耦合反相器的通断;复位控制晶体管接在供电端/地与通断控制晶体管中间,负责行使子反相器的功能,由于每个子反相器中的NMOS复位控制晶体管的栅极连接着另一个子反相器的PMOS复位控制晶体管的漏极,而每个子反相器中的PMOS复位控制晶体管栅极也连接着另一个子反相器的NMOS复位控制晶体管的漏极,因此在复位过程中可以保证两个子反相器对称节点上的电压维持在接近的水平,降低电荷积累对输出相关性的影响;
可调节交叉耦合反相器阵列内部含有n个可调节交叉耦合反相器,通过调整长度为n位的控制信号的电平可以调整每个交叉耦合反相器接入上拉网络和下拉网络的情况,改变熵源阵列的偏置分布。
根据本发明的优选方案,所述偏置衡量模块包含一个计数器、一个比较器和一个结果存储模块;
所述计数器对所在基本单元内的所有亚稳态熵源输出的原始比特流中“1”的数量进行计数,并在每次计数结束后将计数结果传输给比较器,比较器将统计结果与结果存储模块中已经存储的先前选择出的最为随机的熵源的偏置结果进行比较,并在当前的熵源的输出的比特流中的“0”与“1”的分布更加均匀的时候以当前的熵源的偏置数据与地址去替换掉结果存储模块中存储的偏置数据和地址;
结果存储模块中存储的信息将会在输出检验过程中提供给熵源阵列模块,以结果存储模块中存储的偏置情况最为理想的熵源的输出交由TRNG后处理模块进行后处理。
根据本发明的优选方案,所述输出检验模块包括错误信号判断模块,并与偏置衡量模块共用计数器,
在输出检验阶段,所述计数器用来统计输出,检验输出序列中“0”与“1”的分布比例是否满足让TRNG后处理模块发挥预期效果的条件,并在检验结果为不满足时,把检验结果发送给错误信号判断模块;
所述错误信号判断模块接收到信息,调节熵源阵列模块内部的熵源结构,并令输出检验模块停止工作,让偏置衡量模块重新开始工作,所述一体化模块回到偏置衡量工作状态;
当熵源阵列模块经偏置衡量后选择出的最为随机的熵源的输出多次无法通过输出检验时,输出检验模块会通过错误判断模块将一个报警信号传递给状态控制模块,由状态控制模块完成对熵源阵列模块内部的熵源结构的调整。
根据本发明的优选方案,所述计数器的工作状态受状态控制模块中的输出状态控制信号控制,当输出状态控制信号取值为低电平时,一体化模块为偏置衡量工作状态,此时计数器的计数周期较短;当输出状态控制信号取值为高电平时,一体化模块为输出检验工作状态,此时计数器修改为一个较长的计数周期以确保检验结果可信,且计数位宽也会发生变化。
根据本发明的优选方案,所述检验输出序列中“0”与“1”的分布比例是否满足让TRNG后处理模块发挥预期效果的条件,具体为:
当计数器在计数的时间段内,被测试的比特流中“1”出现的比例在25%-75%之间,说明对应待测熵源的随机性足够理想能够传递给真随机数的后处理模块进行后处理,反之说明被选择的熵源的输出结果的随机性并不理想,此时计数器把检验结果传递到错误信号判断模块。
根据本发明的优选方案,所述错误信号判断模块接收到信息,调节熵源阵列模块内部的熵源结构,具体为:
错误信号判断模块收到信息之后发送一个代表失败的失败信号给状态控制模块,此后控制可调节交叉耦合反相器阵列通断的控制信号将会发生改变,熵源阵列模块内的熵源结构在控制信号作用下进行调整,熵源阵列模块中各个熵源的偏置情况得到更新,重新进入偏置衡量工作状态,选择出新的随机性最强的熵源并再次进行输出检验。
根据本发明的优选方案,所述PUF后处理模块采用空间主体投票后处理方法,即在一体化模块经过偏置衡量和输出检验挑选出随机性最为良好的熵源之后,全部的熵源就会作为稳定的熵源参与PUF的生成,考虑到温度,电压以及时钟频率的变化均有可能对PUF的误码率造成一定的影响,在熵源阵列模块输出未经处理的PUF比特流后使用一个空间主体投票模块对未经处理的PUF输出进行后处理,降低输出的PUF序列的误码率。
根据本发明的优选方案,所述状态控制模块包括熵源配置调整逻辑模块、熵源输出选择模块和工作状态控制模块,
所述熵源配置调整逻辑模块负责在接收到报警信号时对熵源阵列的配置进行调整,进而改变熵源阵列的失配情况;
熵源输出选择模块主要包含了能够在接收到偏置衡量模块中结果存储模块传递的最随机熵源信息后能够将地址信息译码得到使能信号组的地址译码模块以及能够将偏置衡量模块选择的熵源的输出传递给TRNG后处理模块的选通逻辑模块;工作状态控制模块用于控制一体化模块的工作状态,所述工作状态包括偏置衡量状态、输出检验状态、熵源阵列配置修改状态和后处理状态。
与现有技术相比,本发明具有的有益效果有:
1、本发明基于亚稳态熵源输出随机性受到噪声和失配影响的特征,使用计数器对熵源阵列中每个熵源的随机性进行比较,选择随机性最强的熵源作为TRNG输出,所有熵源共同作为PUF输出,克服了现有技术手段中分立式TRNG与PUF的设计中存在不参与输出过程的无效熵源的问题,大幅度提高了电路的利用效率。
2、本发明使用可调节结构的熵源阵列设计,通过可调节交叉耦合反相器设计克服了当熵源阵列内不存在具有良好随机性的熵源时无法输出高质量随机数的技术问题,并取得了能够通过改变可调节交叉耦合反相器的配置进而改变熵源阵列偏置分布的效果。
3、本发明使用时分复用思想对偏置衡量模块进行设计,相对于传统的每个熵源对应一个计数器的设计方案,本发明使用多个熵源对应同一个计数器的设计方案,达到了节约电路面积,降低硬件资源开销的效果。
附图说明
图1为PPMA的工作原理示意图;
图2为本发明TRNG+PUF一体化模块示意图;
图3为亚稳态熵源结构与交叉耦合反相器接口示意图;
图4为可调节交叉耦合反相器结构示意图;
图5为迭代冯诺依曼处理器结构示意图;
图6为基于SMV的PUF工作原理示意图。
具体实施方式
下面结合具体实施方式对本发明做进一步阐述和说明。所述实施例仅是本公开内容的示范且不圈定限制范围。本发明中各个实施方式的技术特征在没有相互冲突的前提下,均可进行相应组合。
如图2-6所示,本发明实施例提供了一款基于熵源选择原理的TRNG+PUF一体化模块,该设计利用亚稳态熵源的特殊输出原理实现一体化输出功能,本设计一共包含四组基本单元和一个TRNG后处理模块,每个基本单元内部的结构是相同的,均包含一个具有可调节结构的熵源阵列模块、一个偏置衡量模块、一个输出检验模块、一个状态控制模块和一个PUF后处理模块,每个基本单元会输出一组未经处理的随机数比特流,四组未经处理的随机数比特流将分别作为四组输入提供给迭代冯诺依曼提取器结构(TRNG后处理模块)中第一层的四个冯诺依曼提取器,供迭代冯诺依曼提取器进行后处理。
如图2所示,为TRNG+PUF一体化模块的示意图,各个模块的具体功能和工作原理如下:
可调节结构的熵源阵列模块由N个可以调节结构的亚稳态熵源组成,亚稳态熵源的结构如图3所示,每个熵源包含一个上拉网络(由两个上拉PMOS晶体管PM1和PM2组成),一个下拉网络(即NMOS晶体管NM1),三个缓冲器I1,I2和I3以及一组由n个可调节交叉耦合反相器组成的可调节反相器阵列,上拉PMOS晶体管的源端连接供电电压VDD,漏端各自分别连接可调节交叉耦合反相器阵列的输出a0和b0,下拉NMOS晶体管的源端接地,漏端连接可调节交叉耦合反相器阵列中每一个可调节交叉耦合反相器的GND0接口,三个缓冲器I1,I2和I3分别负责对a0与b0的波形进行缓冲以及对clk1的波形进行延迟。
可调节交叉耦合反相器阵列中每个可调节交叉耦合反相器的接口如图3右下角所示,VDD是可调节交叉耦合反相器的供电电压,GND0是可调节交叉耦合反相器接NM1的端口,a0与b0是可调节交叉耦合反相器阵列的输出,而pconf<m>和nconf<m>是对应于第m个可调节交叉耦合反相器invpairm的PMOS晶体管选通控制信号和NMOS晶体管选通控制信号,由于n个可调节交叉耦合反相器的通断需要长度为n的控制信号进行控制,而为了保证可调节交叉耦合反相器能够产生用于生成真随机数和物理不可克隆函数的比特流,可调节交叉耦合反相器阵列中不能够出现所有可调节交叉耦合反相器全部断开的情况,因此可调节交叉耦合反相器阵列具有2n种配置方案,其中有2n-1种配置方案有效;对应着熵源阵列具有2n种偏置分布,其中有2n-1种偏置分布有效,可调节交叉耦合反相器阵列为偏置衡量模块提供了更多种类的偏置分布;来自状态控制模块的使能信号en与熵源时钟clk进行与运算得到作用于上拉晶体管和下拉晶体管的时钟信号clk1,当使能信号位于低电平的时候,熵源不工作;而当使能信号位于高电平的时候,clk1的逻辑值与clk保持一致,此时熵源开始工作:当输入时钟clk处于低电平时,熵源进行复位,PMOS管导通,a0与b0两点的电压被上拉到VDD;当输入时钟clk从低电平转换为高电平,熵源开始进入亚稳态,PMOS管断开,NMOS管导通,a与b两点的电压向低电平下降,由于电路中噪声的存在,两点下降的速度存在细微的不一致,先到达某一阈值电压的点会在交叉耦合反相器结构的作用下迅速下降到低电平,而另一个点会上升到高电平,在不考虑失配因素或失配因素较弱的情况下,噪声是影响输出随机性的主要因素,由于噪声的随机性,电路输出也具有随机性;在实际电路中,失配容易取代噪声成为影响输出随机性的主要因素,此时先下降到阈值的输出端口是固定的,因此输出也是恒定的,此时的熵源虽然难以表现出随机性输出,但是良好的稳定性使其能够作为PUF源发挥作用。
在真随机数发生器的工作过程中,需要尽可能使输出表现出较为良好的随机性,尽管本设计采用了缓冲器I3确保时钟边沿到达NMOS晶体管的速度比到达PMOS晶体管的速度更慢这一方案,消除了时钟边沿到达PMOS管栅极的先后顺序不同而引起的失配对熵源输出随机性的影响,但是在实际电路制造过程中,例如阈值电压失配与晶体管宽长比失配等失配因素对真随机数发生器输出的随机性的影响依旧无法避免,因此需要一定的调节结构调整熵源输出的随机性。
为此,本实施例提出了一种可调节交叉耦合反相器结构以配合后续的输出检验电路实现改善熵源输出随机性的功能,可调节交叉耦合反相器内部由两个加入了通断控制晶体管的子反相器通过互相用输入连接另一个子反相器的输出的方式组合而成,每个子反相器包含两个通断控制晶体管和复位控制晶体管,通断控制晶体管接在复位控制晶体管和输出中间,负责控制可调节交叉耦合反相器的通断;复位控制晶体管接在供电端/地与通断控制晶体管中间,负责行使子反相器的功能,由于每个子反相器中的NMOS复位控制晶体管的栅极连接着另一个子反相器的PMOS复位控制晶体管的漏极,而每个子反相器中的PMOS复位控制晶体管栅极也连接着另一个子反相器的NMOS复位控制晶体管的漏极,因此在复位过程中可以保证两个子反相器对称节点上的电压维持在接近的水平,降低电荷积累对输出相关性的影响。
具体的,如图4所示为可调节交叉耦合反相器结构的一个具体实施例,PMOS晶体管选通信号pconf连接着两个P管的栅极,NMOS晶体管选通信号nconf连接着两个N管的栅极,我们将这四个晶体管称为通断控制晶体管,通过给具有n个可调节交叉耦合反相器的熵源输入两组各自包含n位选通信号pconf<n-1:0>与nconf<n-1:0>,可以控制每个可调节交叉耦合反相器的通断,进而调节整个熵源阵列的偏置分布情况;剩余的四个晶体管被称为复位控制晶体管,当输入熵源阵列模块的时钟信号处于低电平的时候,a0与b0的电压被向上拉起,而此刻可调节交叉耦合反相器与GND不相接通,而由于每个复位控制PMOS晶体管的栅极都连接着对侧复位控制NMOS晶体管的漏极,每个复位控制NMOS晶体管的栅极都连接着对侧复位控制PMOS晶体管的漏极,因此在复位过程中能够保证net1的电压与net3的电压相等,而net2的电压与net4的电压相等,在后续生成随机数的过程中,这两组电压相等关系可以避免电压初态的不同引起的电荷累积对熵源输出的随机数的相关性造成影响。在保证电路对称的情况下,同种衬底掺杂类型的复位控制晶体管和通断控制晶体管(即p管与p管,n管与n管)之间的位置可以交换,不影响熵源的功能。
偏置衡量模块包含一个计数器,一个比较器和一个结果存储模块,计数器具有双向计数功能,可以对原始比特流中“1”的数量进行计数,计数结果越接近原始比特流长度的一半,就表明了对应熵源的随机性越好。计数器在完成对某个特定熵源的偏置情况的统计之后,会将统计结果与结果存储模块中已经存储的此前选择出的最为随机的熵源的偏置结果进行比较,并在当前的熵源的输出的比特流中的0与1的分布更加均匀的时候以当前的熵源的偏置数据与地址去替换掉结果存储模块中存储的偏置数据和地址。在后续的输出检验过程中,结果存储模块中存储的信息将会被提供给熵源模块,并决定熵源阵列具体以哪一个熵源的输出作为最终的输出。
输出检验模块负责判断在偏置衡量阶段结束时的熵源输出偏置是否在合理的范围内,该模块主要包含了一个错误信号判断模块,且输出检验模块和偏置衡量模块共用计数器。在输出检验工作状态,计数器将会调节其计数周期从一个较短的周期修改为一个较长的周期以确保检验结果可信,且计数位宽也会发生变化,这一变化是通过状态控制模块中的输出状态控制信号来进行调节的,当输出状态控制信号取值为0(在低电平),说明电路进行偏置衡量,此时计数器的计数周期较短;反之说明电路在进行输出检验,此时具有高电平的输出状态控制信号给计数器电路中的一些部分使能,使在短计数周期内不工作的部分计数器电路开始工作,此时计数器的计数周期较长。
当计数器在计数的时间段内,被测试的比特流中“1”出现的比例在25%-75%之间,说明对应待测熵源的随机性足够理想可以传递给真随机数的后处理模块进行后处理,反之说明被选择的熵源的输出结果的随机性并不理想,此时计数器的输出会传递到错误信号判断模块。
错误信号判断模块收到信息之后会发送一个代表失败的失败信号,此后控制可调节交叉耦合反相器阵列通断的控制信号将会发生改变,熵源阵列模块内的熵源结构在控制信号作用下进行调整,熵源阵列模块中各个熵源的偏置情况得到更新,重新进入偏置衡量阶段,选择出新的随机性最强的熵源并再次进行输出检验。若是这次选择的熵源仍然不能够通过输出检验,那么一体化模块将会再次重复偏置衡量-输出检验的过程,在经过若干次连续的衡量-输出检验过程之后若选择出的熵源依旧不能通过输出检验,则输出检验模块会向状态控制模块传递一个报警信号,状态控制模块会修改熵源阵列模块中每一个熵源的结构,改变各个熵源的失配分布情况,重新进行偏置衡量与输出检验,挑选出在新的失配分布情况下偏置情况最为理想的熵源,并以这个熵源的输出作为未经处理的真随机数比特流提供给TRNG后处理模块进行后处理。
在偏置衡量阶段被选择的熵源的输出将会被提交给TRNG后处理模块进行后处理。如图5所示,TRNG后处理模块采用迭代冯诺依曼提取器结构来增强输出的随机性,冯诺依曼提取器提取熵源输出的原始比特流中的连续两位,并根据表1所示的逻辑结构决定提取器的输出,在理想情况下,当熵源输出的未经处理的比特流的各个输出位的数值之间不具备相关性时,冯诺依曼提取器输出的二进制序列将会具有良好的随机性质,但是获得这种良好的随机性质将会以75%以上的吞吐率作为代价,迭代冯诺依曼提取器的下级提取器可以接收上级提取器的剩余流作为输入,降低吞吐率的损失。在实际的工作情况中,以冯诺依曼提取器作为后处理方式的真随机数发生器的吞吐率受到原始比特流的偏置情况与相关性的影响,因此需要输出随机数的熵源本身具有相对良好的偏置特征,且其输出的比特流各比特之间不具备明显的相关性。
表1冯诺依曼提取器的逻辑示意
输入位1 | 输入位2 | 输出 | 剩余流 |
0 | 1 | 1 | 1 |
1 | 0 | 0 | 1 |
0 | 0 | - | 0 |
1 | 1 | - | 0 |
物理不可克隆函数的工作原理如图6所示,在一体化模块经过偏置衡量和输出检验挑选出随机性最为良好的熵源之后,其余的熵源就会作为稳定的熵源参与物理不可克隆函数的生成,考虑到温度,电压以及时钟频率的变化均有可能对物理不可克隆函数的误码率造成一定的影响,在原始比特流输出后添加一个空间主体投票(SMV,Spatial MajorityVoting)模块对物理不可克隆函数的输出进行后处理。
空间主体投票模块的执行分为两个阶段:登记阶段和部署阶段,它的具体工作状态由一体化模块中的状态控制子模块进行控制。在登记阶段,空间主体投票模块对接到预设好的地址的奇数个熵源,接收对应地址熵源的输出作为登记阶段的输入,将这些熵源的输出信号进行异或运算,得到一个预密钥,将此时的登记阶段的输入与预密钥进行异或运算得到掩膜,掩膜的取值可能与输入相同,也可能与输入相反,其取值取决于预密钥的取值,预密钥仅仅在登记阶段存在,可以避免攻击者通过获得预密钥的取值的方式获取物理不可克隆函数的取值。在占据了物理不可克隆函数绝大多数工作周期的部署阶段中,预密钥的取值会被复位,熵源在部署阶段的输出将会与在登记阶段获得的掩膜进行异或运算,进而得到部署阶段的运算结果,当一组运算结果中的大部分为高电平时,SMV后处理模块输出1作为物理不可克隆函数的数字输出;当部署运算结果中的大部分为低电平时,SMV后处理模块输出0作为物理不可克隆函数的数字输出。通过空间主体投票方法,在n个被分为一组的熵源中,只有在同一时刻输出与登记阶段的PUF输出位数不同的熵源的数量达到(n+1)/2个以上时,才会发生误码,因此空间主体投票方法能够大幅度降低PUF输出的误码率。
在状态控制模块中,熵源配置调整逻辑模块负责在接收到报警信号时对熵源阵列的配置进行调整,进而改变熵源阵列的失配情况。熵源输出选择模块主要包含了能够在接收到偏置衡量模块中结果存储模块传递的最随机熵源信息后能够将地址信息译码得到使能信号组的地址译码模块以及能够将偏置衡量模块选择的熵源的输出传递给真随机数后处理模块的选通逻辑模块。工作状态控制模块主要控制着PUF与TRNG的工作状态,通过收集一体化模块中各个子模块传达的信息,工作状态控制模块可以调整一些工作状态控制信号(如使能信号和其它状态控制信号)的逻辑值进而让一体化工作模块能够正常运作,如表2和表3所示。
表2真随机数发生器的工作原理示意
表3物理不可克隆函数的工作原理示意
PUF使能信号 | 掩膜使能信号 | PUF输出使能信号 | PUF工作状态 |
1 | 1 | 0 | 生成掩膜 |
1 | 0 | 1 | PUF输出 |
0 | - | - | PUF不工作 |
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (10)
1.一种基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,所述一体化模块包括M个相同的基本单元和一个TRNG后处理模块,M≥2;每个基本单元包括:
可调节结构的熵源阵列模块,其由N个可调节结构的亚稳态熵源组成,N≥20;所述亚稳态熵源包含有可调节交叉耦合反相器阵列,所述可调节交叉耦合反相器阵列用于TRNG和PUF比特流的产生,以及用于调节对应熵源的偏置分布;
偏置衡量模块,在一体化模块处于偏置衡量工作状态时,对各个亚稳态熵源的输出随机性依次进行统计,并进行衡量与比较,选择出适用于生成PUF和适用于生成TRNG序列的熵源;
输出检验模块,在一体化模块处于输出检验工作状态时,判断偏置衡量模块选择的熵源的输出偏置是否在合理的范围内;
状态控制模块,对所在基本单元的工作状态进行控制,并在输出检验模块检测到异常时接收由输出检验模块发送的失败信号,再发送控制信号对熵源阵列模块的配置进行调整进而改变熵源阵列的失配情况;
PUF后处理模块,对其所在基本单元内的全体熵源的比特流输出进行处理,降低PUF输出的误码率;
所述TRNG后处理模块采用迭代冯诺依曼提取器结构,每个所述基本单元会选择一个偏置情况最为理想的熵源并由选择的熵源输出一组未经处理的随机数比特流,M组未经处理的随机数比特流将分别作为输入提供给TRNG后处理模块中第一层的M个冯诺依曼提取器,供迭代冯诺依曼提取器进行后处理;
整个一体化模块以M个PUF后处理模块的处理结果作为PUF输出,以TRNG后处理模块的处理结果作为真随机数输出。
2.根据权利要求1所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,
每个所述的可调节结构的亚稳态熵源均包含一个上拉网络、一个下拉网络和一个可调节交叉耦合反相器阵列;
所述上拉网络与下拉网络分别控制可调节交叉耦合反相器阵列的复位状态与工作状态,使熵源进行输出;可调节交叉耦合反相器阵列由两个位宽为n的控制信号控制其内部的n个可调节交叉耦合反相器的通断,可调节交叉耦合反相器阵列有2^n种配置方案,对应地,熵源阵列模块会具有2^n种偏置分布。
3.根据权利要求2所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,
所述可调节交叉耦合反相器内部由两个加入了通断控制晶体管的子反相器通过互相用输入连接另一个子反相器的输出的方式组合而成,每个子反相器包含两个通断控制晶体管和复位控制晶体管,通断控制晶体管接在复位控制晶体管和输出中间,负责控制可调节交叉耦合反相器的通断;复位控制晶体管接在供电端/地与通断控制晶体管中间,负责行使子反相器的功能,由于每个子反相器中的NMOS复位控制晶体管的栅极连接着另一个子反相器的PMOS复位控制晶体管的漏极,而每个子反相器中的PMOS复位控制晶体管栅极也连接着另一个子反相器的NMOS复位控制晶体管的漏极,因此在复位过程中可以保证两个子反相器对称节点上的电压维持在接近的水平,降低电荷积累对输出相关性的影响;
可调节交叉耦合反相器阵列内部含有n个可调节交叉耦合反相器,通过调整长度为n位的控制信号的电平可以调整每个交叉耦合反相器接入上拉网络和下拉网络的情况,改变熵源阵列的偏置分布。
4.根据权利要求1所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,所述偏置衡量模块包含一个计数器、一个比较器和一个结果存储模块;
所述计数器对所在基本单元内的所有亚稳态熵源输出的原始比特流中“1”的数量进行计数,并在每次计数结束后将计数结果传输给比较器,比较器将统计结果与结果存储模块中已经存储的先前选择出的最为随机的熵源的偏置结果进行比较,并在当前的熵源的输出的比特流中的“0”与“1”的分布更加均匀的时候以当前的熵源的偏置数据与地址去替换掉结果存储模块中存储的偏置数据和地址;
结果存储模块中存储的信息将会在输出检验过程中提供给熵源阵列模块,以结果存储模块中存储的偏置情况最为理想的熵源的输出交由TRNG后处理模块进行后处理。
5.根据权利要求4所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,所述输出检验模块包括错误信号判断模块,并与偏置衡量模块共用计数器,
在输出检验阶段,所述计数器用来统计输出,检验输出序列中“0”与“1”的分布比例是否满足让TRNG后处理模块发挥预期效果的条件,并在检验结果为不满足时,把检验结果发送给错误信号判断模块;
所述错误信号判断模块接收到信息,调节熵源阵列模块内部的熵源结构,并令输出检验模块停止工作,让偏置衡量模块重新开始工作,所述一体化模块回到偏置衡量工作状态;
当熵源阵列模块经偏置衡量后选择出的最为随机的熵源的输出多次无法通过输出检验时,输出检验模块会通过错误判断模块将一个报警信号传递给状态控制模块,由状态控制模块完成对熵源阵列模块内部的熵源结构的调整。
6.根据权利要求5所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,所述计数器的工作状态受状态控制模块中的输出状态控制信号控制,当输出状态控制信号取值为低电平时,一体化模块为偏置衡量工作状态,此时计数器的计数周期较短;当输出状态控制信号取值为高电平时,一体化模块为输出检验工作状态,此时计数器修改为一个较长的计数周期以确保检验结果可信,且计数位宽也会发生变化。
7.根据权利要求5所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,所述检验输出序列中“0”与“1”的分布比例是否满足让TRNG后处理模块发挥预期效果的条件,具体为:
当计数器在计数的时间段内,被测试的比特流中“1”出现的比例在25%-75%之间,说明对应待测熵源的随机性足够理想能够传递给真随机数的后处理模块进行后处理,反之说明被选择的熵源的输出结果的随机性并不理想,此时计数器把检验结果传递到错误信号判断模块。
8.根据权利要求5所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,所述错误信号判断模块接收到信息,调节熵源阵列模块内部的熵源结构,具体为:
错误信号判断模块收到信息之后发送一个代表失败的失败信号给状态控制模块,此后控制可调节交叉耦合反相器阵列通断的控制信号将会发生改变,熵源阵列模块内的熵源结构在控制信号作用下进行调整,熵源阵列模块中各个熵源的偏置情况得到更新,重新进入偏置衡量工作状态,选择出新的随机性最强的熵源并再次进行输出检验。
9.根据权利要求1所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,
所述PUF后处理模块采用空间主体投票后处理方法,即在一体化模块经过偏置衡量和输出检验挑选出随机性最为良好的熵源之后,全部的熵源就会作为稳定的熵源参与PUF的生成,考虑到温度,电压以及时钟频率的变化均有可能对PUF的误码率造成一定的影响,在熵源阵列模块输出未经处理的PUF比特流后使用一个空间主体投票模块对未经处理的PUF输出进行后处理,降低输出的PUF序列的误码率。
10.根据权利要求5所述的基于熵源选择原理的真随机数发生器与物理不可克隆函数一体化模块,其特征在于,
所述状态控制模块包括熵源配置调整逻辑模块、熵源输出选择模块和工作状态控制模块,
所述熵源配置调整逻辑模块负责在接收到报警信号时对熵源阵列的配置进行调整,进而改变熵源阵列的失配情况;
熵源输出选择模块主要包含了能够在接收到偏置衡量模块中结果存储模块传递的最随机熵源信息后能够将地址信息译码得到使能信号组的地址译码模块以及能够将偏置衡量模块选择的熵源的输出传递给TRNG后处理模块的选通逻辑模块;工作状态控制模块用于控制一体化模块的工作状态,所述工作状态包括偏置衡量状态、输出检验状态、熵源阵列配置修改状态和后处理状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311596114.2A CN117579268B (zh) | 2023-11-27 | 2023-11-27 | 一种基于熵源选择原理的trng与puf一体化模块 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311596114.2A CN117579268B (zh) | 2023-11-27 | 2023-11-27 | 一种基于熵源选择原理的trng与puf一体化模块 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117579268A true CN117579268A (zh) | 2024-02-20 |
CN117579268B CN117579268B (zh) | 2024-06-28 |
Family
ID=89884147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311596114.2A Active CN117579268B (zh) | 2023-11-27 | 2023-11-27 | 一种基于熵源选择原理的trng与puf一体化模块 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117579268B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118094654A (zh) * | 2024-04-28 | 2024-05-28 | 浙江大学 | 一种双熵源物理不可克隆函数抗攻击性的确定方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190305970A1 (en) * | 2018-03-30 | 2019-10-03 | Intel Corporation | Apparatus and method for generating hybrid static/dynamic entropy physically unclonable function |
US20200050430A1 (en) * | 2016-11-15 | 2020-02-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for Performing a Trustworthiness Test on a Random Number Generator |
US20200104101A1 (en) * | 2018-09-27 | 2020-04-02 | Intel Corporation | Self-calibrated von-neumann extractor |
US20200293287A1 (en) * | 2019-03-13 | 2020-09-17 | Ememory Technology Inc. | Random number generator |
CN112910653A (zh) * | 2021-01-19 | 2021-06-04 | 电子科技大学 | 一种puf结构 |
CN113672199A (zh) * | 2021-08-27 | 2021-11-19 | 太原理工大学 | 一种具备物理不可克隆函数功能的多熵源随机数发生器 |
CN114860195A (zh) * | 2022-05-13 | 2022-08-05 | 上海交通大学 | 真随机数与物理不可克隆函数生成系统 |
US20230208657A1 (en) * | 2021-12-23 | 2023-06-29 | National Yang Ming Chiao Tung University | Device with multiple hardware signatures from a single puf circuit source and related methods and applications |
CN116527238A (zh) * | 2022-11-14 | 2023-08-01 | 东南大学 | 一种物理不可克隆函数硬件中高熵值随机数生成方法 |
CN116887063A (zh) * | 2023-09-08 | 2023-10-13 | 深圳大学 | 基于非线性强物理不可克隆函数电路的可信图像传感芯片 |
-
2023
- 2023-11-27 CN CN202311596114.2A patent/CN117579268B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200050430A1 (en) * | 2016-11-15 | 2020-02-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for Performing a Trustworthiness Test on a Random Number Generator |
US20190305970A1 (en) * | 2018-03-30 | 2019-10-03 | Intel Corporation | Apparatus and method for generating hybrid static/dynamic entropy physically unclonable function |
US20200104101A1 (en) * | 2018-09-27 | 2020-04-02 | Intel Corporation | Self-calibrated von-neumann extractor |
US20200293287A1 (en) * | 2019-03-13 | 2020-09-17 | Ememory Technology Inc. | Random number generator |
CN112910653A (zh) * | 2021-01-19 | 2021-06-04 | 电子科技大学 | 一种puf结构 |
CN113672199A (zh) * | 2021-08-27 | 2021-11-19 | 太原理工大学 | 一种具备物理不可克隆函数功能的多熵源随机数发生器 |
US20230208657A1 (en) * | 2021-12-23 | 2023-06-29 | National Yang Ming Chiao Tung University | Device with multiple hardware signatures from a single puf circuit source and related methods and applications |
CN114860195A (zh) * | 2022-05-13 | 2022-08-05 | 上海交通大学 | 真随机数与物理不可克隆函数生成系统 |
CN116527238A (zh) * | 2022-11-14 | 2023-08-01 | 东南大学 | 一种物理不可克隆函数硬件中高熵值随机数生成方法 |
CN116887063A (zh) * | 2023-09-08 | 2023-10-13 | 深圳大学 | 基于非线性强物理不可克隆函数电路的可信图像传感芯片 |
Non-Patent Citations (4)
Title |
---|
SACHIN TANEJA;VIVEKA KONANDUR RAJANNA: "United In-Memory Dynamic TRNG and Multi-Bit Static PUF Entropy Generation for Ubiquitous Hardware Security", 2021 IEEE INTERNATIONAL SOLID-STATE CIRCUITS CONFERENCE, 3 March 2021 (2021-03-03) * |
VIKASH KUMAR RAI;SOMANATH TRIPATHY: "TRGP:A Low-Cost Re-Configurable TRNG-PUF Architecture for IoT", 2021 22ND INTERNATIONAL SYMPOSIUM ON QUALITY ELECTRONIC DESIGN, 10 May 2021 (2021-05-10) * |
李冰;周岑军;陈帅;吉建华;: "用于SRAM PUFs的伪随机数发生器的FPGA实现", 电子学报, no. 09, 15 September 2017 (2017-09-15) * |
鲁迎春: "硬件安全原语-真随机数发生器与物理不克隆函数研究与设计", 中国优秀硕士学位论文数据库, 16 April 2023 (2023-04-16) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118094654A (zh) * | 2024-04-28 | 2024-05-28 | 浙江大学 | 一种双熵源物理不可克隆函数抗攻击性的确定方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117579268B (zh) | 2024-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117579268B (zh) | 一种基于熵源选择原理的trng与puf一体化模块 | |
US8918443B2 (en) | Reducing bias in hardware generated random numbers | |
CN106533654B (zh) | 可配置物理不可克隆函数电路及其响应产生方法 | |
JP4741991B2 (ja) | シリアアライザ/デシリアライザ方式の転送装置 | |
US20200192637A1 (en) | Self-timed random number generator | |
EP3234857A1 (en) | Reliability enhancement methods for physically unclonable function bitstring generation | |
US10333708B1 (en) | Hybrid random-number generator | |
JP4629876B2 (ja) | 乱数発生器用デューティ・サイクル修正器 | |
Hemavathy et al. | Arbiter puf—a review of design, composition, and security aspects | |
Torii et al. | ASIC implementation of random number generators using SR latches and its evaluation | |
CN106874799B (zh) | 一种基于时钟分布网络的物理不可克隆函数生成方法 | |
CN113158200A (zh) | 使用挑战-响应协议执行认证的集成电路和使用其的方法 | |
CN113961979B (zh) | 继电保护安全芯片密码服务模块及其哈希算法单元 | |
US9124462B2 (en) | Flexible PRBS architecture for a transceiver | |
Santana-Andreo et al. | A DRV-based bit selection method for SRAM PUF key generation and its impact on ECCs | |
CN117010032B (zh) | 自动读和清零的sram物理不可克隆函数电路及设备 | |
Idriss et al. | A highly reliable dual-arbiter PUF for lightweight authentication protocols | |
Che et al. | Novel offset techniques for improving bitstring quality of a hardware-embedded delay PUF | |
CN113539334A (zh) | 用于物理不可克隆函数的测量机制 | |
US20230153069A1 (en) | Random number generators, integrated circuits having random number generators, and methods of operating random number generators | |
CN114584297B (zh) | 一种基于物理不可克隆技术的加解密系统及加解密方法 | |
Sheikhpour et al. | High-throughput configurable SIMON architecture for flexible security | |
Dan et al. | A modeling attack resistant R-XOR APUF based on FPGA | |
Yu et al. | Security and reliability properties of syndrome coding techniques used in PUF key generation | |
CN113535123A (zh) | 具有通过位线预充电的物理不可克隆函数 |
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 |