基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法技术

技术编号:15763432 阅读:72 留言:0更新日期:2017-07-06 01:11
本发明专利技术公开了一种基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法,包括:1、利用环形振荡器物理不可克隆函数的约束文件定义其在FPGA上的位置,并仅用周围逻辑单元;2、利用汉明距离衡量所述环形振荡器物理不可克隆函数所产生响应序列的可靠性;3、利用汉明距离衡量所述环形振荡器物理不可克隆函数周围添加干扰电路后的所产生响应序列的可靠性;4、比较无干扰电路和添加干扰电路所产生响应序列的可靠性。本发明专利技术能够快速检测响应位的可靠性,从而提高PUF的可靠性,以保证物理不可克隆函数能在安全领域上广泛应用。

Reliability detection method of physically immune function of ring oscillator based on FPGA

The invention discloses a reliability test method, ring oscillator FPGA physical uncloneable function based on the ring oscillator includes: 1, not physical constraint file clone function to define the position on the FPGA, and only around the logic unit; 2, using the Hamming distance measure of the ring oscillator can not be physical cloning function generated response sequence reliability; 3, using Hamming distance measure of the ring oscillator physical unclonable function around the circuit generated after adding interference response sequence reliability; 4, there is no interference circuit and adding interference circuit generated response sequence reliability. The invention can rapidly detect the reliability of the response bit, thereby improving the reliability of the PUF, so as to ensure that the physically non cloning function can be widely applied in the security field.

