一种物理不可克隆电路结构
技术领域
本发明涉及信息安全领域,尤其涉及一种物理不可克隆电路结构。
背景技术
物理不可克隆函数(Physical Unclonable Function,PUF)是指对一个物理实体输入一个激励,利用其不可避免的内在物理构造的随机差异输出一个不可预测的响应的函数。其广泛用于硬件安全领域。
目前的数字PUF电路结构主要有两种。一种是基于仲裁器的PUF和基于环形振荡器的PUF,利用数字信号传播延时的变化来实现PUF功能。这种结构存在的主要问题是电路的不稳定性,当电路在不同温度、不同电压的环境中工作时,数字信号的传播都会受到影响,造成输出的PUF数据不一致。另一种是SRAM(Static Random Access Memory,静态随机存储器 )PUF,利用SRAM上电时数据的随机性来实现唯一性,然而基于SRAM 的PUF 数据的误码率较高,通常需要较大规模的纠错码电路来保证数据的正确性。例如,使用重复码作为纠错码时,达到6.85x10-7的误码率,产生2048bit的秘钥的PUF电路,需要至少处理7.75kbit的纠错码,也就是说,要产生2048bit的秘钥数据,需要占用的SRAM存储空间为7.75kbit。
发明内容
有鉴于此,本发明提供了一种物理不可克隆电路结构,以实现电路的稳定性,同时避免需要较大规模的纠错电路来保证数据的正确性。
为了解决上述技术问题,本发明采用了如下技术方案:
一种物理不可克隆电路结构,包括:n个无源导体组和n个异或单元,每个所述无源导体组包括m个无源导体,每个所述无源导体包括第一端和第二端,每个所述无源导体的第一端与电源连接,每个所述无源导体的第二端与所述异或单元的输入端连接;
属于同一无源导体组内的无源导体的第二端连接同一所述异或单元的输入端;
当无源导体处于连通状态时,无源导体的第二端输出高电平信号,当无源导体处于断开状态时,无源导体的第二端输出低电平信号,由无源导体的第二端输出的信号输入至异或单元,每个所述异或单元对来自同一所述无源导体组内的各个无源导体的信号进行异或运算得出异或运算结果,所有各个所述异或单元得出的异或运算结果为PUF数据,其中,n、m均为正整数;
同一所述无源导体组内的各个无源导体的宽度不完全相同,且同一所述无源导体组内的至少一部分所述无源导体的宽度与临界宽度之间的宽度差值小于等于第一阈值,以使所述至少一部分所述无源导体在芯片制造过程中具有连通不确定性;
和/或,
在同一所述无源导体组内,至少一部分所述无源导体至少包括第一无源导体段和第二无源导体段,所述第一无源导体段和所述第二无源导体段之间存在间距,至少一部分所述间距与临界间距之间的间距差值小于等于第二阈值,以使所述至少一部分所述无源导体在芯片制造过程中具有连通不确定性;
其中,
所述临界宽度为保证在采用芯片制造工艺制造无源导体时,无源导体一定能够连通的最小宽度;
所述临界间距为当一个无源导体包括多个间隔一定间距的无源导体段时,保证在采用芯片制造工艺制造无源导体时,无源导体一定能够连通的最小间距。
可选地,所述同一所述无源导体组内的无源导体的宽度的取值范围覆盖多个芯片制造工艺条件下对应的临界宽度。
可选地,在同一所述无源导体组内,至少两个所述无源导体的宽度相同。
可选地,所述同一所述无源导体组内的间距的取值范围覆盖多个芯片制造工艺条件下对应的临界间距。
可选地,在同一所述无源导体组内,至少两个所述间距相同。
可选地,所述电路结构还包括:纠错码电路,所述纠错码电路的输入端与每个所述异或单元的输出端连接,所述纠错码电路的输出端输出PUF数据,所述PUF数据的长度为q比特,q为正整数,且q的取值与n的取值以及所述纠错码电路结构相关。
可选地,所述无源导体包括:金属线、硅化多晶硅、非硅化物多晶硅、n型扩散源、p型扩散源、n阱或p阱中之一。
相较于现有技术,本发明具有以下有益效果:
本发明提供的物理不可克隆电路结构基于无源导体的宽度和/或间距在临界值附近时,在制造无源导体的过程中连通不确定性的原理来实现。基于该原理,本发明提供的物理不可克隆电路结构中,同一无源导体组内的各个无源导体的宽度不完全相同,和/或,同一无源导体组内的组成各个无源导体的无源导体段之间的间距不不完全相同,利用该宽度和/或间距差别来实现无源导体连通的随机性,进而实现PUF功能。
而且,由于无源导体的连通与断开在制造完成后即可达到稳定状态,其不会受芯片工作环境的影响,而且不需要大量的纠错码电路作为后处理电路。因此,本发明提供的物理不可克隆电路结构的性能较为稳定,而且避免了需要较大规模的纠错码电路来保证数据的正确性。
附图说明
为了清楚地理解本发明的具体实施方式,下面将描述本发明具体实施方式时用到的附图做一简要说明。
图1是本发明实施例一提供的物理不可克隆电路结构示意图。
图2是本发明实施例二提供的物理不可克隆电路结构示意图。
图3是本发明实施例二提供的纠错码电路的一种具体结构示意图。
图4是本发明实施例三提供的一个无源导体组结构示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行详细描述。
如背景技术部分所述,物理不可克隆函数是利用其不可避免的内在物理构造的随机差异输出一个唯一的、不可预测的响应的函数。基于此,本发明实施例提供的物理不可克隆电路结构基于的原理为:无源导体的宽度和/或间距在临界特征值附近时,在制造无源导体的过程中连通不确定性的原理。
具体地说,宽度和/或间距在临界特征值附近的无源导体在制造过程中,有可能连通也有可能不连通。此时,无源导体的连通和断开状态是随机的。
基于上述原理,本发明提供了物理不可克隆电路结构的具体实施方式。首先参见实施例一。
实施例一
图1是本发明实施例一提供的物理不可克隆电路结构示意图。如图1所示,该物理不可克隆电路结构包括以下结构:
n个无源导体组10(1)至10(n)和n个异或单元20(1)至20(n),其中,n为正整数;
每个无源导体组10均包括m个无源导体NET(0)至NET(m-1),其中,m为正整数;每个无源导体NET包括第一端和第二端,其中,每个无源导体NET的第一端与电源VDD连接,每个无源导体NET的第二端与异或单元20的输入端连接,其中,属于同一无源导体组10内的无源导体NET连接同一所述异或单元20的输入端。如此,在本发明提供的物理不可克隆电路结构中,一个无源导体组10对应一个异或单元20,因此,有多少个无源导体组就对应多少个异或单元。
在本发明实施例中,所述无源导体包括:金属线、硅化多晶硅、非硅化物多晶硅、n型扩散源、p型扩散源、n阱或p阱中之一。
n个所述异或单元20(1)至20(n)对由无源导体第二端输入的信号进行异或运算得到异或运算结果,该异或运算结果即为PUF数据,该PUF数据由异或单元的输出端输出。在本发明实施例中,所述PUF数据的总长度为n比特,其中,n、m均为正整数。
在本发明实施例中,在同一无源导体组10内,m个无源导体NET的无源导体宽度不完全相同。具体地说,在同一无源导体组10内,m个无源导体NET的各个宽度可以互不相同,也可以部分相同,部分不相同。其中,同一无源导体组10内的一部分无源导体NET的宽度与临界宽度之间的宽度差小于等于第一阈值,以使所述至少一部分所述无源导体在芯片制造过程中具有连通不确定性。如此,在本发明实施例提供的物理不可克隆电路结构中,一部分无源导体处于连通状态的同时,另一部分无源导体处于断开状态。
在本发明实施例中,所述临界宽度为保证在采用芯片制造工艺制造无源导体时,无源导体一定能够连通的最小宽度。第一阈值可以是根据多次实验结果获得的经验值。
本发明提供的物理不可克隆电路结构就是利用宽度值在临界宽度附近的无源导体的连通不确定性实现其物理不可克隆功能。
需要说明,临界宽度随着芯片制造工艺条件的变化而变化,即临界宽度与芯片制造工艺条件相关。为了使得本发明提供的物理不可克隆电路结构在采用多个不同的芯片制造工艺时均能够实现物理不可克隆功能,在本发明提供的物理不可克隆电路结构中,其同一无源导体组内的无源导体的宽度值范围覆盖多个不同芯片制造工艺下的临界宽度。
此外,由于相同宽度的无源导体越多,获得临界宽度的概率就越大。而且出现临界宽度的情况越容易,无源导体连通的随机性也就越容易。因此,为了增大获得临界宽度的概率,在同一无源导体组10内,至少有两根无源导体NET具有相同宽度值。
本发明实施例提供的物理不可克隆电路结构的工作过程如下:
无源导体组10(1)至10(n)的所有无源导体NET的第一端与电源VDD连接,当无源导体NET处于连通状态时,无源导体NET的第二端输出高电平,逻辑为“1”,当无源导体处于断开状态时,无源导体的第二端输出低电平,逻辑为“0”。无源导体NET的第二端连接异或单元20的输入端,由于同一无源导体组10内的无源导体NET的宽度不同,在不同芯片制造工艺条件下将无源导体组制造完成后,在同一无源导体组10内,总有一些无源导体NET是连通的,一些无源导体NET是断开的。因此,无源导体NET的第二端中,有些输出高电平,有些输出低电平,其对应的逻辑分别为“1”和“0”。
每个异或单元20将每组无源导体组10内的m个无源导体NET上的信号进行异或运算得出异或运算结果,由其输出端输出异或运算结果。n个异或单元20输出的异或运算结果为PUF数据,且该PUF数据包括q比特位。其中,异或单元20输出的异或运算结果与无源导体NET连通的随机性直接相关。
以上为本发明实施例一提供的物理不可克隆电路结构的具体实施方式。在该具体实施方式中,同一无源导体组内的各个无源导体的宽度不完全相同,利用该宽度差别来实现无源导体连通的随机性,进而实现PUF功能。
而且由于无源导体的连通与断开在制造完成后即可达到稳定状态,其不会受芯片工作环境的影响,而且不需要大量的纠错码电路作为后处理电路。因此,本发明提供的物理不可克隆电路结构的性能较为稳定,而且避免了需要较大规模的纠错码电路来保证数据的正确性。
此外,当芯片应用环境较为恶劣,有可能导致产生的PUF数据的误码率较高,为了提高PUF数据的数据质量,防止随着时间推移造成数据错误,本发明还提供了实施例二。
实施例二
需要说明,实施例二所述的物理不可克隆电路结构是在实施例一的物理不可克隆电路结构的基础上进行改进得到的。所以,实施例二提供的电路结构与实施例一提供的电路结构有诸多相似之处,为了简要起见,本发明实施例仅对其不同之处进行详细描述,其相似之处请参见实施例一的相关描述。
图2是本发明实施例二提供的物理不可克隆电路结构示意图。如图2所示,该电路结构除了包括图1所示的n个无源导体组10(1)至10(n)和n个异或单元20(1)至20(n)之外,还可以包括:
纠错码电路30。该纠错码电路30的输入端与所有异或单元20(1)至20(n)的输出端连接,如此,由异或单元20(1)至20(n)输出的PUF数据经过纠错码电路30处理后,得到有效的PUF输出数据。
需要说明,在本发明实施例中,无源导体组10(1)至10(n)以及异或单元20(1)至20(n)的结构与连接关系与实施例一中的无源导体组10(1)至10(n)以及异或单元20(1)至20(n)的结构与连接关系完全相同,为了简要起见,在此不再详细描述,详细信息请参见实施例一的相关描述。
此外,纠错码电路30可以为任意纠错码电路。根据所选用的纠错码电路不同,本发明实施例提供的物理不可克隆电路结构产生的PUF数据的比特位数q也不同。
需要说明,在本发明实施中,m仅与芯片制造工艺相关,q为最终所需的PUF数据长度,其中,q为正整数,n>= q。当不可克隆电路结构中包括纠错码电路时,q的取值与n的取值以及所述纠错码电路结构相关,且n,q需满足纠错码电路所选算法的相对关系。作为示例,如图3所示,若纠错码电路30采用重复码repeat(3)码与汉明码ham(7,4)码,m=40,q=1024,则n=1024*3*7/4 = 5376。每组有40个不同宽度的无源导体, 一共有5376组,共产生1024bit的PUF数据。
以上为本发明实施例二提供的物理不可克隆电路结构的具体实施方式。在该具体实施方式中,其除了具有实施例一所述的有益效果以外,还能够提高PUF数据的数据质量,防止随着时间推移造成数据错误。
需要说明,在上述实施例一和实施例二中,通过无源导体的宽度值大小来实现无源导体连通的不确定性。作为本发明的另一具体实施例,还可以将每个无源导体分割为多段无源导体段,通过无源导体段之间的间距大小来实现无源导体连通的不确定性。具体参见实施例三。
实施例三
需要说明,实施例三所述的物理不可克隆电路结构与实施例一所述的物理不可电路结构有诸多相似之处,为了简要起见,本发明实施例仅详细描述其不同之处,其相似之处请参见实施例一的相关描述。
与实施例一类似,本发明实施例三提供的物理不可克隆电路结构也包括n个无源导体组10(1)至10(n)和n个异或单元20(1)至20(n),并且无源导体组10(1)至10(n)和异或单元20(1)至20(n)的连接关系与实施例一相同,在此不再详细描述。
其不同之处在于,实施例三提供的物理不可克隆电路结构中,如图4(图4示出了一个无源导体组与一个异或单元的连接关系示意图)所示,其无源导体组内的每一个无源导体NET均至少包括相互分割的第一无源导体段S1和第二无源导体段S2,第一无源导体段S1和第二无源导体段S2之间存在一定间距D,并且无源导体NET的第一无源导体段S1和第二无源导体段S2之间的间距D(1)至D(m)不完全相同。作为本发明的一可选实施例,每一个无源导体NET包括两段相互分割的第一无源导体段S1和第二无源导体段S2。
需要说明,在本发明实施例中,在同一无源导体组内,一部分第一无源导体段S1和第二无源导体段S2之间的间距D与临界间距的间距差值小于等于第二阈值,以使所述至少一部分所述无源导体在芯片制造过程中具有连通不确定性。如此,在本发明实施例提供的物理不可克隆电路结构中,一部分无源导体处于连通状态,另一部分无源导体处于断开状态。
在本发明实施例中,所述临界间距为当一个无源导体包括多个间隔一定间距的无源导体段时,保证在采用芯片制造工艺制造无源导体时,无源导体一定能够连通的最小间距。第二阈值可以为是根据多次实验结果获得的经验值。
本发明实施例二提供的物理不可克隆电路结构就是利用间距值在临界间距附近时,其对应的第一无源导体段S1和第二无源导体段S2的连通不确定性实现物理不可克隆功能。
需要说明,临界间距随着芯片制造工艺条件的变化而变化,即临界间距与芯片制造工艺条件相关。为了使得本发明实施例二提供的物理不可克隆电路结构在采用多个不同芯片制造工艺时均能够实现物理不可克隆功能,在本发明提供的物理不可克隆电路结构中,其同一无源导体组内的第一无源导体段和第二无源导体段的间距值范围覆盖多个不同芯片制造工艺下的临界间距。
此外,由于相同间距的无源导体越多,获得临界间距的概率就越大。而且出现临界间距的情况越容易,无源导体连通的随机性也就越容易。因此,为了增大获得临界间距的概率,在同一无源导体组内,至少有两个无源导体的无源导体段之间的间距相同。
以上为本发明实施例三提供的物理不可克隆电路结构的具体实施方式,在该具体实施方式中,同一无源导体组内的组成各个无源导体的无源导体段之间的间距不完全相同,利用该宽度和/或间距差别来实现无源导体连通的随机性,进而实现PUF功能。
而且由于无源导体的连通与断开在制造完成后即可达到稳定状态,其不会受芯片工作环境的影响,而且不需要大量的纠错码电路作为后处理电路。因此,本发明提供的物理不可克隆电路结构的性能较为稳定,而且避免了需要较大规模的纠错码电路来保证数据的正确性。
此外,作为本发明的另一具体实施例,还可以与实施例二类似,在上述实施例三所述的物理不可克隆电路结构的基础上,增设纠错码电路。该对应的电路结构与实施例二所述的电路结构类似,本领域技术人员基于实施例二所述的电路结构能够很容易想到该具体实施例,所以在此不再详细描述。
此外,作为本发明实施例的扩展实施例,可以将上述实施例一和实施例三组合起来,即在同一无源导体组内,至少部分无源导体的宽度可以不同,并且至少无源导体可以包括相互分割的第一无源导体段和第二无源导体段,并且第一无源导体段和第二无源导体段之间的间距不同。如此,在该组合后的实施例中,通过无源导体的宽度和无源导体段之间的间距的差异实现无源导体通断的不确定性,从而实现物理不可克隆电路结构的PUF功能。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。