基于多频率段的物理不可克隆函数结构的制作方法

文档序号:6440263阅读:170来源:国知局
专利名称:基于多频率段的物理不可克隆函数结构的制作方法
基于多频率段的物理不可克隆函数结构技术领域
本发明属于集成电路芯片安全领域,涉及一种基于多频率段的物理不可克隆函数结构。
背景技术
物理不可克隆函数通过物理设备来实现,它利用了制造设备过程中所固有的必然引入的随机性,具有不可克隆性,可用于产生不可复制的密钥,并且这种密钥只在芯片上电的时候存在,因此大大加强了其安全性,可广泛用于智能卡,信用卡等安全领域。
物理不可克隆函数的种类很多,本发明主要针对基于振荡器的物理不可克隆函数。
传统的基于振荡器的物理不克隆函数的结构如图1所示。其端口包括
各个振荡器的使能信号输入端(图中未标出),用来接收振荡器的使能信号,控制振荡器的开与关;
激励输入端(输入激励端)用来接收外围的激励;
响应输出端(输出端),用来将该结构的响应输出;
还有整个电路的时钟信号和复位信号(图中未标出)。
如图1所示,传统的基于振荡器的物理不可克隆函数由多个振荡器、一个N选二多路复用器、两个计数器和一个比较器组成,振荡器的输出时钟接到N选二多路复用器的数据输入端,N选二多路复用器的选择位输入端与外围的激励信号相连,N选二多路复用器输出的两个时钟信号分别与两个计数器的时钟输入端相连,用来触发计数器,两个计数器的计数值输出端与一个比较器的数据输入端相连,比较结果作为响应输出。
这种结构的物理不可克隆函数,主要是通过输入激励来选择两个用于比较的振荡器,振荡器的频率快慢通过计数器来比较,当其中一个计数器达到一定值时,比较器对两个计数值进行比较,比较结果作为响应输出。响应输出的同时将计数器清零以准备好为下两个比较的振荡器做准备。
由于振荡器都是由同一个硬宏单元例化得到,因此各个振荡器之间完全相同,但是由于制造上的不确定性,振荡器之间的频率会有微小差异,这些差别人为不可控。当计数周期足够长时,两个振荡器之间的频率差异会被放大,因而很容易得到比较的结果。但是由于比较的结果完全是由制造上的不可控性决定,因此哪怕给予了精确的制造工艺也很难将上述电路复制。
但是,该结构中的振荡器是由奇数个反相器构成的环状电路,哪怕是可重构的振荡器其在产生响应过程中也只是利用了其中的一种频率,因此该结构在产生响应的过程中振荡器的振荡频率固定不变,攻击者可以通过数学建模的攻击方式来将其破解。
由于振荡器的频率固定,因此各个振荡器之间的频率快慢顺序也固定不变。如果对该结构按一定的顺序施加适当的激励,很容易地就可以得到各个振荡器之间的快慢顺序,有了这个顺序表就可以预测所有激励下的响应了。发明内容
为了克服现有的物理不可克隆函数的安全性较差的不足,本发明提供了一种能有效避免现在最常用的数学建模攻击,提高安全性的基于多频率段的物理不可克隆函数结构。
为了解决上述技术问题提出的技术方案为
一种基于多频率段的物理不可克隆函数结构,包括可重构的振荡器、频率调节电路、N选二多路复用器、计数器和比较器;
多个可重构振荡器组成振荡器阵列,所述振荡器的输出端与一个N选二的多路复用器的输入端相连,振荡器与门的输入端与外围使能输入信号相连;
N选二多路复用器的选择输入端与外围的输入激励相连;
N选二多路复用器的两个输出端分别与两个计数器的时钟信号相连;
两个计数器的复位信号端与系统的复位信号相连,两个计数器的输出端分别与比较器的输入端相连;
比较器的输出端与频率调节电路的输入端相连,比较器的复位信号端与系统的复位信号相连;
频率调节电路的输出端与振荡器组中那些三态缓冲器的第二输入端相连,频率调节电路的时钟信号输入端与系统的时钟信号相连,频率调节电路的复位信号端与系统的复位信号相连;
所述频率调节电路由线性反馈移位寄存器、二选一多路复用器和译码器组成;两个线性反馈移位寄存器的输入端均与一个二选一多路复用器的数据输出端相连;二选一多路复用器的选择位输入端与外围的输入相连,二选一多路复用器的第一数据输入端和第二数据输入端分别与两个线性反馈移位寄存器的输出端相连;译码器的输入端与二选一多路复用器的数据输出端相连。
进一步,所述可重构的振荡器由与门、非门、缓冲器、三态缓冲器组成,与门的第一输入端与外围输入的使能信号相连,第二输入端与三态缓冲器的数据输出端相连,与门的输出端与第一个非门的数据输入端相连;第一个缓冲器的数据输入端与第一个非门的数据输出端相连;每个缓冲器的数据输出端都与相应的三态缓冲器的数据输入端相连;除最后一个缓冲器之外,每个缓冲器的数据输出端与其下一个缓冲器的数据输入端相连;三态缓冲器的使能输入端与外围输入的使能信号相连,三态缓冲器的数据输出端在连到与门第二输入端的同时经过第二个非门输出;
更进一步,在振荡器组阵列中,每个振荡器中都由同一个硬宏单元例化而来各个三态缓冲器的选择位与同一个频率调节电路的输出相连,在产生一位响应的过程中,它们振荡在同一个频率下。
再进一步,在整个产生响应的过程中,振荡器会以多种频率振荡,每产生一位输出响应,频率调节电路会控制振荡器频率发生相应的转移;每一种振荡频率下都存在着一个频率段。
在产生响应的过程中,每次会有两个振荡器被N选二多路复用器选择,它们分别触发一个计数器,当其中一个计数器的计数值达到设定值时,比较器对两个计数器的值进行比较,比较结果作为一位响应输出。
与现有的基于振荡器的PUF相比,本发明在产生响应的过程中,振荡器的振荡频率每输出一位响应就会发生转移,每个振荡频率对应着一个频率段,整个系统中则存在着多个频率段。由于制造上的随机性,各个频率段下的各个振荡器之间的频率快慢顺序会不一样,同时各个频率段之间的转移关系不可预测,因此采用建模攻击的难度会大大增加。
本发明的有益效果为能有效避免现在最常用的数学建模攻击,提高安全性。