【技术实现步骤摘要】
基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法
本专利技术涉及信息安全领域及集成电路领域,特别是涉及一种利用周围逻辑干扰电路检测物理不可克隆函数(PUF)可靠性的方法。
技术介绍
随着社会信息化发展的进一步深入,信息安全问题越来越受到人们的重视。被认为能永久存储和不被攻击者所知的密钥是传统密码学的核心,然而,很多攻击方法已经能够破解密钥,使得密钥不足以保证硬件的安全。为有效解决此安全问题,物理不可克隆函数(PhysicalUnclonableFunction,PUF)应运而生,它作为一种新型的加密原语,能更加有效地应对安全问题。PUF的工作原理是通过提取集成电路在生产制造过程中由于制造工艺的不同而引入的随机差异,来实现唯一的、不可克隆的加密信息(响应)的生成。与传统的加密方法相比,PUF是从材料本身提取它固有的物理特性,而不是存储在非易失性存储器,所产生的密钥有着低成本、易挥发、不可预测和结构简单等优势,因此,在信息安全领域得到了广泛应用,如芯片加密、密钥存储、身份认证、IP核保护和ID产生等。目前已经提出的物理不可克隆函数已有很多种,例如基于环形振荡器的物理不可克隆函数、基于SRAM的物理不可克隆函数和基于仲裁器的物理不可克隆函数。其中,基于环形振荡器的物理不可克隆函数是比较流行且易于在FPGA上实现的PUF,它是利用不同器件在制造时的工艺偏差不同来比较环形振荡器之间的振荡频率的差异来输出响应,且每个环形振荡器具有相同的结构。当PUF满足对称布局布线实现于FPGA时,制造过程产生的工艺偏差决定了PUF的输出并且导致结果是随机的。但是,当操作环境(温度、电压和器件老化等)造成的波动大于或接近这个偏差时,工艺偏差就不能作为输出的主导因素,输出就会随着操作环境的变化而变化,由此导致了PUF输出不稳定的可靠性问题。针对物理不可克隆函数可靠性比较低的问题,目前主要存在以下几种解决方案。例如:提高PUF可靠性传统的方法是ECC(ErrorCorrectionCodes)和预配置,所谓的预配置,比如,调整环形振荡器配置从两个具有相同布局布线的环形振荡器中选择频率差异最大的,来提高可靠性,但是这两种方法大大增加了设计的复杂性和资源开销,而且可能会泄露重要的信息。另一种广泛应用的方法是改变温度、电压等来检测PUF响应的复现情况,以此选择可靠的PUF,但该方法面临两个问题:一方面,需要增加额外的资源开销,包括特定的电压调节电路和温箱设备等,另一方面,把温度调整到另一个刻度需要大量的时间和精力,并且由于温度存在一定的浮动,很难把它固定在设定的温度。综上可知,现有技术在实际使用中显然存在不便和缺陷,所以有必要加以改进。
技术实现思路
为了克服现有技术的不足,本专利技术提供了一种基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法,以期能够快速检测响应位的可靠性,从而提高PUF的可靠性,以保证物理不可克隆函数能在安全领域上广泛应用。本专利技术为达到上述目的所采用的技术方案是:本专利技术一种基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法的特点按如下步骤进行:步骤1、利用环形振荡器物理不可克隆函数的约束文件定义所述环形振荡器物理不可克隆函数在FPGA上的位置;再利用所述环形振荡器物理不可克隆函数的约束文件禁用所述环形振荡器物理不可克隆函数周围的逻辑单元;步骤2、在FPGA上实现所述环形振荡器物理不可克隆函数,从而产生初始响应序列;步骤3、利用汉明距离衡量所述环形振荡器物理不可克隆函数的可靠性,得到无干扰下的可靠性指数A;步骤4、定义变量n,并初始化n=1;步骤5、在所述环形振荡器物理不可克隆函数周围添加n个干扰电路后,从而产生第n次响应序列;步骤6、比较第n次响应序列和初始响应序列之间相应的响应位是否存在翻转,若存在,则将翻转的响应位去除后,利用汉明距离再次衡量所述环形振荡器物理不可克隆函数的可靠性,得到第n检测的可靠性指数An,再执行步骤7;若不存在,则保留第n次响应序列;并执行步骤8;步骤7、比较第n检测的可靠性指数An是否等于无干扰下的可靠性指数A,若等于,则表示所述环形振荡器物理不可克隆函数的可靠性不变;否则,表示所述环形振荡器物理不可克隆函数的可靠性得到提升;步骤8、将n+1赋值给n后,返回步骤5执行,直到可靠性指数满足所述环形振荡器物理不可克隆函数的性能要求为止。与已有技术相比,本专利技术的有益结果体现在:1、本专利技术提出的可靠性检测方法,是通过在PUF周围添加干扰电路来实现PUF可靠性的快速检测,极大地提高了其在安全应用方面的可靠性,使其可以广泛应用于安全相关领域。2、本专利技术提出的可靠性检测方法,与传统的ECC检测方法相比,不需要额外的硬件资源,即可在FPGA上实现,且不会有泄露相关重要信息的危险,使得在硬件资源受限的认证系统上面实现高可靠的物理不可克隆函数变为现实。3、本专利技术提出的可靠性检测方法,相对于通过电压、温度改变来提高可靠性的方法,很大程度的减少了温度和电压等额外调节设备开销,且省时省力。附图说明图1为现有技术中物理不可克隆函数(PUF)响应生成模块;图2为本专利技术可靠性检测模块的工作流程图;图3(a)为现有技术中无干扰电路的物理不可克隆函数的汉明距离图;图3(b)为本专利技术简单干扰电路后物理不可克隆函数的汉明距离图;图3(c)为本专利技术复杂干扰电路后物理不可克隆函数的汉明距离图;图3(d)为本专利技术频率和数量均改变后物理不可克隆函数的汉明距离图。具体实施方式本实施例中,一种基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法是按如下步骤进行:步骤1、利用环形振荡器物理不可克隆函数的约束文件定义环形振荡器物理不可克隆函数在FPGA上的位置;再利用环形振荡器物理不可克隆函数的约束文件禁用环形振荡器物理不可克隆函数周围的逻辑单元;本实施例中,环形振荡器物理不可克隆函数的组成如图1所示,由两个环形振荡器、两个计数器和一个比较器构成;环形振荡器由一个使能与非门和四个反相器首尾相连组成一个环状,环形振荡器的输出端连接计数器的输入端,两计数器的输出端最终接入比较器;步骤2、在FPGA上实现环形振荡器物理不可克隆函数,从而产生初始响应序列;在本实施例中,为使环形振荡器物理不可克隆函数是通过利用器件制造时的工艺偏差输出随机的不可克隆的激励响应序列,所设计的物理不可克隆函数是对称布局的,即两个环形振荡器在底层的设计是结构相同的,且对称布局等长布线,以使两个环形振荡器所对应器件之间的延迟是相同的,从而消除系统偏差,使得环形振荡器的输出响应序列即所接入计数器的计数结果完全由芯片或器件在生产时的不可避免的工艺偏差所决定;当使能信号为1时,环形振荡器开始以一定的频率振荡,由于器件在加工制造时工艺偏差的影响,两条路径的传播延迟有偏差,两环形振荡器的振荡频率结果分别接到对应的计数器,最后通过比较器来比较两周期信号的振荡频率,输出响应序列为逻辑0或者逻辑1;步骤3、利用汉明距离衡量环形振荡器物理不可克隆函数的可靠性,得到无干扰下的可靠性指数A;物理不可克隆函数的响应序列不可避免的受到噪声、测量的不确定性和外部因素的影响,而片内汉明距离(HD,intra-chipHammingdistance)是指对一个单一的物理不可克隆函数重复本文档来自技高网
...
基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法

