基于可重构环形振荡器的物理不可克隆函数及其产生方法

文档序号:6620402阅读:226来源:国知局
基于可重构环形振荡器的物理不可克隆函数及其产生方法
【专利摘要】本发明公开了一种基于可重构环形振荡器的物理不可克隆函数及其产生方法,所述物理不可克隆函数包含可重构环形振荡器矩阵,映射模块和控制模块。可重构环形振荡器矩阵由可重构比特产生器构成,矩阵中比特产生器的数量由实际应用中的需求确定。每个可重构比特产生器由可重构振荡环路、计数器、寄存器和比较器构成,该模块可以提取门电路间在制造加工过程中引入的随机差异并生成随机的响应信号。映射模块的功能是为每一个激励信号生成与之对应的一对配置信号。控制模块控制协调映射模块和可重构环形振荡器矩阵工作。本发明相对于基于传统的环形振荡器的物理不可克隆函数大幅降低了硬件实施成本,在加密认证等安全领域更具有广阔的应用前景。
【专利说明】
基于可重构环形振荡器的物理不可克隆函数及其产生方法

【技术领域】
[0001]本发明涉及信息安全硬件加密【技术领域】,尤其涉及一种基于可重构环形振荡器的物理不可克隆函数及其产生方法。

【背景技术】
[0002]物理不可克隆函数是一种能够提取集成电路中门电路间或连线间在制造加工过程中引入的随机差异的硬件电路,其特点是相同的电路结构在不同的集成电路上实现后生成的响应值两两都不相同,即每一片集成电路上生成的响应值都是唯一的。利用物理不可克隆函数的这一特性,可以将其应用于加密密钥的生成,以及设备的认证与识别等信息安全领域。
[0003]传统的基于环形振荡器的物理不可克隆函数由环形振荡器矩阵,两个η选I选择器,计数器和比较器组成,如图2所示。环形振荡器矩阵由η个完全相同的环形振荡器构成,每个环形振荡器是由奇数个反相器构成的振荡环路,其个数一般为5个或者7个。两个η选I选择器通过激励信号,即选择器的配置信号,从环形振荡器矩阵中选择两个不同的环形振荡器,并将其振荡信号输入到计数器。两个计数器分别用于计数两路振荡信号的振荡次数,并将结果输出到比较器,比较器根据两者计数值的差异决定响应值。两个计数器的工作完全冋步。
[0004]利用这种方法能实现每个环形振荡器间延时差异的提取,且这种差异是由于加工制造过程中由于不可控因素引入的随机性产生的,通过对比这种差异可以生成随机的响应信号。假如用该方法实现一个具有实用价值的物理不可克隆函数所需的环形振荡器的数量是非常庞大的,硬件实施成本将会非常高昂。


【发明内容】