图1为传统的基于振荡器的物理不可克隆函数
图2为本发明的一种基于多频率段的物理不可克隆函数结构的示意图
图3是本发明中涉及到的一种可重构振荡器的具体实现形式
图4是本发明中涉及到的一种可重构振荡器的通用实现形式
图5是本发明中涉及到的一种频率调节电路具体实施方式
下面结合附图对本发明做进一步说明。
然而,示例实施例可以以许多不同的形式来实施,且不应该限于这里阐述的实施例。相反,提供这些实施例将使本公开是彻底的并将是完整的,并将使示例实施例的范围充分的传达给本技术领域的人员。
图3所示的电路原理图中,可重构的振荡器包含9个输入端口和1个输出端口
与门输入端(使能信号端)用于接收振荡器使能信号的输入;
三态缓冲器使能输入端(en8,en7, ... , enl):用于接收跳频码输入,改变延时电路的长短从而改变产生的时钟的频率;
反相器输出端(输出信号端)用于输出产生的时钟信号。
图3所示的可重构振荡器内部结构包含一个与门,两个反相器,8个缓冲器和8个三态缓冲器。
与门(U)的第一输入端(使能信号端)与外围输入的使能信号相连,第二输入端与三态缓冲器的数据输出端相连,与门的输出端与第一个非门(UI)的数据输入端相连;
第一个缓冲器(Tl)的数据输入端与第一个非门(Ul)的数据输出端相连;
每个缓冲器的数据输出端都与相应的三态缓冲器的数据输入端相连;除最后一个缓冲器(T8)之外,每个缓冲器的数据输出端与其下一个缓冲器的数据输入端相连;
三态缓冲器的使能输入端与外围输入的使能信号相连,三态缓冲器的数据输出端在连到与门第二输入端的同时经过第二个非门(似)输出。
图3所示的可重构振荡器的功能特征在于,8个三态缓冲器的输入使能信号每次有且只有一个有效,改变这些使能信号的值便可以改变振荡器延时电路的长短,从而改变振荡器产生的时钟信号的频率。这种可重构的振荡器共可以振荡出8种不同频率的时钟信号。
图3所示的可重构振荡器只是一种具体的实现,更具一般性,可以在上述的基础上增加或是减少缓冲器和三态缓冲器组的数目,从而增加或减少振荡频率的种数,如图4所示。
然而,本发明所要求的可重构的振荡器不限于上述的振荡器,凡是可以通过控制位调节振荡频率的振荡器均满足要求。
图5所示的电路原理图中,频率调节电路包含3个输入端口和1个输出端口
时钟信号输入端(图中未标出)主要用来控制各个模块的各个操作;
复位信号输入端(图中未标出)主要用来对各个模块进行复位,使其处于初始状态;
选择位输入端(选择位输入信号端)主要用来接收选择位输入;
译码器输出端(信号输出端)主要将译码得到的跳频码输出。
图5所示的频率调节电路,内部由两个线性反馈移位寄存器、一个二选一多路复用器和一个译码器组成。两个线性反馈移位寄存器(LFSR1和LFSI^)的规格一致,但是由于产生机制有差异,因此输出的序列并不相同;线性反馈移位寄存器的输入端均与二选一多路复用器的数据输出端相连,二选一多路复用器的选择位输入端(选择位输入信号端) 与外围的输入相连,二选一多路复用器的第一数据输入端和第二数据输入端分别与两个线性反馈移位寄存器的输出端(lfsrl_0ut和lfsr2_0Ut)相连;译码器的输入端与二选一多路复用器的输出端相连,译码器的输出端(输出信号端)将跳频码输出。
时钟信号控制着各个模块之间的操作,复位信号在上电时将各个模块复位,使其处于初始状态。
图5所示的频率调节电路的功能特征在于,二选一多路复用器的选择输入位是一个真随机数,因此两个线性反馈移位寄存器的输出之间的选择完全随机,这将使得输出的序列更长更不可预测。译码器只要是用于将二选一多路复用器的输出进行译码,从而生成符合振荡器中三态缓冲器的输入选择位格式的跳频码。
当然,除译码器之外,之前的序列发生器可以由其他方法产生,只要产生的序列随机性够强即可。
图2示意性示出本发明的一个基于多频率段的物理不可克隆函数结构的结构图, 其包含以下端口
各个振荡器的使能信号输入端(图中未标出),用来接收振荡器的使能信号,控制振荡器的开与关;
激励输入端(输入激励端)用来接收外围的激励;
响应输出端(输出端),用来将该结构的响应输出;
还有整个系统的时钟信号和复位信号(图中未标出)。
如图2所示,基于多频率段的物理不可克隆函数结构由多个振荡器、一个N选二多路复用器、一个频率调节电路、两个计数器和一个比较器组成,振荡器的输出时钟与N选二多路复用器的数据输入端相连,激励信号与N选二多路复用器的选择位输入端相连,N选二多路复用器输出的两个时钟信号分别与两个计数器的时钟输入端相连,用来触发计数器, 两个计数器的计数值与一个比较器的数据输入端相连,比较结果作为响应输出的同时通过频率调节电路产生跳频码反馈到振荡器阵列中,跳频码接到各个振荡器中各三态缓冲器的使能输入端。
图2所示的基于多频率段的物理不可克隆函数结构,所有的振荡器都是由同一个硬宏单元例化而来,因此它们的结构完全相同,并且它们都与同一个跳频码相连,因此振荡频率也相同。不同于传统的基于振荡器的物理不可克隆函数,这些振荡器都是可重构的振荡器,在产生响应的过程中,每产生一位响应输出,振荡器的振荡频率便会相应的改变。我们知道,由于制造上的不可控性,振荡器的振荡频率会存在微小的差别,这些有着微小差异的振荡频率便组成了一个频率段。在整个电路中,振荡器的振荡频率有多种,每一种振荡频率都会有一个频率段,因此整个电路中存在着多个频率段。各个频率段之间的转变随机。
基于多频率段的不可克隆函数的工作过程如下
当电路上电时,复位信号将所有模块置于初始状态,计数器全部清零,振荡器全部处于关断状态,频率调节电路输出的跳频码也有一个初始值。一段时间之后,振荡器开始振荡,激励信号也开始有序的产生,用来选择比较的两个振荡器。被用于比较的两个振荡器输出的时钟信号经过N选二多路复用器输出后分别触发两个计数器,当其中的一个计数器达到一定值时,比较器对两个计数器的值进行比较,比较的结果作为一位响应输出,同时这位响应通过频率调节电路产生一个新的跳频码,跳频码反馈到振荡器阵列中,接到各个三态缓冲器的使能输入端从而改变每个振荡器的振荡频率,即使得频率段进行转移。于此同时, 计数器清零,输入激励也发生变化,选择两个新的振荡器重新触发计数器进行比较。如此往复便可以得到一串随机的输出序列。
攻击者如果要通过建模的方式来对本发明进行攻击,其必须解决两个问题
1各个频率段下各个振荡器振荡频率的快慢顺序
2各个频率段之间的转移关系
攻击者不可能通过物理攻击的方式获得频率调节电路的具体实现方式,因为对电路结构一点点的破坏都有可能破坏核心的延时电路从而使其失效。若是仍然以一定的顺序施加适当的激励,尽管还是可以得到一组振荡器之间频率的快慢顺序,但是很明显,这个顺序并不在任意一个频率段内,用其来预测响应得不到正确的结果。
如果采用穷举的方法来破解这种结构的电路,对于对于K+1个振荡器,每个频率段下的快慢顺序均有(K+1) !种,而对于M个频率段,攻击者可以先假定其处于某个频率段,共有M种可能性,产生第一位输出后,根据频率跳变图,频率段转移到剩下的(M-I)个频率段中的任意一个,但是其无法知晓,同样的,之后每产生一位输出,下一个频率段还是 (M-I)种可能性。假设该PUF共输出K位,输出过程中频率段的快慢顺序均有(K+1)种,产生第一位输出时频率段有M种可能,产生之后的(K-I)位时频率段均有(M-I)种可能,攻击成功所需尝试的次数的数学期望如下表所示
表-1破解不同规格PUF所需攻击次数的比较
权利要求
1.一种基于多频率段的物理不可克隆函数结构,其特征在于所述物理不可克隆函数包括可重构的振荡器、频率调节电路、N选二多路复用器、计数器和比较器;多个可重构振荡器组成振荡器阵列,所述振荡器的输出端与一个N选二的多路复用器的输入端相连,振荡器与门的输入端与外围使能输入信号相连;N选二多路复用器的选择输入端与外围的输入激励相连;N选二多路复用器的两个输出端分别与两个计数器的时钟信号相连;两个计数器的复位信号端与系统的复位信号相连,输出端分别与比较器的输入端相连;比较器的输出端与频率调节电路的输入端相连,比较器的复位信号端与系统的复位信号相连;频率调节电路的输出端与振荡器组中那些三态缓冲器的第二输入端相连,频率调节电路的时钟信号输入端与系统的时钟信号相连,频率调节电路的复位信号端与系统的复位信号相连;所述频率调节电路由线性反馈移位寄存器、二选一多路复用器和译码器组成;两个线性反馈移位寄存器的输入端均与一个二选一多路复用器的数据输出端相连;二选一多路复用器的选择位输入端与外围的输入相连,二选一多路复用器的第一数据输入端和第二数据输入端分别与两个线性反馈移位寄存器的输出端相连;译码器的输入端与二选一多路复用器的数据输出端相连。
2.如权利要求1所述的基于多频率段的的物理不可克隆函数结构,其特征在于所述可重构的振荡器由与门、非门、缓冲器、三态缓冲器组成,与门的第一输入端与外围输入的使能信号相连,第二输入端与三态缓冲器的数据输出端相连,与门的输出端与第一个非门的数据输入端相连;第一个缓冲器的数据输入端与第一个非门的数据输出端相连;每个缓冲器的数据输出端都与相应的三态缓冲器的数据输入端相连;除最后一个缓冲器之外,每个缓冲器的数据输出端与其下一个缓冲器的数据输入端相连;三态缓冲器的使能输入端与外围输入的使能信号相连,三态缓冲器的数据输出端在连到与门第二输入端的同时经过第二个非门输出;
3.如权利要求1或2所述的基于多频率段的的物理不可克隆函数结构,其特征在于 在振荡器组阵列中,每个振荡器中都由同一个硬宏单元例化而来各个三态缓冲器的选择位与同一个频率调节电路的输出相连,在产生一位响应的过程中,它们振荡在同一个频率下。
4.如权利要求3所述的基于多频率段的的物理不可克隆函数结构,其特征在于在整个产生响应的过程中,振荡器会以多种频率振荡,每产生一位输出响应,频率调节电路会控制振荡器频率发生相应的转移;每一种振荡频率下都存在着一个频率段。
5.如权利要求1或2所述的基于多频率段的的物理不可克隆函数结构,其特征在于 在产生响应的过程中,每次会有两个振荡器被N选二多路复用器选择,它们分别触发一个计数器,当其中一个计数器的计数值达到设定值时,比较器对两个计数器的值进行比较,比较结果作为一位响应输出。
全文摘要
一种基于多频率段的物理不可克隆函数结构,多个可重构振荡器组成振荡器阵列,振荡器的输出端与一个N选二的多路复用器的输入端相连,振荡器与门的输入端与外围使能输入信号相连;N选二多路复用器的选择输入端与外围的输入激励相连,两个输出端分别与两个计数器的时钟信号相连;两个计数器的复位信号端与系统的复位信号相连,输出端分别与比较器的输入端相连;比较器的输出端与频率调节电路的输入端相连,复位信号端与系统的复位信号相连;频率调节电路的输出端与振荡器组中那些三态缓冲器的第二输入端相连,时钟信号输入端与系统的时钟信号相连,复位信号与系统的复位信号相连。本发明能有效避免现在最常用的数学建模攻击,提高安全性。
文档编号G06F21/00GK102521538SQ201110402738
公开日2012年6月27日 申请日期2011年12月7日 优先权日2011年12月7日
发明者冯忱晖, 张培勇, 欧阳冬生, 项群良 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1