【技术保护点】
一种基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法,其特征是按如下步骤进行:步骤1、利用环形振荡器物理不可克隆函数的约束文件定义所述环形振荡器物理不可克隆函数在FPGA上的位置;再利用所述环形振荡器物理不可克隆函数的约束文件禁用所述环形振荡器物理不可克隆函数周围的逻辑单元;步骤2、在FPGA上实现所述环形振荡器物理不可克隆函数,从而产生初始响应序列;步骤3、利用汉明距离衡量所述环形振荡器物理不可克隆函数的可靠性,得到无干扰下的可靠性指数A;步骤4、定义变量n,并初始化n=1;步骤5、在所述环形振荡器物理不可克隆函数周围添加n个干扰电路后,从而产生第n次响应序列;步骤6、比较第n次响应序列和初始响应序列之间相应的响应位是否存在翻转,若存在,则将翻转的响应位去除后,利用汉明距离再次衡量所述环形振荡器物理不可克隆函数的可靠性,得到第n检测的可靠性指数An,再执行步骤7;若不存在,则保留第n次响应序列;并执行步骤8;步骤7、比较第n检测的可靠性指数An是否等于无干扰下的可靠性指数A,若等于,则表示所述环形振荡器物理不可克隆函数的可靠性不变;否则,表示所述环形振荡器物理不可克隆函数的可靠性得到提升;步骤8、将n+1赋值给n后,返回步骤5执行,直到可靠性指数满足所述环形振荡器物理不可克隆函数的性能要求为止。...

【技术特征摘要】
1.一种基于FPGA的环形振荡器物理不可克隆函数的可靠性检测方法,其特征是按如下步骤进行:步骤1、利用环形振荡器物理不可克隆函数的约束文件定义所述环形振荡器物理不可克隆函数在FPGA上的位置;再利用所述环形振荡器物理不可克隆函数的约束文件禁用所述环形振荡器物理不可克隆函数周围的逻辑单元;步骤2、在FPGA上实现所述环形振荡器物理不可克隆函数,从而产生初始响应序列;步骤3、利用汉明距离衡量所述环形振荡器物理不可克隆函数的可靠性,得到无干扰下的可靠性指数A;步骤4、定义变量n,并初始化n=1;步骤5、在所述环形振荡器物理不可克隆函数周围添加n个干扰电路后,从而...

【专利技术属性】
技术研发人员:梁华国李伟迪徐秀敏蒋翠云黄正峰易茂祥
申请(专利权)人:合肥工业大学
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1