[0005]本发明所要解决的技术问题是为了克服上述现有技术的不足,提供了一种基于可重构环形振荡器的物理不可克隆函数,可以在保证安全性的条件下提高硬件资源的利用效率,降低基于环形振荡器的物理不可克隆函数的硬件实施成本。
[0006]本发明为解决上述技术问题采用以下技术方案:
基于可重构环形振荡器的物理不可克隆函数,包含映射模块、控制模块和可重构环形振荡器矩阵;
所述映射模块用于根据输入的激励信号生成与之对应的配置信号,并将其输入至可重构环形振荡器矩阵;
所述可重构环形振荡器矩阵由可重构比特产生器构成,矩阵中比特产生器的数量由实际应用中的需求确定;
所述可重构比特产生器包含可重构振荡环路、计数器、寄存器和比较器;
所述可重构振荡环路用于根据接收到的配置信号产生具有唯一频率的振荡信号; 所述计数器用于统计预先设定的时间间隔内可重构振荡环路中具有唯一频率的振荡信号的振荡次数;
所述寄存器用于存储所述计数器统计的计数值;
所述比较器用于比较当前计数器的计数值与所述寄存器中存储的之前计数器的计数值,并将比较结果输出;
所述控制模块用于控制协调所映射模块和所述可重构环形振荡器矩阵工作。
[0007]作为本发明基于可重构环形振荡器的物理不可克隆函数进一步的优化方案,所述可重构振荡环路包含至少四个延时单元;
当所述延时单元的个数为奇数时,所述可重构振荡环路具体包含偶数个反相器延时单兀与一个2输入与非门延时单兀;
当所述延时单元的个数为偶数时,所述可重构振荡环路具体包含奇数个反相器延时单元与一个2输入与门延时单元;
所述延时单元依次相连构成串行环路,其中,上一个延时单元的输出端与下一个延时单元的两个输入端相连,配置端与所述映射模块相连。
[0008]所述可重构振荡环路中随着延时单元的增加,可以生成的比特数越多,若有η个延时单元,能生成的比特数为2η(2η-1)/2 ;
作为本发明基于可重构环形振荡器的物理不可克隆函数进一步的优化方案,所述反相器延时单元由2选I选择器与反相器构成,其中,所述2选I选择器的输出端与所述反相器的输入端相连,所述2选I选择器的两个输入端作为反相器延时单元的两个输入端,所述述2选I选择器的配置端作为反相器延时单元的配置端,所述反相器的输出端作为反相器延时单元的输出端。
[0009]作为本发明基于可重构环形振荡器的物理不可克隆函数进一步的优化方案,所述2输入与非门延时单兀由2选I选择器与2输入与非门构成,其中,所述2选I选择器的输出端与所述2输入与非门的一个输入端相连,所述2输入与非门的另一个输入端与所述控制模块相连,所述2选I选择器的两个输入端作为2输入与非门延时单元的两个输入端,所述述2选I选择器的配置端作为2输入与非门延时单元的配置端,所述2输入与非门的输出端作为2输入与非门延时单兀的输出端。
[0010]作为本发明基于可重构环形振荡器的物理不可克隆函数进一步的优化方案,所述2输入与门延时单兀由2选I选择器与2输入与门构成,其中,所述2选I选择器的输出端与所述2输入与门的一个输入端相连,所述2输入与门的另一个输入端与所述控制模块相连,所述2选I选择器的两个输入端作为2输入与门延时单元的两个输入端,所述述2选I选择器的配置端作为2输入与门延时单元的配置端,所述2输入与门的输出端作为2输入与门延时单元的输出端。
[0011]本发明还公开了一种基于可重构环形振荡器的物理不可克隆函数的函数产生方法,包含以下步骤:
步骤I),将激励信号输入至映射模块,得到与之对应的一对配置信号;
步骤2),将其中一个配置信号输入至可重构环形振荡器矩阵;
步骤3),对于可重构环形振荡器矩阵中每个可重构比特产生器,控制其可重构振荡环路根据接收到的配置信号在预先设定的时间内进行振荡,并控制其计数器统计振荡次数后将计数值存入其寄存器; 步骤4),将另一个配置信号输入至可重构环形振荡器矩阵;
步骤5),对于可重构环形振荡器矩阵中每个可重构比特产生器,控制其可重构振荡环路根据接收到的配置信号在预先设定的时间内进行振荡,并控制其计数器统计振荡次数;步骤6),对于每个可重构比特产生器,将其寄存器和计数器的计数值分别传入比较器比较后输出结果。
[0012]本发明采用以上技术方案与现有技术相比,具有以下技术效果:
本发明提高了硬件资源的利用效率,在相同的硬件资源下相比于传统的基于环形振荡器的物理不可克隆函数能生成更大的响应集合,降低了硬件实施的成本。

【专利附图】

【附图说明】
[0013]图1为基于可重构环形振荡器的物理不可克隆函数结构图;
图2为传统基于环形振荡器的物理不可克隆函数原理图;
图3为可重构振荡环路原理图;
图4为“自比较策略”工作流程图。

