CN111404686A - 一种基于otp存储阵列的puf密钥生成系统和方法 - Google Patents
一种基于otp存储阵列的puf密钥生成系统和方法 Download PDFInfo
- Publication number
- CN111404686A CN111404686A CN202010316991.XA CN202010316991A CN111404686A CN 111404686 A CN111404686 A CN 111404686A CN 202010316991 A CN202010316991 A CN 202010316991A CN 111404686 A CN111404686 A CN 111404686A
- Authority
- CN
- China
- Prior art keywords
- parameter
- programming
- parameters
- key
- voltage
- 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
Images
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/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Read Only Memory (AREA)
- Semiconductor Memories (AREA)
Abstract
本发明提供了一种基于OTP存储阵列的PUF密钥生成系统和方法,由于反熔丝OTP存储单元中晶体管的栅极氧化物在工艺制造过程中会出现随机缺陷,因此,对反熔丝OTP存储阵列中的部分或全部存储单元进行编程后,会击穿存储单元中晶体管的栅极氧化物,使得不同存储单元具有不同的物理特性,将物理特性参数转换为电性参数后,不同存储单元表现出的电性参数也是不同的,且电性参数的分布是随机的,从而可以根据电性参数重构存储单元对应的密钥值,并根据OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥,不仅可以简单高效地提取到密钥,而且由于编程后OTP存储阵列的物理特性稳定性较好,因此,可以提高提取密钥的稳定性。
Description
技术领域
本发明涉及芯片密钥技术领域,更具体地说,涉及一种基于OTP存储阵列的PUF密钥生成系统和方法。
背景技术
半导体行业的发展已经进入深亚微米时代,由于深亚微米制造过程中存在未知的变量,使得集成电路中每个晶体管都拥有轻微不同的物理属性,而物理属性是无法被复制或者克隆的,因此,采用物理不可克隆函数(Physical Unclonable Function,PUF)提取与芯片物理属性相关的阈值电压、导通电流等参数作为加解密所需的密钥,已经被越来越多的应用到半导体芯片的安全防御中。但是,现有技术中并没有一种能够简单、稳定的提取芯片密钥的方案。
发明内容
有鉴于此,本发明提供了一种基于OTP存储阵列的PUF密钥生成系统和方法,以简单、稳定的提取密钥。
为实现上述目的,本发明提供如下技术方案:
一种基于OTP存储阵列的PUF密钥生成系统,包括编程单元和密钥重构单元;
所述编程单元用于对反熔丝OTP存储阵列中的部分或全部存储单元进行编程,以使不同的存储单元具有不同的物理特性;
所述密钥重构单元用于将所述存储单元的物理特性参数转换为电性参数,所述电性参数包括频率参数、电流参数和电压参数,并根据所述电性参数重构所述存储单元对应的密钥值,根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
可选地,所述密钥重构单元根据所述电性参数重构所述存储单元对应的密钥值包括:将所述电性参数与参考参数进行比较,若比较结果为所述电性参数大于所述参考参数,所述重构单元将所述存储单元对应的密钥值重构为1;若比较结果为所述电性参数小于或等于所述参考参数,所述重构单元将所述存储单元对应的密钥值重构为0。
可选地,所述密钥重构单元包括比较器、参考电路和重构电路;
所述比较器与所述反熔丝OTP存储阵列相连,用于将所述存储单元的物理特性参数转换为电流参数或电压参数,并将所述电流参数与参考电路输入的参考电流参数进行比较,或将所述电压参数与参考电路输入的参考电压参数进行比较;
所述重构电路用于根据所述比较器输出的比较结果重构密钥值,并根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
可选地,所述密钥重构单元包括RC振荡器和频率检测电路;
所述RC振荡器与所述反熔丝OTP存储阵列相连,用于将所述存储单元的物理特性参数转换为频率参数;
所述频率检测电路用于检测所述RC振荡器输出的时钟信号的频率参数,并根据所述频率参数重构所述存储单元对应的密钥值,根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
可选地,所述密钥重构单元包括RC充放电电路和电压检测电路;
所述RC充放电电路与所述反熔丝OTP存储阵列相连,用于将所述存储单元的物理特性参数转换为电压参数;
所述电压检测电路用于检测所述存储单元的电压参数,并根据所述电压参数重构所述存储单元对应的密钥值,根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
可选地,所述编程单元对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:所述编程单元采用相同的编程电压对反熔丝OTP存储阵列中的部分或全部存储单元进行编程。
可选地,所述编程单元对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:采用较弱的编程条件对反熔丝OTP存储阵列中的部分或全部存储单元进行编程;
其中,较弱的编程条件包括编程电压范围为3V~9V,驱动电流大于10uA,编程时间大于1us。
可选地,所述存储单元包括选择管和存储管,所述存储管为叉指型存储管,所述叉指型存储管包括多个叉指单元;对所述存储单元进行编程时,同一叉指型存储管中任意个数的叉指单元被击穿,以使不同的叉指单元具有不同的物理特征。
一种基于OTP存储阵列的PUF密钥生成方法,包括:
对反熔丝OTP存储阵列中的部分或全部存储单元进行编程,以使不同的存储单元具有不同的物理特性;
将所述存储单元的物理特性参数转换为电性参数,所述电性参数包括频率参数、电流参数和电压参数;
根据所述电性参数重构所述存储单元对应的密钥值,根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
可选地,根据所述电性参数重构所述存储单元对应的密钥值包括:
将所述电性参数与参考参数进行比较;
若比较结果为所述电性参数大于所述参考参数,将所述存储单元对应的密钥值重构为1;
若比较结果为所述电性参数小于或等于所述参考参数,将所述存储单元对应的密钥值重构为0。
可选地,
将所述存储单元的物理特性参数转换为电性参数,根据所述电性参数重构所述存储单元对应的密钥值包括:
通过RC振荡器将所述存储单元的物理特性参数转换为频率参数,通过频率检测电路根据所述频率参数重构所述存储单元对应的密钥值;
或者,通过RC充放电电路将所述存储单元的物理特性参数转换为电压参数,通过电压检测电路根据所述电压参数重构所述存储单元对应的密钥值;
或者,通过比较器将所述存储单元的物理特性参数转换为电流参数或电压参数,并将所述电流参数与参考电路输入的参考电流参数进行比较,或将所述电压参数与参考电路输入的参考电压参数进行比较,通过重构电路根据比较结果重构所述存储单元对应的密钥值。
可选地,对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:
采用相同的编程电压对反熔丝OTP存储阵列中的部分或全部存储单元进行编程。
可选地,所述编程单元对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:采用较弱的编程条件对反熔丝OTP存储阵列中的部分或全部存储单元进行编程;
其中,较弱的编程条件包括编程电压范围为3V~9V,驱动电流大于10uA,编程时间大于1us。
与现有技术相比,本发明所提供的技术方案具有以下优点:
本发明所提供的基于OTP存储阵列的PUF密钥生成系统和方法,对反熔丝OTP存储阵列中的部分或全部存储单元进行编程,可以使得反熔丝OTP存储阵列中不同存储单元具有不同的物理特性,从而可以将不同的存储单元的物理特性参数转换为不同的电性参数,进而可以根据电性参数重构存储单元对应的密钥值,并根据OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
由于反熔丝OTP存储单元中晶体管的栅极氧化物在工艺制造过程中会出现随机缺陷,因此,对反熔丝OTP存储阵列中的部分或全部存储单元进行编程后,会击穿存储单元中晶体管的栅极氧化物,使得不同存储单元具有不同的物理特性如电阻电容特性,将物理特性参数转换为电性参数后,不同存储单元表现出的电性参数也是不同的,且电性参数的分布是随机的,从而不仅可以简单高效地提取到密钥,而且由于编程后OTP存储阵列的物理特性稳定性较好,因此,可以提高提取密钥的稳定性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种基于OTP存储阵列的PUF密钥生成系统的结构示意图;
图2为本发明实施例提供的一种OTP存储单元的结构示意图;
图3为本发明实施例提供的一种OTP存储单元的俯视结构示意图;
图4为本发明实施例提供的一种密钥重构单元的结构示意图;
图5为本发明实施例提供的另一种密钥重构单元的结构示意图;
图6为本发明实施例提供的又一种密钥重构单元的结构示意图;
图7为本发明实施例提供的一种RC充电等效电路的结构示意图;
图8为本发明实施例提供的一种RC放电等效电路的结构示意图;
图9为本发明实施例提供的一种基于OTP存储阵列的PUF密钥生成方法的流程图。
具体实施方式
以上是本发明的核心思想,为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例还提供了一种基于OTP存储阵列的PUF密钥生成系统,如图1所示,包括编程单元10和密钥重构单元11。
其中,编程单元10用于对反熔丝OTP存储阵列20中的部分或全部存储单元进行编程,以使不同的存储单元具有不同的物理特性。
密钥重构单元11用于将存储单元的物理特性参数转换为电性参数,电性参数包括频率参数、电流参数和电压参数,并根据电性参数重构存储单元对应的密钥值,根据OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
如图2所示,反熔丝OTP存储阵列20包括多个OTP存储单元,每个OTP存储单元包括第一晶体管M1和第二晶体管M2,第一晶体管M1和第二晶体管M2的栅极与同一条字线如WL0相连,第一晶体管M1的第一端与位线如BL0相连,第一晶体管M1的第二端与第二晶体管M2的第一端相连,第二晶体管M2的第二端悬空。当然,本发明实施例中仅以OTP存储单元包括两个晶体管为例进行说明,但是,本发明并不仅限于此,在其他实施例中,OTP存储单元可以包括一个晶体管或三个及以上个晶体管。
本发明实施例中,编程单元10对反熔丝OTP存储阵列20中的部分或全部存储单元进行编程包括:编程单元10采用相同的编程电压对反熔丝OTP存储阵列20中的部分或全部存储单元进行编程。如采用相同的字线电压和位线电压对第一晶体管M1和第二晶体管M2进行编程,编程后反熔丝OTP存储单元中第二晶体管M2中的栅极氧化物被击穿,击穿后反熔丝OTP存储单元的会保持其状态。也就是说,编程后,OTP存储单元的物理特性会被固定下来。
但是,由于反熔丝OTP存储单元中晶体管的栅极氧化物在工艺制造过程中会出现随机缺陷,因此,编程击穿栅极氧化物后,不同存储单元表现出的物理特性不同即等效电阻或电容不同,将物理特性参数转换为电性参数后,不同存储单元表现出的电性参数也是不同的,并且,电性参数的分布也是随机的,该电性参数包括频率参数、电流参数和电压参数,从而可以根据存储单元表现出的电性参数,获得具有OTP存储阵列的半导体设备的固有指纹或密钥。
也就是说,由于对反熔丝OTP存储阵列中的部分或全部存储单元进行编程后,可以使得不同存储单元具有不同的物理特性,因此,可以将不同的存储单元的物理特性参数转换为不同的电性参数,进而可以根据电性参数重构存储单元对应的密钥值,并根据OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥,不仅可以简单高效地提取到密钥,而且由于编程后OTP存储阵列的物理特性稳定性较好,因此,可以提高提取密钥的稳定性。
并且,由于通过选择部分如随机个数的存储单元进行编程,可以使得OTP存储阵列具有不同的物理特性分布,如获得随机的物理特性分布,因此,可以使得提取的密钥具有随机性,提高了密钥的安全性。
可选地,本发明实施例中,可以采用较弱的编程条件对反熔丝OTP存储阵列20中的部分或全部存储单元进行编程,以使反熔丝OTP存储阵列20在编程后呈现更宽的电阻电容即RC分布特性,进而提取出的密钥值更随机。
其中,较弱的编程条件是指施加的编程电压VPP的电压值比正常编程电压小,驱动能力比正常要求低,施加时间比正常时间短。可选地,正常CMOS0.18um标准工艺反熔丝OTP编程电压范围为7V~9V,较弱编程条件下编程电压可比正常电压减小0~2V,即为5V~9V。正常反熔丝OTP击穿需要的驱动电流大于50uA,较弱编程条件下驱动电流可调整至大于10uA。正常反熔丝OTP编程施加时间大于10us,较弱编程条件下编程时间可调整至大于1us。
可选地,如图3所示,本发明实施例中每个OTP存储单元中的第二晶体管M2都为叉指型存储管,该叉指型存储管包括多个叉指单元,叉指单元的个数大于或等于2,如图3所示包括三个叉指单元C1、C2和C3。其中,第一晶体管M1为选择管,第二晶体管M2为存储管。
在图3所示的结构中,第二晶体管M2的有源层为叉指型,栅极为条形,第一晶体管M1的源极为位线BL0相连,第一晶体管M1和第二晶体管M2的栅极都与字线WL0相连。
采用叉指型存储管,编程过程中存储管栅氧击穿可能随机发生在叉指单元C1、C2、C3中的任意1个或多个叉指单元中,被击穿的叉指单元呈现电阻特性,没有被击穿的叉指单元呈现电容特性,即同一叉指型存储管中的不同叉指单元会呈现不同的物理特性。因此,使用叉指型存储管组成的OTP存储阵列在编程后可呈现更随机的RC分布特性,即呈现更随机的物理特性分布,进而得到更随机的密钥。
可选地,密钥重构单元根据电性参数重构存储单元对应的密钥值包括:将存储单元的电性参数和参考参数进行比较,若比较结果为电性参数大于参考参数,重构单元将存储单元对应的密钥值重构为1;若比较结果为电性参数小于或等于参考参数,重构单元将存储单元对应的密钥值重构为0。
以电性参数是电流参数为例,假设参考电流参数等于15μA,则当电性参数即电流参数大于15μA时,将存储单元对应的密钥值重构为1,当电性参数即电流参数小于或等于15μA时,将存储单元对应的密钥值重构为0。基于此,可以根据输出电性参数的顺序排列部分或全部存储单元的密钥值构成密钥,如10010101…。当然,本发明并不仅限于此,在其他实施例中,可以根据实际需要对密钥值进行设定,即密钥值可以为1、0之外的字母或数字。
在本发明的一个实施例中,如图4所示,密钥重构单元11包括比较器110、参考电路111和重构电路112。
其中,比较器110与反熔丝OTP存储阵列20相连,用于将存储单元的物理特性参数转换为电流参数或电压参数,并将电流参数与参考电路111输入的参考电流参数进行比较,或将电压参数与参考电路111输入的参考电压参数进行比较;重构电路112用于根据比较器110输出的比较结果重构密钥值,并根据OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
需要说明的是,比较器110会依次与各个存储单元相连如串联,比较器110与每个存储单元相连后,会读取存储单元的存储的电压或电流,即将存储单元的物理特性参数转换为电压参数或电流参数,并进行比较,以便根据比较结果得到密钥值。
在本发明的另一实施例中,如图5所示,密钥重构单元11包括RC振荡器113和频率检测电路114。
其中,RC振荡器113与反熔丝OTP存储阵列20相连,用于将存储单元的物理特性参数转换为频率参数;频率检测电路114用于检测RC振荡器113输出的时钟信号的频率参数,并根据频率参数重构存储单元对应的密钥值,根据OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
同样,RC振荡器113会依次与各个存储单元相连如串联,与每个存储单元相连后,RC振荡器113会输出时钟信号,频率检测电路114会检测时钟信号的频率,并根据频率参数重构密钥值。
在本发明的另一实施例中,如图6所示,密钥重构单元11包括RC充放电电路115和电压检测电路116。
其中,RC充放电电路115与反熔丝OTP存储阵列20相连,用于将存储单元的物理特性参数转换为电压参数;
电压检测电路116用于检测存储单元的电压参数,并根据电压参数重构存储单元对应的密钥值,根据OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。如检测得到的频率为高频,则重构密钥值为1,检测得到的频率为低频,则重构密钥值为0。
同样,RC充放电电路115会依次与各个存储单元相连如串联,与每个存储单元相连后,RC充放电电路115会对存储单元进行充放电。当RC充放电电路115对反熔丝OTP存储阵列20中的存储单元充电时,其等效电路如图7所示,当RC充放电电路115对反熔丝OTP存储阵列20中的存储单元放电时,其等效电路如图8所示。通过RC充放电电路115经过存储单元进行充放电,由于存储单元编程后反熔丝电阻特性随机分布,在相同的充放电时间内,图7所示C2经过不同存储反熔丝电阻的单元充电后存储不同的电荷量,呈现出不同的电压值,图8所示C1经过不同存储反熔丝电阻的单元放电后存储不同的电荷量,呈现出不同的电压值。通过RC充放电电路115可以将存储单元的物理特性参数转换为电压参数,通过电压检测电路116检测存储单元的电压参数,并根据电压参数重构密钥值。如检测得到的电压参数为高电平,则重构密钥值为1,检测得到的电压参数为低电平,则重构密钥值为0。
需要说明的是,本发明实施例中还可以采用其他电路将存储单元的物理特性参数转换为电性参数,在此不再一一赘述。
本发明所提供的基于OTP存储阵列的PUF密钥生成系统,不仅可以简单高效地提取到密钥,而且由于编程后OTP存储阵列的物理特性稳定性较好,因此,可以提高提取密钥的稳定性。并且,由于本发明中可以通过选择部分如随机个数的存储单元进行编程,来使得OTP存储阵列具有不同的物理特性分布,如获得随机的物理特性分布,因此,可以使得提取的密钥具有随机性,提高了密钥的安全性。此外,本发明中可以通过改变参考参数的值,改变重构得到的密钥值,从而可以根据同一OTP存储阵列重构出不同的密钥,进而提高了密钥的安全性和实用性。
本发明实施例提供了一种基于OTP存储阵列的PUF密钥生成方法,如图9所示,包括:
S101:对反熔丝OTP存储阵列中的部分或全部存储单元进行编程,以使不同的存储单元具有不同的物理特性;
如图2所示,反熔丝OTP存储阵列包括多个OTP存储单元,每个OTP存储单元包括第一晶体管M1和第二晶体管M2,第一晶体管M1和第二晶体管M2的栅极与同一条字线如WL0相连,第一晶体管M1的第一端与位线如BL0相连,第一晶体管M1的第二端与第二晶体管M2的第一端相连,第二晶体管M2的第二端悬空。当然,本发明实施例中仅以OTP存储单元包括两个晶体管为例进行说明,但是,本发明并不仅限于此,在其他实施例中,OTP存储单元可以包括一个晶体管或三个及以上个晶体管。
本发明实施例中,对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:采用相同的编程电压对反熔丝OTP存储阵列中的部分或全部存储单元进行编程。如采用相同的字线电压和位线电压对第一晶体管M1和第二晶体管M2进行编程,编程后反熔丝OTP存储单元中第一晶体管M1栅极氧化物被击穿,击穿后反熔丝OTP存储单元的会保持其状态。也就是说,编程后,OTP存储单元的物理特性会被固定下来。
但是,由于反熔丝OTP存储单元中晶体管的栅极氧化物在工艺制造过程中会出现随机缺陷,因此,编程击穿栅极氧化物后,不同存储单元表现出的物理特性不同即等效电阻或电容不同,导致不同存储单元的电性参数不同,并且,电性参数的分布也是随机的,该电性参数包括频率参数、电流参数和电压参数,从而可以根据存储单元的电性参数,获得具有OTP存储阵列的半导体设备的固有指纹或密钥。
S102:将存储单元的物理特性参数转换为电性参数,电性参数包括频率参数、电流参数和电压参数;
采用相同的编程电压对部分或全部存储单元进行编程之后,由于不同的存储单元的物理特性不同,且存储单元的电性参数是由其物理特性决定的,因此,不同存储单元的电性参数也不同,从而可以获得部分或全部经过编程的存储单元的电性参数,并根据部分或全部存储单元的电性参数获得密钥值。
其中,将所述存储单元的物理特性参数转换为电性参数,根据所述电性参数重构所述存储单元对应的密钥值包括:
通过RC振荡器将所述存储单元的物理特性参数转换为频率参数,通过频率检测电路根据所述频率参数重构所述存储单元对应的密钥值;
或者,通过RC充放电电路将所述存储单元的物理特性参数转换为电压参数,通过电压检测电路根据所述电压参数重构所述存储单元对应的密钥值;
或者,通过比较器将所述存储单元的物理特性参数转换为电流参数或电压参数,并将所述电流参数与参考电路输入的参考电流参数进行比较,或将所述电压参数与参考电路输入的参考电压参数进行比较,通过重构电路根据比较结果重构所述存储单元对应的密钥值。
具体过程在上述实施例中已经说明,在此不再赘述。
S103:根据电性参数重构存储单元对应的密钥值,根据OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
可选地,根据电性参数重构存储单元对应的密钥值包括:
将所述电性参数与参考参数进行比较;
若比较结果为电性参数大于参考参数,将存储单元对应的密钥值重构为1;若比较结果为电性参数小于或等于参考参数,将存储单元对应的密钥值重构为0。
以电性参数是电流参数为例,假设参考电流参数等于15μA,则当电性参数即电流参数大于15μA时,将存储单元对应的密钥值重构为1,当电性参数即电流参数小于或等于15μA时,将存储单元对应的密钥值重构为0。基于此,可以根据输出电性参数的顺序排列部分或全部存储单元的密钥值构成密钥,如10010101…。当然,本发明并不仅限于此,在其他实施例中,可以根据实际需要对密钥值进行设定,即密钥值可以为1、0之外的字母或数字。
当然,本发明并不仅限于此,在其他实施例中,也可以直接根据电性参数重构密钥值,如检测得到的频率为高频,则重构密钥值为1,检测得到的频率为低频,则重构密钥值为0;检测得到的电压参数为高电平,则重构密钥值为1,检测得到的电压参数为低电平,则重构密钥值为0。
本发明实施例提供的基于OTP存储阵列的PUF密钥生成方法,不仅可以简单高效地提取到密钥,而且由于编程后OTP存储阵列的物理特性稳定性较好,因此,可以提高提取密钥的稳定性。并且,由于本发明中可以通过选择部分如随机个数的存储单元进行编程,来使得OTP存储阵列具有不同的物理特性分布,如获得随机的物理特性分布,因此,可以使得提取的密钥具有随机性,提高了密钥的安全性。此外,本发明中可以通过改变参考参数的值,改变重构得到的密钥值,从而可以根据同一OTP存储阵列重构出不同的密钥,进而提高了密钥的安全性和实用性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (13)
1.一种基于OTP存储阵列的PUF密钥生成系统,其特征在于,包括编程单元和密钥重构单元;
所述编程单元用于对反熔丝OTP存储阵列中的部分或全部存储单元进行编程,以使不同的存储单元具有不同的物理特性;
所述密钥重构单元用于将所述存储单元的物理特性参数转换为电性参数,所述电性参数包括频率参数、电流参数和电压参数,并根据所述电性参数重构所述存储单元对应的密钥值,根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
2.根据权利要求1所述的系统,其特征在于,所述密钥重构单元根据所述电性参数重构所述存储单元对应的密钥值包括:将所述电性参数与参考参数进行比较,若比较结果为所述电性参数大于所述参考参数,所述重构单元将所述存储单元对应的密钥值重构为1;若比较结果为所述电性参数小于或等于所述参考参数,所述重构单元将所述存储单元对应的密钥值重构为0。
3.根据权利要求2所述的系统,其特征在于,所述密钥重构单元包括比较器、参考电路和重构电路;
所述比较器与所述反熔丝OTP存储阵列相连,用于将所述存储单元的物理特性参数转换为电流参数或电压参数,并将所述电流参数与参考电路输入的参考电流参数进行比较,或将所述电压参数与参考电路输入的参考电压参数进行比较;
所述重构电路用于根据所述比较器输出的比较结果重构密钥值,并根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
4.根据权利要求1所述的系统,其特征在于,所述密钥重构单元包括RC振荡器和频率检测电路;
所述RC振荡器与所述反熔丝OTP存储阵列相连,用于将所述存储单元的物理特性参数转换为频率参数;
所述频率检测电路用于检测所述RC振荡器输出的时钟信号的频率参数,并根据所述频率参数重构所述存储单元对应的密钥值,根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
5.根据权利要求1所述的系统,其特征在于,所述密钥重构单元包括RC充放电电路和电压检测电路;
所述RC充放电电路与所述反熔丝OTP存储阵列相连,用于将所述存储单元的物理特性参数转换为电压参数;
所述电压检测电路用于检测所述存储单元的电压参数,并根据所述电压参数重构所述存储单元对应的密钥值,根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
6.根据权利要求1所述的系统,其特征在于,所述编程单元对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:所述编程单元采用相同的编程电压对反熔丝OTP存储阵列中的部分或全部存储单元进行编程。
7.根据权利要求1或6所述的系统,其特征在于,所述编程单元对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:采用较弱的编程条件对反熔丝OTP存储阵列中的部分或全部存储单元进行编程;
其中,较弱的编程条件包括编程电压范围为3V~9V,驱动电流大于10uA,编程时间大于1us。
8.根据权利要求1所述的系统,其特征在于,所述存储单元包括选择管和存储管,所述存储管为叉指型存储管,所述叉指型存储管包括多个叉指单元;对所述存储单元进行编程时,同一叉指型存储管中任意个数的叉指单元被击穿,以使不同的叉指单元具有不同的物理特征。
9.一种基于OTP存储阵列的PUF密钥生成方法,其特征在于,包括:
对反熔丝OTP存储阵列中的部分或全部存储单元进行编程,以使不同的存储单元具有不同的物理特性;
将所述存储单元的物理特性参数转换为电性参数,所述电性参数包括频率参数、电流参数和电压参数;
根据所述电性参数重构所述存储单元对应的密钥值,根据所述OTP存储阵列中部分或全部存储单元对应的密钥值得到密钥。
10.根据权利要求9所述的方法,其特征在于,根据所述电性参数重构所述存储单元对应的密钥值包括:
将所述电性参数与参考参数进行比较;
若比较结果为所述电性参数大于所述参考参数,将所述存储单元对应的密钥值重构为1;
若比较结果为所述电性参数小于或等于所述参考参数,将所述存储单元对应的密钥值重构为0。
11.根据权利要求9所述的方法,其特征在于,将所述存储单元的物理特性参数转换为电性参数,根据所述电性参数重构所述存储单元对应的密钥值包括:
通过RC振荡器将所述存储单元的物理特性参数转换为频率参数,通过频率检测电路根据所述频率参数重构所述存储单元对应的密钥值;
或者,通过RC充放电电路将所述存储单元的物理特性参数转换为电压参数,通过电压检测电路根据所述电压参数重构所述存储单元对应的密钥值;
或者,通过比较器将所述存储单元的物理特性参数转换为电流参数或电压参数,并将所述电流参数与参考电路输入的参考电流参数进行比较,或将所述电压参数与参考电路输入的参考电压参数进行比较,通过重构电路根据比较结果重构所述存储单元对应的密钥值。
12.根据权利要求9所述的方法,其特征在于,对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:
采用相同的编程电压对反熔丝OTP存储阵列中的部分或全部存储单元进行编程。
13.根据权利要求9或12所述的方法,其特征在于,所述编程单元对反熔丝OTP存储阵列中的部分或全部存储单元进行编程包括:采用较弱的编程条件对反熔丝OTP存储阵列中的部分或全部存储单元进行编程;
其中,较弱的编程条件包括编程电压范围为3V~9V,驱动电流大于10uA,编程时间大于1us。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010316991.XA CN111404686B (zh) | 2020-04-21 | 2020-04-21 | 一种基于otp存储阵列的puf密钥生成系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010316991.XA CN111404686B (zh) | 2020-04-21 | 2020-04-21 | 一种基于otp存储阵列的puf密钥生成系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111404686A true CN111404686A (zh) | 2020-07-10 |
CN111404686B CN111404686B (zh) | 2023-10-10 |
Family
ID=71413811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010316991.XA Active CN111404686B (zh) | 2020-04-21 | 2020-04-21 | 一种基于otp存储阵列的puf密钥生成系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111404686B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1776909A (zh) * | 2004-10-14 | 2006-05-24 | 美国博通公司 | 可编程集成电路芯片及其操作方法 |
CN101359509A (zh) * | 2008-09-02 | 2009-02-04 | 北京芯技佳易微电子科技有限公司 | 一次性可编程存储器电路及其编程和读取方法 |
CN101686036A (zh) * | 2008-09-25 | 2010-03-31 | 上海华虹Nec电子有限公司 | 提高芯片内部rc震荡器精度的装置及其使用方法 |
US20180013431A1 (en) * | 2016-07-10 | 2018-01-11 | Imec Vzw | Breakdown-based physical unclonable function |
CN109087679A (zh) * | 2018-07-27 | 2018-12-25 | 上海华力集成电路制造有限公司 | 存储单元及其构成的存储阵列和otp |
CN109219884A (zh) * | 2018-08-30 | 2019-01-15 | 深圳市为通博科技有限责任公司 | 存储单元、存储器件以及存储单元的操作方法 |
US20190068383A1 (en) * | 2017-08-25 | 2019-02-28 | Synopsys, Inc. | Gate Oxide Breakdown in OTP Memory Cells for Physical Unclonable Function (PUF) Security |
CN109842488A (zh) * | 2017-11-28 | 2019-06-04 | 中天安泰(北京)信息技术有限公司 | 用于物理芯片内的密钥生成组件 |
CN109962782A (zh) * | 2019-01-28 | 2019-07-02 | 湖北大学 | 基于otp电路的puf密钥稳定性增强方法 |
CN110491434A (zh) * | 2019-08-23 | 2019-11-22 | 上海华虹宏力半导体制造有限公司 | 一种闪存存储器装置及其编程方法 |
-
2020
- 2020-04-21 CN CN202010316991.XA patent/CN111404686B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1776909A (zh) * | 2004-10-14 | 2006-05-24 | 美国博通公司 | 可编程集成电路芯片及其操作方法 |
CN101359509A (zh) * | 2008-09-02 | 2009-02-04 | 北京芯技佳易微电子科技有限公司 | 一次性可编程存储器电路及其编程和读取方法 |
CN101686036A (zh) * | 2008-09-25 | 2010-03-31 | 上海华虹Nec电子有限公司 | 提高芯片内部rc震荡器精度的装置及其使用方法 |
US20180013431A1 (en) * | 2016-07-10 | 2018-01-11 | Imec Vzw | Breakdown-based physical unclonable function |
US20190068383A1 (en) * | 2017-08-25 | 2019-02-28 | Synopsys, Inc. | Gate Oxide Breakdown in OTP Memory Cells for Physical Unclonable Function (PUF) Security |
CN109842488A (zh) * | 2017-11-28 | 2019-06-04 | 中天安泰(北京)信息技术有限公司 | 用于物理芯片内的密钥生成组件 |
CN109087679A (zh) * | 2018-07-27 | 2018-12-25 | 上海华力集成电路制造有限公司 | 存储单元及其构成的存储阵列和otp |
CN109219884A (zh) * | 2018-08-30 | 2019-01-15 | 深圳市为通博科技有限责任公司 | 存储单元、存储器件以及存储单元的操作方法 |
CN109962782A (zh) * | 2019-01-28 | 2019-07-02 | 湖北大学 | 基于otp电路的puf密钥稳定性增强方法 |
CN110491434A (zh) * | 2019-08-23 | 2019-11-22 | 上海华虹宏力半导体制造有限公司 | 一种闪存存储器装置及其编程方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111404686B (zh) | 2023-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7195311B2 (ja) | フラッシュメモリデバイスのためのハッキング防止メカニズム | |
US12068038B2 (en) | Method and apparatus for PUF generator characterization | |
US10216965B2 (en) | Systems and methods for generating physically unclonable functions from non-volatile memory cells | |
US11190365B2 (en) | Method and apparatus for PUF generator characterization | |
CN107437431B (zh) | 非易失性存储装置 | |
Cambou et al. | PUF designed with Resistive RAM and Ternary States | |
CN108958707A (zh) | 具有puf及随机数产生器的电路及其操作方法 | |
US10677839B2 (en) | Circuit and method for detecting a fault attack | |
US20120030268A1 (en) | Randomized value generation | |
TWI663604B (zh) | 操作具非揮發性記憶胞電路的方法及使用所述方法的電路 | |
Hosey et al. | Advanced analysis of cell stability for reliable SRAM PUFs | |
Chakraborty et al. | True random number generation from commodity NVM chips | |
Yang et al. | A novel PUF using stochastic short-term memory time of oxide-based RRAM for embedded applications | |
CN111404686A (zh) | 一种基于otp存储阵列的puf密钥生成系统和方法 | |
JP2004355793A (ja) | データ損失の事前検出付きフラッシュメモリ | |
Poudel et al. | Flashmark: Watermarking of NOR flash memories for counterfeit detection | |
Li et al. | Reliable antifuse one-time-programmable scheme with charge pump for postpackage repair of DRAM | |
US11145344B1 (en) | One time programmable anti-fuse physical unclonable function | |
Poudel et al. | Microcontroller Fingerprinting Using Partially Erased NOR Flash Memory Cells | |
US11928248B1 (en) | Semiconductor device with mechanism to prevent reverse engineering | |
CN108537068B (zh) | 产生集成电路固有信息的装置及方法 | |
US11404119B1 (en) | Non-volatile memory device and challenge response method | |
CN113129985B (zh) | 一种物理不可克隆单元及读取电路 | |
US20240113715A1 (en) | Generating physical unclonable function data from a transistor of a semiconductor device | |
Serrano et al. | A Unified OTP and PUF Exploiting Post-Program Current on Standard CMOS Technology |
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 |