CN111723409B - 集成电路、存储器电路以及用于操作集成电路的方法 - Google Patents
集成电路、存储器电路以及用于操作集成电路的方法 Download PDFInfo
- Publication number
- CN111723409B CN111723409B CN202010186254.2A CN202010186254A CN111723409B CN 111723409 B CN111723409 B CN 111723409B CN 202010186254 A CN202010186254 A CN 202010186254A CN 111723409 B CN111723409 B CN 111723409B
- Authority
- CN
- China
- Prior art keywords
- key
- circuit
- security
- memory
- puf
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/73—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3278—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
- Read Only Memory (AREA)
- Semiconductor Memories (AREA)
Abstract
本发明公开了一种集成电路、存储器电路以及用于操作集成电路的方法,在集成电路上的PUF电路中使用物理不可复制功能来产生安全密钥且通过存储在一非易失性存储单元集合中使安全密钥稳定。稳定化安全密钥自所述非易失性存储单元集合移动至闪存,且在存储于闪存时,以安全协议形式加以利用。此外,自PUF电路至所述非易失性存储单元集合的数据传送可在使用PUF电路产生安全密钥之后在安全时间禁用,诸如在安全密钥已自所述非易失性存储单元集合移动至闪存之后禁用。
Description
技术领域
本发明涉及一种集成电路、存储器电路以及用于操作集成电路的方法,其中,所述集成电路包括闪存或其他非易失性存储器,具有利用独特密钥或独特标识码的安全特征。
背景技术
现有技术中已具有极高容量的包括非易失性存储器(诸如闪存)的集成电路存储器装置。认为一些技术可能在集成电路上实现兆位规模的阵列。此外,存储器装置经部署于由通过例如因特网协议通信技术来操作的网络互连的所谓「物联网IoT」装置中。对于存储数据的IoT装置及其他装置的一个关注点为数据安全。因此,已部署需要通过独特密钥加密、通过独特ID验证以及询问/回应技术的安全协议。
安全协议需要密钥管理技术以产生、更新、存储以及保护所利用的独特密钥及ID。
物理不可复制功能(PUF,被称作physical unclonable function或physicallyunclonable function)为由PUF电路应用以针对诸如集成电路的实体个体建立独特随机密钥的程序。使用适用于集成电路的元件的PUF的结果的熵值(在随机度意义上)产生密钥的随机性,所述集成电路通常在部署PUF电路的物体上。PUF的使用为用于产生用于支持硬件固有安全(hardware intrinsic security;HIS)技术的芯片ID的密钥的解决方案。PUF应用于电路,所述电路为或包括实施于产生易于评估但难以预测的程序代码的实体结构中的一或多个实体个体。
PUF已用于诸如移动设备及嵌入装置的具有高安全要求的应用中的密钥产生。实例PUF为使用由对于栅极的电路传播延迟固有的制造可变性引起的熵值的环形振荡器PUF。另一实例PUF为SRAM PUF,其中晶体管中的阈值电压差值引起呈逻辑「0」或逻辑「1」的SRAM加电。参见查尔斯赫尔德(Charles Herder)等人的《物理不可复制功能及应用:教程(Physical Unclonable Functions and Applications:A Tutorial)》,第1126页至第1141页,IEEE论文集(Proceedings of the IEEE)第102卷,第8期,2014年8月。
已提出使用由电阻性随机访问存储器的物理属性引起的熵值的PUF。参见吉本(Yoshimoto)等人的「基于ReRAM的物理不可复制功能在40nm嵌入式应用中在125℃下10年后误码率<0.5%(A ReRAM-based Physically Unclonable Function with Bit ErrorRate<0.5%after 10years at125℃for 40nm embedded application)」,第198页至第199页,2016,VLSI技术摘要技术论文研讨会(Symposium on VLSI Technology Digest ofTechnical Papers)。论文中呈现的应用提出对归因于老化衰减而增大误码率的ReRAM PUF的习知ID产生方法的改良。然而,在此基于ReRAM的PUF中,产生的数据仍可受到存储单元的电阻的偏移损坏,其可产生在访问或使用所存储的密钥时不可接受的误码率。此类电阻偏移在诸如汽车应用的一些集成电路应用中所遇到的高温下可更明显。
由于具有高误码率的问题,因此在使用利用PUF电路所产生的数据集合时,现有技术已依赖于错误校正码来改良可靠性。参见例如李(Lee)等人的2016年6月02日公布的美国专利申请公开案第2016/0156476号,「物理不可复制功能电路及在物理不可复制功能电路中执行密钥登记的方法(Physically Unclonable Function Circuits and Methods ofPerforming Key Enrollment in Physically Unclonable Function Circuits)」。
期望提供用于包括非易失性存储器的集成电路的支持使用PUF产生的密钥及其他独特密钥的技术。此外,需要部署所述技术的装置易于制得但产生几乎不可能复制或预测的程序代码,即使知道产生其的准确制造程序。
发明内容
描述可使用安全密钥改良安全协议的可靠性及效率且可实施于集成电路上的PUF电路及方法,所述安全密钥使用PUF电路产生,所述PUF电路将PUF应用于物理元件,所述集成电路包括可部署以在高安全要求情况下使用的集成电路。
在技术的一些应用中,需要用于包括验证或数据加密/解密功能的安全协议的独特及私人的秘密密钥。集成电路上的PUF电路可用于独特及私人的秘密密钥的产生。
本文中所描述的装置和方法适用于物联网装置。所描述的装置和方法可在广泛多种环境中实施。
描述装置,所述装置可实施于单个已封装集成电路或多芯片模块(亦即,包括多个芯片的封装)上,所述已封装集成电路或所述多芯片模块包括逻辑,所述逻辑用以使用应用于PUF电路中的物理不可复制功能电路元件(physical unclonable function circuitelements,PUF电路元件)的物理不可复制功能来产生安全密钥,且用以将安全密钥存储在一非易失性存储单元集合中,由此提供稳定化密钥。此外,包括具有耦接至所述非易失性存储单元集合的闪存的安全逻辑。安全逻辑将稳定化安全密钥自所述非易失性存储单元集合移动至闪存,且访问存储于闪存中的快取安全密钥以用于执行安全协议。访问控制电路耦接至所述非易失性存储单元集合。访问控制电路可包括用以在将安全密钥存储在所述非易失性存储单元集合中之后禁用自PUF电路至所述非易失性存储单元集合的数据传送的访问控制逻辑。在一个实施例中,访问控制电路可在将安全密钥移动至闪存之后禁用自PUF电路至所述非易失性存储单元集合的数据传送。在一些实施例中,PUF电路元件可在访问控制逻辑禁用自PUF电路至所述非易失性存储单元集合的数据传送之后用于其他目的。
安全密钥可具有一宽度,诸如1028个位、512个位或适用于特定实施的任何其他宽度。闪存可具有至少与安全密钥的宽度一样大的宽度。在一些实施例中,闪存可存储多个安全密钥。安全逻辑使用小于密钥的宽度的数据路径遍历闪存中的安全密钥,所述宽度诸如1个字节、2个字节或4个字节。利用闪存存储快取安全密钥,所述快取安全密钥为稳定化安全密钥的复本或衍生自所述稳定化安全密钥,且在执行安全协议期间使用快取安全密钥的安全逻辑可显著地改良效能及可靠性。
在本文中所描述的实施例中,电路可包括存储器阵列及控制电路,所述控制电路用于响应于外部命令对存储器阵列进行读取及写入访问。安全逻辑可执行安全协议以启用响应于外部命令对存储器阵列的访问。在一些实施例中,用于使密钥稳定的所述非易失性存储单元集合可在存储器阵列内。
描述实例,其中PUF电路将PUF应用于闪存中的存储单元,在一些实例中,所述闪存可包括SRAM存储单元。在这些实施例中,在使用安全密钥执行协议期间可出于支撑安全密钥的产生的目的及出于稳定化密钥的存储的目的两者利用闪存。此外,描述实例,其中PUF电路包括在集成电路上的非易失性存储器阵列中的存储单元。
根据另一实施例,描述用于操作集成电路的方法。方法包括使用集成电路上的PUF电路中的物理不可复制功能产生安全密钥及通过存储在一非易失性存储单元集合中使安全密钥稳定。方法包括将稳定化安全密钥自所述非易失性存储单元集合移动至闪存且以安全协议形式利用存储于闪存中的快取安全密钥。此外,方法包括在使用PUF电路以产生安全密钥之后禁用自PUF电路至所述非易失性存储单元集合的数据传送。方法可包括使用小于安全密钥的宽度的数据路径遍历闪存中的安全密钥,而闪存具有至少与安全密钥的宽度一样大的宽度。
在审阅以下附图、详细描述以及权利要求书之后可看出本发明的其他实施例及优点。
附图说明
图1是本发明实施例的集成电路的框图,所述集成电路包括用于使用PUF电路及闪存的安全逻辑。
图2是本发明实施例的设备的示意性框图,所述设备包括系统,所述系统包括集成电路,所述集成电路用于执行PUF操作用以安全协议形式登记所述集成电路。
图3是本发明的集成电路另一实施例的框图,所述集成电路包括使用PUF电路及闪存的安全逻辑。
图4是本发明实施例中包括集成电路及主机的高层图,所述集成电路包括高效能使用PUF产生的安全密钥。
图5是本发明实施例中由集成电路上的控制器用于执行PUF流程的示意性流程图。
图6是本发明实施例中由集成电路上的控制器用于执行PUF流程的另一替代示意性流程图。
【符号说明】
100、240:集成电路
110:任务功能电路
111、116、151、161:总线
115:访问控制区块
120、181:输入/输出接口
122、131、182、191、192、194:线路
125、190、413:安全逻辑
130:PUF电路元件
139:开关
140、412:控制器
142、261:非易失性存储器
150:随机数产生器
160:逻辑电路
170、178、262、415:闪存
171:链路
179、189:存储单元集合
180:已封装集成电路/多芯片模块
183:访问控制开关
184:感测放大器/缓冲器
185:非易失性闪存阵列
186:地址译码器
186A:锁定位
187:特定区块
193:控制状态机
195:其他电路
198、420:主机
198A:密钥数据库
199:互连件
210:处理器系统
220:PUF逻辑及驱动器
230:装置处置器/探测器
250:安全电路
260、411:PUF电路
414:非易失性存储器
450:集成电路/多芯片模块
530、531、532、533、534、535、600、601、602、603:步骤
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
参见附图提供本发明技术的实施例的详细描述。应理解,不存在将所述技术限制为特定公开的结构性实施例及方法的意图,而可使用其他特征、元件、方法及实施例实现所述技术。描述优选实施例以说明本发明技术,而非限制其范围,所述范围由权利要求书限定。本领域技术人员将认识以下本说明书上的各种等效变化。在各种实施例中,类似附图标记通常指代类似元件。
图1为设备的示意性框图,所述设备包括多个可编程存储单元及用于执行PUF及随机数产生器以使用多个可编程存储单元来提供数据集合的控制器。在此实例中,设备包括具有PUF电路元件130的集成电路100。PUF可应用于PUF电路元件130,所述PUF电路元件130提供用于形成独特数据集合的熵值。
集成电路100包括任务功能电路110,其可包括有时称为专用集成电路逻辑的专用逻辑、诸如使用于微处理器及数字信号处理器中的数据处理器资源、诸如闪存的大规模存储器、SRAM存储器、DRAM存储器、可编程电阻存储器以及称为系统芯片SOC组态或专用集成电路ASIC的各种类型的电路的组合。集成电路100包括输入/输出接口120,其可包括提供对其他装置或网络的访问的无线端口或有线端口。在此示意性说明中,访问控制区块115安置于输入/输出接口120与任务功能电路110之间。访问控制区块115通过总线116耦接至输入/输出接口120,且通过总线111耦接至任务功能电路110。由访问控制区块115执行访问控制协议以启用或禁用任务功能电路110与输入/输出接口120之间的通信,以提供遍历输入/输出接口120的数据的加密或解密,且提供支持安全逻辑的其他服务,或提供其组合。
在此实例中,为支持访问控制区块115,安全逻辑125安置于芯片上。安全逻辑125耦接至PUF电路元件130。PUF电路元件130可通过受控制器140(或用以应用PUF的其他PUF电路)控制的物理不可复制功能训练,以产生PUF安全密钥。控制器140可通过存储在非易失性存储器142中使所产生安全密钥稳定以提供稳定化安全密钥。非易失性存储器142可使用快闪存储单元集合、ReRAM单元集合、相变存储单元集合或其他类型的存储单元集合来实施。在此实例中,安全逻辑125亦耦接至在总线151上产生随机数的随机数产生器150。逻辑电路160可组合稳定化初始密钥及随机数以产生经强化安全密钥。经强化安全密钥可经由总线161存储于闪存170中以形成快取安全密钥。或者,存储于非易失性存储器142中的初始稳定化密钥可直接地传送至闪存170以形成快取安全密钥而无介入操作。此外,在一些实施例中,随机数与存储于闪存170中的快取安全密钥组合,而不是在快取安全密钥存储于闪存170之前组合。
在使用随机数产生器150的实施例中,逻辑电路160可包括:XOR函数及哈希函数;XOR函数使用初始密钥及随机数作为输入且产生输出作为经强化密钥;哈希函数将初始密钥及随机数(或在实施例中,不利用随机数或其他数据来强化或修改初始密钥、单独映射初始密钥)映射至哈希值作为经强化的安全密钥。在一些实例中,线路131上的初始PUF密钥可具有N个位,总线151上的随机数可具有M个位,且存储于闪存170中的安全密钥可具有X个位,其中X小于N+M,或在其他实施例中,X小于M及N中的至少一者。安全密钥存储于至少与安全密钥一样宽的闪存170中,可通过链路171上的安全逻辑125访问,所述链路171的宽度可小于安全密钥的宽度。链路171可为例如一至四个字节宽。闪存170中的安全密钥可由安全逻辑125有效利用。在安全逻辑125中执行的安全协议可控制与访问控制区块115的跨线路122的通信,且可控制访问控制区块经由输入/输出接口120启用及禁用通信。
在设备的一个实例中,PUF电路将PUF应用至包括快闪存储单元阵列的元件,PUF程序控制器140,例如实施为具有PUF电路元件130的集成电路上的状态机,PUF程序控制器140提供用以控制偏压配置供电电压应用于所述阵列以进行用以产生数据集合的程序及涉及访问阵列及用于读取使用存储器阵列所提供的数据集合的其他操作的信号。以及诸如位线、字线、其驱动器等的集成电路上的电路提供对用于提供数据集合的所述存储单元集合的访问。
在其他实例中,PUF电路可将PUF应用至其他类型的存储单元,诸如集成电路上的DRAM或SRAM单元、逻辑单元或电性元件,在一些实施例中包括闪存中的存储单元,其可使用偏压操作来训练以产生物理不可复制功能从而产生可用作安全密钥的数据集合。
集成电路上的PUF程序控制器140包括用以执行用于产生数据集合的操作中的一些或全部的逻辑。在一个实施例中,集成电路上的PUF程序控制器140包括将PUF应用至PUF电路元件130(包括用以执行偏压操作)所必需的逻辑,且可响应于来自外部来源的设定命令而执行逻辑,而无需来自芯片外系统的控制。
在一些实施例中,PUF程序控制器140包括开关139或其他逻辑,所述开关139或其他逻辑用以在PUF电路用于产生安全密钥且安全密钥通过存储在非易失性存储器142中稳定化之后响应于指示符集而使PUF电路与非易失性存储器142之间的数据传送闭锁,从而防止电路覆写稳定化安全密钥,且用以帮助隔开PUF电路以使得所述PUF电路可用于其他目的。
在一些实施例中,PUF电路元件130可包括SRAM单元或支持快速读取及写入操作的其他存储单元。此外,这些实例中的闪存170可为或包括相同SRAM单元或存储单元、或与用作PUF电路元件130的单元相同的阵列中的SRAM单元或存储单元。此节约装置上的资源,因为在用于产生PUF安全密钥之后,PUF电路元件可用于其他用途。
可使用包括如此项技术中已知的状态机的专用逻辑电路来实施控制器。在替代实施例中,控制器包括可实施于相同集成电路上的通用处理器,所述控制器执行计算机程序以控制装置的操作。在又其他实施例中,可利用专用逻辑电路与通用处理器的组合来实施控制器。
在一些实施例中,外部处理器系统可包括用于提供对集成电路的访问的电路及用于产生数据集合的逻辑。外部处理器系统可包括诸如晶圆探针电路、控制总线、电压源以及类似者的用于与集成电路上的电路组合来提供数据集合的电路。用于控制程序的具有对所述存储单元集合的访问的逻辑电路及偏压电路可包括外部处理器系统及集成电路两者上的部分。
本文中所描述的PUF电路元件130的实例可包括诸如用于一些类型的闪存中的电荷收集存储单元。
电荷收集存储单元中的电荷存储结构可包括来自闪存技术的称为氧化物-氮化物-氧化物(oxide-nitride-oxide;ONO)、氧化物-氮化物-氧化物-氮化物-氧化物(oxide-nitride-oxide-nitride-oxide;ONONO)、硅-氧化物-氮化物-氧化物-硅(silicon-oxide-nitride-oxide-silicon;SONOS)、带隙工程化硅-氧化物-氮化物-氧化物-硅(bandgapengineered silicon-oxide-nitride-oxide-silicon;BE-SONOS)、氮化钽、氧化铝、氮化硅、氧化硅、硅(tantalum nitride,aluminum oxide,silicon nitride,silicon oxide,silicon;TANOS)以及金属-高k带隙工程化硅-氧化物-氮化物-氧化物-硅(metal-high-kbandgap-engineered silicon-oxide-nitride-oxide-silicon;MA BE-SONOS)的多层介电质电荷收集结构。此外,PUF电路元件130可包括诸如用于一些类型的闪存中的浮动栅极存储单元。
在其他实施例中,用于PUF电路元件130中以提供数据集合的存储单元可包括可编程电阻存储单元或其他类型的存储单元。用于提供数据集合的可编程电阻存储单元可包括具有可参考阈值值电阻读取的可编程电阻的可编程元件。可编程电阻元件可包括例如金属氧化物或相变材料。用以将PUF应用至PUF电路的算法的实例描述于2017年5月22日申请的标题为具有安全密钥存储器的非易失性存储器(Non-Volatile Memory With SecurityKey Storage)(US 2018/0039581A1)的共同拥有的美国专利申请案第15/601,582号中,所述美国专利申请案以引用的方式并入,如同完全阐述于本文中一般。
图2说明设备包括用以执行或引起执行以产生如本文中所论述的数据集合的程序的处理器系统210及集成电路240。在一些实施例中,在制造期间在封装成诸如晶圆形式之前将集成电路240连接至处理器系统210。在其他实施例中,将系统210连接至呈封装形式的集成电路。
用以执行编程程序以在集成电路上产生基于PUF的数据集合的程序的实例系统可包括在生产线中使用用于测试的装备或使用类似于用于测试的装备来执行,所述装备包括用于访问诸如晶圆探针电路、电压源以及类似者的集成电路的电路。举例而言,生产线可具有多个装置测试器、多个装置探针、多个装置处置器以及经组态以连接至集成电路的多个接口测试配接器,所述集成电路可经组态以控制本文中所描述的程序的执行。在替代方案中,系统可经组态以与封装集成电路相互作用,且可经部署远离集成电路的生产线,诸如部署于供原始装备制造商利用集成电路的组装设施处。
如图2中所展示,实例系统210包括PUF逻辑及驱动器220,以及装置处置器/探测器230。待经PUF逻辑及驱动器220处理的集成电路240耦接至装置处置器/探测器230。集成电路240包括安全电路250。安全电路250包括PUF电路260、非易失性存储器261以及闪存262。
可如参见图1所描述来实施集成电路240。在制造集成电路240期间,系统210执行本文中所识别的动作以产生包括稳定化密钥的数据集合,且可将数据集合的复本或衍生自数据集合的数据存储在非易失性存储器261中。其后,可锁定PUF电路260与非易失性存储器261之间的数据路径。在使用稳定化数据集合的时间时或之前,将所述稳定化数据集合传送至闪存262,从而允许安全电路250对用作PUF密钥的快取稳定化数据集合的高速访问。其后,倘若PUF电路元件为存储单元或在电路的操作中具有效用的其他元件,则可释放PUF电路260中的所述PUF电路元件以供用于存储其他数据。
在替代实施例中,在制造集成电路之后,用户可在集成电路上的PUF电路260中产生数据集合,例如使用处理器系统210作为主机,因此可以现场而不是在工厂中,将数据集合保存为集成电路与处理器系统(例如处理器系统210)之间的共享密钥。
图3说明包括已封装集成电路或多芯片模块180的系统,所述已封装集成电路或多芯片模块180包括输入/输出接口181(其包括或耦接至用于接收及传达来自主机的外部命令及用于启用及协调控制电路的操作的命令译码器)及非易失性闪存阵列185。输入/输出接口181提供用于外部装置或通信网路与非易失性存储器阵列185之间的外部数据通信的端口。存储器阵列185包括多个存储单元区块,所述存储单元区块包括可用于形成稳定化密钥的多个区块中的特定区块187。安全逻辑190耦接至非易失性存储器阵列185,其利用呈协议形式的密钥来启用对存储于多个区块中的区块中的资料的访问。安全逻辑190可将安全密钥自固定密钥区块187传送至闪存178以供用于安全协议中。
包括访问控制开关183的访问控制电路耦接至阵列,且包括访问控制逻辑,所述访问控制逻辑用以启用由供用于协议中的安全逻辑对特定区块187的访问,且用以防止由外部装置或通信网路经由所述端口对特定区块187进行访问。访问控制电路亦可在将安全密钥存储于区块187中之后或在将安全密钥传送至闪存178之后,使自应用PUF的电路元件至如本文中所论述的区块187的数据传送闭锁。
在各种实施例中,可使用访问规则的其他组合,从而使得安全逻辑在利用特定区块中具有更大灵活性。
在此实例中,非易失性存储器阵列185包括闪存。存储密钥的特定区块187可实体地位于阵列中的任何位置,但如所说明,对于一些实例,可实体地位于具有最低实体地址的顶部区块中,或与具有最低实体地址的引导块块相邻。
非易失性存储器阵列185耦接至将数据流提供至闪存阵列中及外的感测放大器/缓冲器184,所述感测放大器/缓冲器184包括存储密钥的特定区块187。在此实例中,访问控制开关183安置于感测放大器/缓冲器184与输入/输出接口181之间。自阵列185读取的数据可在线路182上布线至输入/输出接口181,或可在线路191上布线至安全逻辑190。安全逻辑190包括在执行安全功能期间用作工作存储器的闪存178。
在所说明的实施例中,地址译码器186连同用于控制在阵列中的相应区块中读取及写入数据的权限的区块锁定位一起耦接至阵列185。在此实例中,安置存储安全密钥的所述非易失性存储单元集合的特定区块187与一或多个相应锁定位186A耦接。与特定区块187耦接的一或多个锁定位186A可包括与用于阵列中的其他区块的锁定位的结构不同的逻辑或实体结构,且可逻辑地执行不同功能。用于存储区块锁定位的实体结构的实例包括熔丝、一次性编程(one-time-programming;OPT)单元以及缓存器或可用于存储类似于区块锁定位的状态指示符的其他存储器元件。特定区块的一或多个区块锁定位可耦接至感测放大器/缓冲器184中的缓冲器以阻止写入至存储密钥的所述存储单元集合,由此在将密钥写入特定区块中且视情况测试并验证之后将密钥冻结。包括使用保护码来保护存储器的区块免受修改的一个实例展示于洪(Hung)等人的2015年8月27日公开的标题为「使用非易失性保护码及易失性保护码的非易失性存储器数据保护(Nonvolatile Memory Data ProtectionUsing Nonvolatile Protection Codes and Volatile Protection Codes)」的美国专利申请公开案第US 2015-0242158号(现美国专利第9,940,048号)中,所述美国专利申请公开案以引用的方式并入本文中,如同完全阐述于本文中。
此外,在用于访问阵列的地址对应于特定区块187的地址时,与存储密钥的特定区块187相关联的一或多个区块锁定位186A可控制耦接至访问控制开关183的逻辑,所述访问控制开关183防止数据通过线路182上的感测放大器/缓冲器自特定区块187流向输入/输出接口181,同时允许数据自线路191上的特定区块187流向闪存。
此外,在所说明的实施例中,具有物理不可复制功能程序控制器的控制状态机193耦接至线路194上的存储器阵列185,且耦接至线路192上的安全逻辑190。物理不可复制功能可应用于阵列185中的特定存储单元集合189中的存储单元,所述存储单元集合189出于产生待用作密钥的数据集合的目的充当PUF电路元件。在设备的此实例中,控制状态机193提供用以控制偏压配置供电电压的应用以进行用以产生数据集合的PUF程序及涉及访问阵列185的其他操作的信号。
位于诸如位线、字线、其驱动器等的集成电路上的电路提供对用以提供用于产生密钥的数据集合的所述组快闪存储单元的访问。
此外,替代使用闪存阵列185中的存储单元集合189,物理不可复制功能可应用于闪存178中的特定存储单元集合179中的存储单元,所述存储单元集合179出于产生待用作密钥的数据集合的目的充当PUF电路元件。在设备的此实例中,控制状态机193提供用以控制偏压配置供电电压的应用以进行用以产生数据集合的PUF程序及涉及将物理不可复制功能应用至闪存178中的所述存储单元集合179的其他操作的信号。
如所说明,已封装集成电路或多芯片模块180亦可包括诸如可在系统芯片系统或具有存储器的电路的其他组合中遇到的其他电路195。
在所展示的实例中,已封装集成电路或多芯片模块180耦接至主机198,对于包括经组态用于许多装置的那些系统的系统而言,所述主机198可为利用互连件199的登记系统。主机198可维护密钥数据库198A,其中可维护执行依靠于存储于闪存178中的密钥的安全协议所需的信息。在一些实施例中,执行安全协议所需的信息包括密钥的复本。
在一种实例操作方法中,在制造或封装期间,物理不可复制功能可通过控制状态机193与主机198合作地执行。
在完成物理不可复制功能的执行时,数据集合可随后自用作PUF电路的所述存储单元集合189(或所述存储单元集合179)复制至经保留或组态用于使密钥稳定的特定区块187。系统可产生一个或许多密钥以用于存储于出于此目的保留的特定区块187中。在此阶段,亦可将密钥复制至主机198中且通过密钥数据库198A维护。在执行物理不可复制功能且将安全密钥复制至特定区块187中之后,与特定区块187相关联的一或多个锁定位186A可保持设定,以禁用通过外部电路或通信网路对区块的访问。
图4说明利用物理不可复制功能以用于产生密钥、将该密钥存储于非易失性存储器中以使密钥稳定且在执行安全功能期间将稳定化密钥传送至闪存的系统的高位准组态。系统包括耦接至集成电路或多芯片模块450的主机420。集成电路或多芯片模块450包括物理不可复制功能电路(physical unclonable function circuit,PUF电路)411、控制器412以及安全逻辑413。控制器412耦接至PUF电路411、安全逻辑电路413,且耦接至非易失性存储器414。安全逻辑413耦接至主机420(经由I/O接口电路,未展示),且耦接至闪存415,在执行安全功能期间可用于保存安全密钥。在一些实施例中,安全逻辑413及控制器412两者可连接至闪存以用于对其中的数据进行访问。通过控制器412亦可布线闪存415至安全逻辑电路413的连接,或安全逻辑电路413及控制器可共享与闪存415的连接。控制器可锁定自PUF电路411至非易失性存储器414的数据传送。
对于一些实施例,图4的系统的操作可参见图5来理解。此程序可响应于来自主机420的命令或其他信号且通过响应于诸如超时事件或使用数事件的其他事件或可能需要产生PUF密钥时的其他事件的安全逻辑电路413中的电路而启动。因此,为产生可使用的密钥,自PUF电路411产生及检索密钥数据(步骤530)。视情况,分析密钥以判定其是否符合安全规范,诸如是否具有足够的随机性(步骤531)。若密钥符合规范,则所述密钥通过经由控制器412将所述密钥存储至非易失性存储器414中来稳定化(步骤532)。若其不符合规范,则程序循环至步骤530以重试PUF以产生密钥。物理不可复制功能可产生具有任何长度的密钥且基于PUF来重试密钥产生程序。如所说明,PUF电路411与控制器412将合作以产生另一密钥,循环回至步骤530直至产生令人满意的密钥为止。否则,密钥产生完成,一或多个密钥经存储且准备以待由安全逻辑利用。为使用密钥,程序将稳定化密钥数据自非易失性存储器移动至闪存415(步骤533)。自PUF电路411至非易失性存储器414的链路可在密钥数据移动至闪存415之后锁定(步骤未展示)。随后,程序包括遍历闪存415中的快取密钥数据(步骤534)、执行可能涉及主机420及用于闪存中的一或多个密钥的密钥数据的协议中的安全功能(步骤535)。可通过登记系统向主机420提供执行依赖于密钥的安全协议所需的数据。安全功能可经组态与登记系统或通信服务器合作以利用多个密钥。在一些实施例中,产生且存储的密钥仅利用一次或有限次数以维持高安全性及窥探免疫性。此外,在一些实施例中,可以依赖于用于每一通信会话的较大密钥的子组的方式利用单个较大密钥。可针对使用的特定环境按需要实施其他安全协议。
通过使用闪存415,可减少用于获得密钥数据的安全功能的访问时间,尤其在安全功能用同一密钥或多个密钥操作许多次时。此外,使用闪存415可增大侵入密钥数据的复杂度。闪存中的数据为易失性的,且一旦功率不规则,即无法保持所述数据。此外,闪存可合并入其他逻辑电路且因此可能不易于追踪。
图6说明在一些实施例中通过控制器的程序执行的尤其适合于应用于闪存装置或其他存储器装置的实施例。程序开始于通电(步骤600)。此可在例如在装置安装于测试夹具或诸如上文所描述的登记系统中时出现。此外,程序可开始于传信启动PUF电路以产生初始密钥的其他事件。在步骤600之后,启用用于执行物理不可复制功能的电路,且在PUF电路中执行PUF以产生初始密钥(步骤601)。初始密钥随后存储于一非易失性存储单元集合中以使密钥稳定(步骤602),所述非易失性存储单元集合诸如非易失性存储器阵列中的单元的特定区块中的单元。如上文实例中所论述,所述非易失性存储单元集合可为由PUF使用的相同组,或可为在执行PUF之后写入初始密钥的一非易失性存储单元集合。其后,锁定非易失性存储器存储来自PUF电路的PUF码的路径,以防止PUF电路使用非易失性存储器(步骤603)。此允许使用已用作PUF电路或用于使安全密钥稳定的非易失性存储器,作为可响应于外部命令而访问以读取及写入数据的存储器的一部分。
在一些实施例中,一旦将稳定密钥存储至NVM存储器中,即可针对其他使用来访问PUF电路元件。此外,在一些实施例中,闪存可仅用于存储通过安全逻辑进行快速处理的密钥,或在又其他实施例中,可用于存储其他数据。在一优选实施例中,非易失性存储单元可仅充当稳定密钥存储装置,且用来使密钥数据保持稳定以用于区域中的装置的操作。
通过使用闪存415,可减少用于获得密钥数据的安全功能的访问时间,尤其在安全功能用同一密钥或多个密钥操作许多次时。此外,使用闪存415可增大侵入密钥数据的复杂度。闪存中的数据为易失性的,且一旦功率不规则,即无法保持所述数据。此外,闪存可合并入其他逻辑电路且因此可能不易于追踪。
根据图5的程序,可将技术描述为包括两个阶段。
阶段1(产生PUF码):闪存用作PUF电路以提供低稳定性PUF码。
步骤1,控制器将自PUF电路获得低稳定性PUF码。
步骤2,将PUF码存储至NVM中作为高稳定性PUF码。
步骤3,控制器将锁定PUF电路至NVM的路径。
阶段2(使用PUF码):闪存用于存储来自NVM的密钥数据。
步骤1,控制器将使高稳定性PUF码自NVM移动至闪存,所述闪存亦可与用作PUF电路的闪存相同。
步骤2,将来自闪存的快取PUF码加载至安全功能区块。
步骤3,将用快取PUF码作为密钥数据来执行安全功能。
在一些实施例中,PUF电路的PUF电路元件可以用于其他功能,包括在成功执行安全功能之后用于集成电路的数据存储元件,或者用于在锁定PUF电路至NVM的路径之后的其他功能。
如本文中所描述,在一些实施例中,物理不可复制功能使用熵值,使用集成电路或多芯片模块上的多个非易失性存储单元中的非易失性存储单元来产生所述熵值。如本文中所描述,在一些实施例中,物理不可复制功能使用熵值,使用集成电路或多芯片模块上的闪存中的存储单元来产生所述熵值。在其他实施例中,可利用不同类型的物理不可复制功能。
如本文中所描述产生的数据集合可具有对于特定集成电路独特的内容。诸如在安全协议的实例中,数据集合可用于形成对询问的响应。数据集合可用作加密协议中的密钥。数据集合可用作唯一识别符。数据集合可用作随机密钥。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (17)
1.一种集成电路,其中包括:
逻辑,用以在PUF电路中使用物理不可复制功能产生安全密钥,且用以将所述安全密钥存储在非易失性存储单元集合中;
安全逻辑,包括耦接至所述非易失性存储单元集合的闪存,所述安全逻辑使用来自所述非易失性存储单元集合的所述安全密钥将快取安全密钥存储在所述闪存中,且在安全协议的执行期间访问所述闪存中的所述快取安全密钥;以及
访问控制电路,耦接至所述非易失性存储单元集合,所述访问控制电路包括用以在将所述安全密钥存储在所述非易失性存储单元集合中之后禁用自所述PUF电路至所述非易失性存储单元集合的数据传送的访问控制逻辑;
其中所述安全密钥具有宽度,所述安全逻辑使用小于所述安全密钥的所述宽度的数据路径遍历所述闪存中的所述安全密钥,且所述闪存具有至少与所述安全密钥的所述宽度一样大的数据宽度。
2.根据权利要求1所述的集成电路,其中包括存储器阵列及用于响应于外部命令而对所述存储器阵列进行读取及写入访问的控制电路,且其中所述安全逻辑执行所述安全协议以回应于所述外部命令而启用对所述存储器阵列的访问。
3.根据权利要求2所述的集成电路,其中所述非易失性存储单元集合在所述存储器阵列内。
4.根据权利要求1所述的集成电路,其中所述PUF电路使用所述闪存中的存储单元的熵值来产生所述安全密钥。
5.根据权利要求2所述的集成电路,其中所述PUF电路使用所述存储器阵列中的存储单元的熵值来产生所述安全密钥。
6.根据权利要求1所述的集成电路,其中所述PUF电路将所述物理不可复制功能应用至一PUF电路元件,且所述PUF电路元件在所述访问控制逻辑禁用自所述PUF电路至所述非易失性存储单元集合的数据传送之后可用于其他目的。
7.一种存储器电路,其中包括:
存储器阵列及控制电路,所述控制电路用于响应于外部命令而对所述存储器阵列进行读取及写入访问;
逻辑,用以在PUF电路中使用物理不可复制功能来产生安全密钥,且用以将所述安全密钥存储在所述存储器阵列中的存储单元集合中以形成稳定化安全密钥;
安全逻辑,包括耦接至所述存储器阵列的闪存,所述安全逻辑使用来自所述存储单元集合的所述安全密钥来提供存储于所述闪存中的快取安全密钥且使用所述闪存中的所述安全密钥来执行安全协议以回应于所述外部命令而启用对所述存储器阵列的访问;以及
访问控制电路,耦接至所述阵列,所述访问控制电路包括用以在将所述安全密钥存储在所述存储单元集合中之后禁用自所述PUF电路至所述存储器阵列中的所述存储单元集合的数据传送的访问控制逻辑;
其中所述安全密钥具有宽度,所述安全逻辑使用小于所述安全密钥的所述宽度的数据路径遍历所述闪存中的所述安全密钥,且所述闪存具有至少与所述安全密钥的所述宽度一样大的数据宽度。
8.根据权利要求7所述的存储器电路,其中所述PUF电路使用所述闪存中的存储单元的熵值来产生所述安全密钥。
9.根据权利要求7所述的存储器电路,其中所述PUF电路使用所述存储器阵列中的存储单元的熵值来产生所述安全密钥。
10.根据权利要求7所述的存储器电路,其中所述存储器阵列、所述安全逻辑以及所述访问控制电路安置在单个集成电路上。
11.根据权利要求7所述的存储器电路,其中用作PUF电路元件的所述存储单元集合在所述访问控制逻辑禁用自所述PUF电路至所述存储单元集合的数据传送之后可用于其他目的。
12.一种用于操作集成电路的方法,其中包括:
使用所述集成电路上的PUF电路中的物理不可复制功能来产生安全密钥;
通过存储在一非易失性存储单元集合中来使所述安全密钥稳定;
使用来自所述非易失性存储单元集合的所述安全密钥来提供存储于闪存中的快取安全密钥,且以安全协议形式利用存储于所述闪存中的所述快取安全密钥;以及
在将所述安全密钥存储在所述非易失性存储单元集合中之后禁用自所述PUF电路元件至所述非易失性存储单元集合的数据传送;
其中所述安全密钥具有宽度,且其中所述安全协议使用小于所述安全密钥的所述宽度的数据路径来遍历所述闪存中的所述安全密钥,且所述闪存具有至少与所述安全密钥的所述宽度一样大的数据宽度。
13.根据权利要求12所述的用于操作集成电路的方法,其中所述集成电路包括存储器阵列及控制电路,所述控制电路用于响应于外部命令而对所述存储器阵列进行读取及写入访问,且所述方法包括回应于所述安全协议回应于所述外部命令而启用对所述存储器阵列的访问。
14.根据权利要求13所述的用于操作集成电路的方法,其中所述非易失性存储单元集合在所述存储器阵列内。
15.根据权利要求13所述的用于操作集成电路的方法,其中所述PUF电路元件包括所述存储器阵列中的存储单元。
16.根据权利要求12所述的用于操作集成电路的方法,其中所述PUF电路元件包括所述闪存中的存储单元。
17.根据权利要求12所述的用于操作集成电路的方法,其中包括在禁用自所述PUF电路元件至所述非易失性存储单元集合的数据传送之后,出于其他目的使用所述PUF电路元件。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962822069P | 2019-03-22 | 2019-03-22 | |
US62/822,069 | 2019-03-22 | ||
US16/793,986 US11258599B2 (en) | 2016-08-04 | 2020-02-18 | Stable physically unclonable function |
US16/793,986 | 2020-02-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111723409A CN111723409A (zh) | 2020-09-29 |
CN111723409B true CN111723409B (zh) | 2023-06-06 |
Family
ID=72563959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010186254.2A Active CN111723409B (zh) | 2019-03-22 | 2020-03-17 | 集成电路、存储器电路以及用于操作集成电路的方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111723409B (zh) |
TW (1) | TWI758697B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11380379B2 (en) * | 2020-11-02 | 2022-07-05 | Macronix International Co., Ltd. | PUF applications in memories |
US11372592B1 (en) * | 2021-02-04 | 2022-06-28 | Silicon Motion, Inc. | Memory controller having a plurality of control modules and associated server for coding and decoding raw data from flash memory chips |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442704A (en) * | 1994-01-14 | 1995-08-15 | Bull Nh Information Systems Inc. | Secure memory card with programmed controlled security access control |
US8290150B2 (en) * | 2007-05-11 | 2012-10-16 | Validity Sensors, Inc. | Method and system for electronically securing an electronic device using physically unclonable functions |
US20120137137A1 (en) * | 2010-11-30 | 2012-05-31 | Brickell Ernest F | Method and apparatus for key provisioning of hardware devices |
CN107612685A (zh) * | 2011-12-29 | 2018-01-19 | 英特尔公司 | 使用在物理上不可克隆的函数的安全密钥存储 |
US8928347B2 (en) * | 2012-09-28 | 2015-01-06 | Intel Corporation | Integrated circuits having accessible and inaccessible physically unclonable functions |
US8885819B2 (en) * | 2012-12-27 | 2014-11-11 | Intel Corporation | Fuse attestation to secure the provisioning of secret keys during integrated circuit manufacturing |
US9755841B2 (en) * | 2015-04-07 | 2017-09-05 | Globalfoundries Inc. | Method, apparatus and system for security application for integrated circuit devices |
US10680809B2 (en) * | 2016-08-04 | 2020-06-09 | Macronix International Co., Ltd. | Physical unclonable function for security key |
US10715340B2 (en) * | 2016-08-04 | 2020-07-14 | Macronix International Co., Ltd. | Non-volatile memory with security key storage |
US10855477B2 (en) * | 2016-08-04 | 2020-12-01 | Macronix International Co., Ltd. | Non-volatile memory with physical unclonable function and random number generator |
JP6349008B1 (ja) * | 2017-04-13 | 2018-06-27 | 力旺電子股▲ふん▼有限公司eMemory Technology Inc. | 乱数発生装置及びその制御方法 |
EP3407335B1 (en) * | 2017-05-22 | 2023-07-26 | Macronix International Co., Ltd. | Non-volatile memory based physically unclonable function with random number generator |
EP3407336B1 (en) * | 2017-05-22 | 2022-08-17 | Macronix International Co., Ltd. | Unchangeable phyisical unclonable function in non-volatile memory |
-
2020
- 2020-03-17 TW TW109108679A patent/TWI758697B/zh active
- 2020-03-17 CN CN202010186254.2A patent/CN111723409B/zh active Active
Non-Patent Citations (1)
Title |
---|
PUFs in Security Protocols: Attack Models and Security Evaluations;Ulrich Ruhrmair et al.;2013 IEEE Symposium on Security and Privacy;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111723409A (zh) | 2020-09-29 |
TWI758697B (zh) | 2022-03-21 |
TW202103008A (zh) | 2021-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11258599B2 (en) | Stable physically unclonable function | |
US10680809B2 (en) | Physical unclonable function for security key | |
US11895236B2 (en) | Unchangeable physical unclonable function in non-volatile memory | |
CN107689237B (zh) | 电子装置及其存储器电路与其操作方法 | |
US11640250B2 (en) | Secure boot of a processing chip via hardware memory configuration | |
EP3407335B1 (en) | Non-volatile memory based physically unclonable function with random number generator | |
US10855477B2 (en) | Non-volatile memory with physical unclonable function and random number generator | |
CN108959976B (zh) | 操作具非易失性存储单元电路的方法及使用所述方法的电路 | |
WO2019212772A1 (en) | Key generation and secure storage in a noisy environment | |
CN108958650B (zh) | 电子系统及其操作方法 | |
CN111723409B (zh) | 集成电路、存储器电路以及用于操作集成电路的方法 | |
TWI716685B (zh) | 電子系統及其操作方法 | |
US12008246B2 (en) | Secure executable code update for a securely-bootable processing chip |
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 |