【具体实施方式】
[0014]下面结合附图对本发明的技术方案做进一步的详细说明:
如图1所示,本发明公开了一种基于可重构环形振荡器的物理不可克隆函数,包含映射模块、控制模块和可重构环形振荡器矩阵,其中可重构振荡器矩阵是最主要的一个模块,也是消耗资源最多的一个模块,用于提取逻辑电路及连线间的延时差异并生成响应信号,每个可重构比特产生器由可重构振荡环路,计数器,寄存器和比较器构成,可重构振荡器矩阵有一定数量的可重构比特发生器构成,其数量由实际应用中的需求确定,例如每一次运算后要求生成64位或者128位的响应信号,此时可重构振荡器矩阵需要由64个或者128个可重构比特产生器构成,又如要求在4次运算后产生64位响应信号,此时可重构矩阵可由16个可重构比特产生器构成。可重构振荡环路可以根据配置信号的不同选择不同信号传输路径,计数器用于统计可重构振荡环路在一定时间间隔内的振荡次数,例如时间间隔可以为100ms。寄存器用于存储计数器输出的计数值,比较器用于比较计数器在不同配置信号下生成的值并将比较结果输出。基于可重构振荡器的物理不可克隆函数可以在现场可编程逻辑阵列(FPGA)或专用集成电路(ASIC)上实现。图1中,RRO array为可重构环形振荡器矩阵,fl, f2分别为寄存器和计数器的频率值,IDU为反相器延时单元,ADU为2输入与门延时单元,NDU为2输入与非门延时单元。
[0015]映射模块的作用是为每一个激励信号生成一对不同的配置信号,且各配置信号对间也不能相同,例如:当激励为Cl时,配置信号为{S1,S2},当激励为C2时,配置信号可以为{S2,S3}或{S3,S4}。SI (S2,S3,S4)是所有配置信号的集合,S卩Is1, s2,…sn}。映射模块可以基于查找表的方式构建也可以通过生成随机数的方式构建。
[0016]图3中描述的是一个可重构振荡环路的基本结构,它由η个延时单元构成,其中包括η-l个反相器延时单元(IDU)和一个2输入与门延时单元。因为在环路中使用了 2输入与门延时单元(ADU),所以可重构振荡环路中延时单元的个数η必须为偶数。假如环路中使用了 2输入与非门延时单元(NDU),则可重构振荡环路中延时单元的个数η必须为奇数。例如,当η为7时,可重构振荡环路中就由6个反相器延时单元和一个2输入与非门延时单元构成,当η为8时,该环路就由7个反相器延时单元和一个2输入与门延时单元构成。可重构振荡环路中延时单元的个数决定了每个配置信号的长度,也决定了每个比特器产生器能够生成的比特数量。
[0017]反相器延时单元由2选I选择器与反相器构成,每个延时单元有3位输入端,其中Si(i=l,2,…η)是输入的选择器的配置信号,另两位输入为选择器的输入通路,且输入通路的连线应该保持对称,选择器的输出端与反相器的输入端相连,反相器的输出端为延时单元的输出。2输入与门延时单元与反相器延时单元相似,其不同之处为选择器的输出端同2输入与门的一输入端相连,与门的另一输入端与使能信号相连。2输入与非门延时单兀同2输入与门延时单元也基本相同,其不同之处就是将2输入与门换成了 2输入与非门。在环路中,一个延时单元的输出与下一个延时单元的两条输入通路相连,以此循环,将所有延时单元构成一个闭合的可振荡环路。
[0018]映射模块用于根据输入的激励信号生成与之对应的一对配置信号;
图4中描述了映射模块产生一对配置信号SI,S2后,控制模块控制协调所映射模块和所述可重构环形振荡器矩阵一个可重构比特产生器工作的工作流程:
步骤I),控制模块控制映射模块输出其中一个配置信号SI给可重构振荡环路;
步骤2),可重构振荡环路根据接收到的配置信号SI在预先设定的时间内进行振荡,控制模块控制计数器统计其振荡次数并将计数值cntl存入寄存器;
步骤3),控制模块控制映射模块输出另一个配置S2信号给可重构振荡环路;
步骤4),可重构振荡环路根据接收到的配置信号S2在预先设定的时间内进行振荡,控制模块控制计数器统计其振荡次数得到计数值cnt2 ;
步骤5),比较器分别读取寄存器和计数器中的计数值cntl和cnt2,比较两个值的大小后输出结果。
【权利要求】
1.基于可重构环形振荡器的物理不可克隆函数,其特征在于,包含映射模块、控制模块和可重构环形振荡器矩阵; 所述映射模块用于根据输入的激励信号生成与之对应的配置信号,并将其输入至可重构环形振荡器矩阵; 所述可重构环形振荡器矩阵由若干个并行的可重构比特产生器构成; 所述可重构比特产生器包含可重构振荡环路、计数器、寄存器和比较器; 所述可重构振荡环路用于根据接收到的配置信号产生具有唯一频率的振荡信号;所述计数器用于统计预先设定的时间间隔内可重构振荡环路中具有唯一频率的振荡信号的振荡次数; 所述寄存器用于存储所述计数器统计的计数值; 所述比较器用于比较当前计数器的计数值与所述寄存器中存储的之前计数器的计数值,并将比较结果输出; 所述控制模块用于控制协调所映射模块和所述可重构环形振荡器矩阵工作。
2.根据权利要求1所述的基于可重构环形振荡器的物理不可克隆函数,其特征在于: 所述可重构振荡环路包含至少四个延时单元; 当所述延时单元的个数为奇数时,所述可重构振荡环路具体包含偶数个反相器延时单兀与一个2输入与非门延时单兀; 当所述延时单元的个数为偶数时,所述可重构振荡环路具体包含奇数个反相器延时单元与一个2输入与门延时单元; 所述延时单元依次相连构成串行环路,其中,上一个延时单元的输出端与下一个延时单元的两个输入端相连,配置端与所述映射模块相连。
3.根据权利要求2所述的基于可重构环形振荡器的物理不可克隆函数,其特征在于: 所述反相器延时单元由2选I选择器与反相器构成,其中,所述2选I选择器的输出端与所述反相器的输入端相连,所述2选I选择器的两个输入端作为反相器延时单元的两个输入端,所述述2选I选择器的配置端作为反相器延时单元的配置端,所述反相器的输出端作为反相器延时单元的输出端。
4.根据权利要求2所述的基于可重构环形振荡器的物理不可克隆函数,其特征在于: 所述2输入与非门延时单兀由2选I选择器与2输入与非门构成,其中,所述2选I选择器的输出端与所述2输入与非门的一个输入端相连,所述2输入与非门的另一个输入端与所述控制模块相连,所述2选I选择器的两个输入端作为2输入与非门延时单元的两个输入端,所述述2选I选择器的配置端作为2输入与非门延时单元的配置端,所述2输入与非门的输出端作为2输入与非门延时单兀的输出端。
5.根据权利要求2所述的基于可重构环形振荡器的物理不可克隆函数,其特征在于: 所述2输入与门延时单元由2选I选择器与2输入与门构成,其中,所述2选I选择器的输出端与所述2输入与门的一个输入端相连,所述2输入与门的另一个输入端与所述控制模块相连,所述2选I选择器的两个输入端作为2输入与门延时单元的两个输入端,所述述2选I选择器的配置端作为2输入与门延时单元的配置端,所述2输入与门的输出端作为2输入与门延时单兀的输出端。
6.基于权利要求1所述的基于可重构环形振荡器的物理不可克隆函数的函数产生方法,其特征在于,包含以下步骤: 步骤I),将激励信号输入至映射模块,得到与之对应的一对配置信号; 步骤2),将其中一个配置信号输入至可重构环形振荡器矩阵; 步骤3),对于可重构环形振荡器矩阵中每个可重构比特产生器,控制其可重构振荡环路根据接收到的配置信号在预先设定的时间内进行振荡,并控制其计数器统计振荡次数后将计数值存入其寄存器; 步骤4),将另一个配置信号输入至可重构环形振荡器矩阵; 步骤5),对于可重构环形振荡器矩阵中每个可重构比特产生器,控制其可重构振荡环路根据接收到的配置信号在预先设定的时间内进行振荡,并控制其计数器统计振荡次数;步骤6),对于每个可重构比特产生器,将其寄存器和计数器的计数值分别传入比较器比较后输出结果。
【文档编号】G06F21/76GK104200180SQ201410340723
【公开日】2014年12月10日 申请日期:2014年7月17日 优先权日:2014年7月17日
【发明者】刘伟强, 王成华, 余益飞 申请人:南京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1