CN114444140A - 存储器中的不可复制函数应用 - Google Patents
存储器中的不可复制函数应用 Download PDFInfo
- Publication number
- CN114444140A CN114444140A CN202110563900.7A CN202110563900A CN114444140A CN 114444140 A CN114444140 A CN 114444140A CN 202110563900 A CN202110563900 A CN 202110563900A CN 114444140 A CN114444140 A CN 114444140A
- Authority
- CN
- China
- Prior art keywords
- data
- path
- circuit
- logic
- encoded
- 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.)
- Pending
Links
- 230000006870 function Effects 0.000 title claims abstract description 92
- 239000000872 buffer Substances 0.000 claims description 63
- 238000000034 method Methods 0.000 claims description 52
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 230000007717 exclusion Effects 0.000 claims description 2
- 230000000977 initiatory effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003750 conditioning effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 240000008042 Zea mays Species 0.000 description 1
- 235000005824 Zea mays ssp. parviglumis Nutrition 0.000 description 1
- 235000002017 Zea mays subsp mays Nutrition 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 235000005822 corn Nutrition 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
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/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- 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
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/72—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 in cryptographic circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/22—Safety or protection circuits preventing unauthorised or accidental access to memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/24—Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/20—Address safety or protection circuits, i.e. arrangements for preventing unauthorized or accidental access
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
- H04L9/0662—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
-
- 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
-
- 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/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- Storage Device Security (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开了一种存储器装置,包括:存储器单元阵列;物理不可复制函数电路,设置于存储器装置中,物理不可复制函数电路用以生成物理不可复制函数码;数据路径,将第一电路连接至第二电路,数据路径设置于存储器装置中耦接至存储器单元阵列;以及逻辑电路,用以使用物理不可复制函数码编码来自第一电路的数据路径上的数据以产生经编码数据且将经编码数据提供至第二电路。
Description
技术领域
本发明是关于集成电路,其包括具有物理不可复制函数的应用的闪存或其他非易失性存储器。
背景技术
已研发出具有极高容量的集成电路存储器装置,包括非易失性存储器,诸如闪存。认为一些技术可能在集成电路上实现兆位规模的阵列。另外,存储器装置部署于通过例如因特网协议通信技术来操作的网络互连的所谓「物联网IoT」装置中。对于存储数据的IoT装置及其他装置的一个关注点为数据安全。因此,已部署需要通过独特密钥加密、通过独特ID认证以及询问/回应技术的安全协议。
安全协议需要密钥管理技术以生成、更新、存储以及保护所利用的独特密钥及ID。
需要为包括非易失性存储器的集成电路提供固定存储于这些集成电路中、自这些集成电路提取及/或由这些集成电路使用的信息的技术。
发明内容
一种存储器装置包括:存储器单元阵列;物理不可复制函数物理不可复制函数电路,设置于存储器装置中,物理不可复制函数电路用以生成物理不可复制函数码;数据路径,将第一电路连接至第二电路,数据路径设置于存储器装置中耦接至存储器单元阵列;以及逻辑电路,用以使用物理不可复制函数码编码来自第一电路的数据路径上的数据以产生经编码数据且将经编码数据提供至第二电路。如此处所使用,物理不可复制函数(被称作physical unclonable function或physically unclonable function,简称PUF)为可用以形成用于物理实体(诸如集成电路)的独特随机密钥的程序。所公开技术的实施方案可采用生成用于芯片ID的密钥的PUF。一些应用可支持硬件固有安全(hardware intrinsicsecurity;HIS)技术。生成PUF的电路,即物理不可复制函数电路(physical unclonablefunction circuit,简称PUF电路)为实施于产生易于评估但难以预测的码的实体结构的物理实体或包括所述物理实体。
在一个代表性固定存储器实施方案中,第一电路包括登记地址的数据缓存器,第二电路包括耦接至存储器单元阵列的地址生成器,且数据路径包括连接数据缓存器与用以编码数据的逻辑电路的第一路径以及连接用以编码数据的逻辑电路与地址生成器的第二路径。用以编码数据路径上的数据的逻辑电路包括用以编码来自数据缓存器的第一路径上的地址以产生经编码地址的逻辑,且所述逻辑经由第二路径将经编码地址提供至地址生成器,其中所述逻辑使用物理不可复制函数码(physical unclonable function code,简称PUF码)以编码第一路径上的地址。在一些实施方案中,用以编码数据的逻辑电路可包括使用PUF码及数据路径上的数据作为输入且产生输出作为经编码输出数据的互斥或exclusive-or函数。
在另一代表性实施方案中,第一电路包括登记输入数据的数据缓存器,第二电路包括SRAM缓冲器,且数据路径包括连接数据缓存器与用以编码数据的逻辑电路的第一路径以及连接用以编码数据的逻辑电路与SRAM缓冲器的第二路径。用以编码数据路径上的数据的逻辑电路包括用以编码来自数据缓存器的第一路径上的输入数据以产生经编码输入数据的逻辑,且所述逻辑经由第二路径将经编码输入数据提供至SRAM缓冲器,其中所述逻辑使用PUF码以编码第一路径上的输入数据。
在另一代表性实施方案中,第一电路包括耦接至存储器单元阵列的感测放大器,第二电路包括耦接至输入与输出接口的输出缓冲器,所述输入与输出接口用于接收、传送及提供外部存取,且数据路径包括连接感测放大器与用以编码数据的逻辑电路的第一路径以及连接用以编码数据的逻辑电路与输出缓冲器的第二路径。用以编码数据路径上的数据的逻辑电路包括用以编码来自感测放大器的第一路径上的输出数据以产生经编码输出数据的逻辑,且所述逻辑经由第二路径将经编码输出数据提供至输出缓冲器,其中所述逻辑使用PUF码以编码第一路径上的输出数据。
在又一代表性实施方案中,第一电路包括在存储器单元阵列中的第一位置设置的第一存储器单元集合,第二电路包括在存储器单元阵列中的第二位置设置的第二存储器单元集合,且数据路径包括连接第一存储器单元集合与用以编码数据的逻辑电路的第一路径以及连接用以编码数据的逻辑电路与第二存储器单元集合的第二路径。用以编码数据路径上的数据的逻辑电路包括用以编码来自第一存储器单元集合的第一路径上的初始密钥以产生经编码密钥的逻辑,且所述逻辑经由第二路径将经编码密钥提供至第二存储器单元集合,其中所述逻辑使用PUF码以编码第一路径上的初始密钥。存储器装置可包括用以自存储器装置外部来源接收初始密钥且用以将初始密钥存储于第一存储器单元集合中的逻辑。初始密钥可包括关键安全参数。
所公开的技术适用于具有命令接口的所有类型的存储器。描述存储器阵列包括快闪装置的实例实施例,然而,本发明中所描述的技术亦可应用于其他类型的存储器装置。一些实施例在NOR闪存中实施所公开的安全机构。其他实施例在NAND闪存中实施所公开的安全机构。又其他实施例在不为闪存的存储器中实施安全命令译码器机构。
亦提供一种用于操作如本发明中所描述的存储器装置的方法。
所公开技术的实施方案呈现可易于制造部署所公开技术的装置但产生即使在知晓产生码的确切制造程序的情况下实际上亦不可能重复或预测的码的理想态样。在审阅以下附图、详细描述以及保护范围之后可看出本发明的其他态样及优点。
附图说明
图1为根据一实施例的包括存储器单元阵列及用以使用PUF电路的逻辑的存储器装置的简化方块图。
图2示出如本发明中针对如图1的装置实施例的系统所描述产生经编码地址的实例数据路径。
图3示出如本发明中针对如图1的装置实施例的系统所描述产生经编码输入数据的实例数据路径。
图4示出如本发明中针对如图1的装置实施例的系统所描述产生经编码输出数据的实例数据路径。
图5示出如本发明中针对如图1的装置实施例的系统所描述产生经编码密钥的实例数据路径。
图6为示出如本发明中针对如图1的装置实施例的系统所描述用于在存储器装置中使用PUF码的实例方法的流程图。
图7为根据另一实施例的包括存储器单元阵列及DRBG随机数生成器的存储器装置的简化方块图。
图8A示出如本发明中针对如图7的装置实施例的系统所描述用于生成随机数生成器的初始值的电路。
图8B示出如本发明中针对如图7的装置实施例的系统所描述的DRBG功能模型。
图9为根据又一实施例的包括存储器单元阵列及GCM电路的存储器装置的简化方块图。
图10示出如本发明中针对如图9的装置实施例的系统所描述的GCM的认证加密函数。
图11为示出如本发明中针对如图9的装置实施例的系统所描述在存储器装置中使用PUF码利用GCM的实例认证加密方法的流程图。
图12示出说明如本发明中针对如图1的装置实施例的系统所描述在存储器装置中使用PUF码的实例的真值表。
【符号说明】
100,700,900:存储器装置
110,710,910:存储器单元阵列
111,711,911:第一存储器单元集合
112,712,912:第二存储器单元集合
113:字线译码器
114:位线译码器
115:位线
116,121,123,134,136,144,154,164:总线
117:感测放大器
118:输出缓冲器
120,790,990:输入与输出接口
122,146,147,178,181,182,188,191,716,735,916,917,932,933,935,936:线
125:数据缓存器
130,140,150,160:逻辑电路
131,141,151,161:第一路径
132,142,152,162:第二路径
133,143,153,163,850:PUF电路
135:地址生成器
145:SRAM缓冲器
170:时钟生成器
171:端口
172:信号线
173:内部时钟
180:模式逻辑电路
185:状态机
186:信号
187:高压生成器
190,770,970:安全引擎
610,620,630:步骤
715,915:用户数据区域
730:DRBG随机数生成器
780,980:SRAM缓存器
800:电路
801,803,805,807:块
802,804,806,808:加密结果
810,820,830:CBC-MAC块
811,812,813,814:块密码
819,829,839:CBC-MAC输出
840:完整熵输出
855:个人化字符串或额外字符串(384位PUF码)
860:具现化函数
865:种子
913:计数器
930:GCM电路
931:联结函数
1001,1002,1003,1004,1005,1006,1007:区块
1200:真值表
A:额外认证数据
C:密文
H:哈希子密钥
IV:初始化向量
K:加密密钥
Key:秘密密钥
Key1:初始密钥
Key2:经编码密钥
P:明文
SCLK:系统时钟信号
T:认证标签
具体实施方式
以下描述将通常参考特定结构实施例及方法。应理解,不存在将所述技术限制为特定公开的实施例及方法的意图,而可使用其他特征、组件、方法及实施例实践所述技术。描述优选实施例以说明本发明技术,而非限制其保护范围,所述保护范围由申请专利范围限定。于本领域技术人员将认识到以下描述的各种等效变化。参考附图提供本发明的实施例的详细描述。
图1为根据一实施例的包括存储器单元阵列及用以使用PUF电路的逻辑的存储器装置的简化方块图。图1中所示的存储器装置100包括存储器单元阵列110,以及存储器装置中的用以生成PUF码的一或多个PUF电路133、PUF电路143、PUF电路153、PUF电路163。存储器装置包括:数据路径,将第一电路连接至第二电路,所述数据路径设置于存储器装置中耦接至存储器单元阵列;以及逻辑电路130、逻辑电路140、逻辑电路150、逻辑电路160,用以使用PUF码编码来自第一电路的数据路径上的数据以产生经编码数据且将经编码数据提供至第二电路。PUF码可包括多个位,诸如128个位。数据路径可包括多位总线,诸如具有128个位的总线。
存储器装置100包括输入与输出接口120,其可包括提供对存储器装置外部的其他装置或网络的存取的无线端口或有线端口。输入与输出接口120可包括多个接脚,包括用于与系统时钟信号SCLK同步的串列数据I/O(输入及输出)、用于接收及/或发送地址、数据以及命令信号的接脚。存储器装置100包括经由总线121耦接至输入与输出接口120的数据缓存器125。数据缓存器125可登记经由输入与输出接口120自其他装置或网络接收到的地址及输入数据。存储器装置100包括经由总线136耦接至存储器单元阵列110的地址生成器135。
在第一实施例中,经编码数据包括经编码地址。在此实施例中,使用相同编码来写入以及读取数据,从而由于PUF码为随机且不可复制的,故使得难以篡改对秘密数据的实体位置进行的定位。第一电路可包括登记地址的数据缓存器125,且第二电路可包括耦接至存储器单元阵列110的地址生成器135。数据路径可包括连接数据缓存器125与用以编码数据的逻辑电路130的第一路径131,以及连接用以编码数据的逻辑电路130与地址生成器135的第二路径132。用以编码数据路径上的数据的逻辑电路可包括用以编码来自数据缓存器的第一路径上的地址以产生经编码地址的逻辑,且所述逻辑经由第二路径将经编码地址提供至地址生成器,其中所述逻辑使用PUF码以编码第一路径上的地址。PUF电路133可生成PUF码且经由总线134将PUF码提供至逻辑电路130。举例而言,PUF电路133可包括缓存器,所述缓存器登记PUF码且经由总线134连接至逻辑电路。逻辑电路130包括用以使用通过PUF电路133提供的PUF码以及经登记在数据缓存器125上的地址作为输入编码数据路径上的数据且产生输出作为经编码地址的逻辑。
在第二实施例中,经编码数据包括经编码输入数据。在此实施例中,经编码数据在由输出侧上的逻辑150输出之前经译码。用于扰码的PUF码可与扰码数据一起存储且稍后提取以进行解扰码。输入数据通过PUF进行互斥或XOR(即exclusive-or)以获得扰码数据,且接着存储至闪存中。所存储扰码数据再次通过PUF码进行XOR,以在如由图12说明的真值表1200中示出的输出之前解扰码回至初始数据。
第一电路可包括登记输入数据的数据缓存器125,且第二电路可包括SRAM缓冲器145。数据路径可包括连接数据缓存器125与用以编码数据的逻辑电路140的第一路径141,以及连接逻辑电路140与SRAM缓冲器145的第二路径142。用以编码数据路径上的数据的逻辑电路140可包括使用PUF电路143所生成PUF码用以编码来自数据缓存器125的第一路径141上的输入数据以产生经编码输入数据且经由第二路径142将经编码输入数据提供至SRAM缓冲器145的逻辑。PUF电路143生成PUF码且经由总线144将PUF码提供至逻辑电路140。逻辑电路140包括用以使用通过PUF电路143提供的PUF码以及经登记在数据缓存器125上的输入数据作为输入编码数据路径上的数据且产生输出作为经编码输入数据的逻辑。
字线译码器113耦接至存储器单元阵列110中的多个字线且与所述多个字线电连通。位线译码器114与存储器单元阵列110中的多个位线115电连通,以用于读取、写入以及擦除存储器单元阵列110中的存储器单元。地址在总线136上供应至字线译码器113及位线译码器114。包括用于读取模式、编程模式以及擦除模式的电压及/或电流源的感测放大器117经由总线116耦接至位线译码器114。
在第三实施例中,经编码数据包括经编码输出数据。在此实施例中,用于扰码输出的PUF码可与扰码数据一起存储以进行解扰码。与第二实施例一样,输出数据可通过PUF进行XOR以获得扰码数据。扰码数据再次通过PUF码进行XOR以解扰码回至初始数据。第一电路可包括例如经由位线译码器114耦接至存储器单元阵列110的感测放大器117,且第二电路可包括经由总线123耦接至提供外部存取的输入与输出接口120的输出缓冲器118。数据路径可包括连接感测放大器117与逻辑电路150的第一路径151,以及连接逻辑电路150与输出缓冲器118的第二路径152。编码数据路径上的数据的逻辑电路150可包括使用PUF电路153所生成PUF码用以编码来自感测放大器117的第一路径151上的输出数据以产生经编码输出数据且经由第二路径152将经编码输出数据提供至输出缓冲器118的逻辑。PUF电路153生成PUF码且经由总线154将PUF码提供至逻辑电路150。逻辑电路150包括用以使用通过PUF电路153提供的PUF码以及来自感测放大器117的输出数据作为输入编码数据路径上的数据且产生输出作为经编码输出数据的逻辑。
在第四实施例中,使用PUF码编码初始密钥以产生经编码密钥。在此实施例中,在使用经编码/扰码密钥以用于密码编译之前需要对所述经编码/扰码密钥解扰码。初始密钥可通过存储器装置外部的其他装置或网络提供至存储器装置100(图1)的输入与输出接口120。存储器装置可包括用以自存储器装置外部来源接收初始密钥且用以将初始密钥存储于存储器单元阵列110中的第一位置的逻辑。初始密钥可包括关键安全参数。如本发明中所使用,关键安全参数(critical security parameter;CSP)指安全相关的信息(例如秘密及私密密码密钥,以及认证数据,诸如密码及PIN),所述安全相关的信息的公开或修改可危害密码模块的安全。
在此实施例中,第一电路可包括在存储器单元阵列中的第一位置设置的第一存储器单元集合111,且第二电路可包括在存储器单元阵列中的第二位置设置的第二存储器单元集合112。数据路径可包括连接第一存储器单元集合111与逻辑电路160的第一路径161,以及连接逻辑电路160与第二存储器单元集合112的第二路径162。逻辑电路160可包括用以编码来自第一存储器单元集合111的第一路径上的初始密钥Key1以产生经编码密钥Key2的逻辑,且所述逻辑经由第二路径将经编码密钥Key2提供至第二存储器单元集合112,其中所述逻辑使用PUF码以编码所述第一路径上的初始密钥Keyl。PUF电路163生成PUF码且经由总线164将PUF码提供至逻辑电路160。逻辑电路160包括用以使用通过PUF电路163提供的PUF码以及来自第一存储器单元集合111的初始密钥作为输入编码数据路径上的数据且产生输出作为经编码密钥的逻辑。经编码密钥存储于第二存储器单元集合112中,第二存储器单元集合112设置在存储器单元阵列中的第二位置。
外部系统时钟SCLK可在端口171处提供至存储器装置。时钟生成器170可经由信号线172自端口171接收系统时钟信号SCLK,且将内部时钟173提供至模式逻辑电路180,且/或将其他内部时钟提供至存储器装置100中的其他内部电路。模式逻辑电路180可经由线122自输入与输出接口120接收命令信号,译码命令信号以用于各种模式(读取、写入、擦除),且经由线181将经译码信号发送至状态机185以用于对存储器单元阵列执行读取操作、写入操作、擦除操作。状态机185可经由线146自SRAM缓冲器145接收信号,经由线181自模式逻辑电路180接收信号,且生成信号186以用于感测放大器117及高压生成器187对于高压操作,例如对于写入操作,启动高压生成器187以经由线188控制存储器单元阵列110的偏压配置供应电压及电流源的应用,诸如读取、写入以及擦除电压及/或电流。
安全引擎190经由线182耦接至模式逻辑电路180,经由线147耦接至SRAM缓冲器145,且经由线178及线191耦接至状态机185。安全引擎190可包括用以处置经由线178的来自状态机185的口令输入且使用来自模式逻辑电路180的输入以及来自SRAM缓冲器145的经编码输入数据经由线191将响应输出提供至状态机185的逻辑。安全引擎190可使用加密/解密、哈希信息认证码(Hash Message Authentication Code;HMAC)或本领域技术人员熟悉的类似技术来处理来自状态机的口令输入。
在实施例中,使用PUF码编码数据路径上的数据的逻辑电路(130、140、150、160)可包括逻辑函数、exclusive-or函数以及复数方程中的至少一者,逻辑电路(130、140、150、160)使用数据路径上的数据及PUF码作为输入且产生经编码输出数据作为输出,如参考图2至图5进一步描述。数据可通过PUF进行XOR以获得扰码数据。扰码数据再次通过PUF码进行XOR以解扰码回至初始数据。替代地,逻辑电路可使用适用于使用PUF码编码数据路径上的数据的其他逻辑。
图2示出如本发明中针对如图1的装置实施例的系统所描述产生经编码地址的实例数据路径。在通过图2描绘的实施例中,PUF电路133可生成具有N数目个位的多位PUF码,例如N=128,且经由总线134将具有N数目个位的PUF码提供至逻辑电路130。数据缓存器125可登记具有N数目个位的地址。包括第一路径131及第二路径132的数据路径可包括多位总线,诸如具有N数目个位的总线。尽管为清楚起见,图2中示出仅1位的PUF码PUF_Code[0]及仅1位的地址Address[0],但PUF码可具有N数目个位且地址可具有N数目个位,其中N>1,例如N=128。逻辑电路130包括用以使用所生成的PUF码编码数据路径上的数据的逻辑。逻辑电路130可包括exclusive-or函数,其同时包括N数目个XOR栅。连接至N数目个XOR栅中的各别XOR栅的逻辑电路130可使用N位PUF码及N位地址作为输入,且产生输出作为经由数据路径中的第二路径132至地址生成器135的具有N数目位的经编码地址。替代地,逻辑电路130可使用适用于使用PUF码编码地址的其他逻辑。
图3示出如本发明中针对如图1的装置实施例的系统所描述产生经编码输入数据的实例数据路径。在通过图3描绘的实施例中,PUF电路143可生成具有N数目个位的多位PUF码,例如N=128,且经由总线144将具有N数目个位的PUF码提供至逻辑电路140。数据缓存器125可登记具有N数目个位的输入数据。包括第一路径141及第二路径142的数据路径可包括多位总线,诸如具有N数目个位的总线。尽管为清楚起见,图3中示出仅1位的PUF码PUF_Code[0]及仅1位的输入数据Input_Data[0],但PUF码可具有N数目个位且输入数据可具有N数目个位,其中N>1,例如N=128。逻辑电路140包括用以使用所生成的PUF码编码数据路径上的数据的逻辑。逻辑电路140可包括exclusive-or函数,其同时包括N数目个XOR栅。连接至N数目个XOR栅中的各别XOR栅的逻辑电路140可使用N位PUF码及N位输入数据作为输入,且产生输出作为经由数据路径中的第二路径142至SRAM缓冲器145的具有N数目位的经编码输入数据。替代地,逻辑电路140可使用适用于使用PUF码编码输入数据的其他逻辑。
图4示出如本发明中针对如图1的装置实施例的系统所描述产生经编码输出数据的实例数据路径。在通过图4描绘的实施例中,PUF电路153可生成具有N数目个位的多位PUF码,例如N=128,且经由总线154将具有N数目个位的PUF码提供至逻辑电路150。感测放大器117可提供具有N数目个位的输出数据。包括第一路径151及第二路径152的数据路径可包括多位总线,诸如具有N数目个位的总线。尽管为清楚起见,图4中示出仅1位的PUF码PUF_Code[0]及仅1位的输出数据Output_Data[0],但PUF码可具有N数目个位且输出数据可具有N数目个位,其中N>1,例如N=128。逻辑电路150包括用以使用所生成的PUF码编码数据路径上的数据的逻辑。逻辑电路150可包括exclusive-or函数,其同时包括N数目个XOR栅。连接至N数目个XOR栅中的各别XOR栅的逻辑电路150可使用N位PUF码及N位输出数据作为输入,且产生输出作为经由数据路径中的第二路径152至输出缓冲器118的具有N数目位的经编码输出数据。替代地,逻辑电路150可使用适用于使用PUF码编码输出数据的其他逻辑。
图5示出如本发明中针对如图1的装置实施例的系统所描述产生经编码密钥的实例数据路径。在通过图5描绘的实施例中,PUF电路163可生成具有N数目个位的多位PUF码,例如N=128,且经由总线164将具有N数目个位的PUF码提供至逻辑电路160。存储器单元阵列110中的第一位置的第一存储器单元集合111可提供具有N数目个位的初始密钥。包括第一路径161及第二路径162的数据路径可包括多位总线,诸如具有N数目个位的总线。尽管为清楚起见,图5中示出仅1位的PUF码PUF_Code[0]及仅1位的密钥Key[0],但PUF码可具有N数目个位且密钥可具有N数目个位,其中N>1,例如N=128。逻辑电路160包括用以使用所生成的PUF码编码数据路径上的数据的逻辑。逻辑电路160可包括exclusive-or函数,其同时包括N数目个XOR栅。连接至N数目个XOR栅中的各别XOR栅的逻辑电路160可使用N位PUF码及N位输出数据作为输入,且产生输出作为经由数据路径中的第二路径162至存储器单元阵列中的第二位置的第二存储器单元集合112的具有N数目位的经编码密钥。替代地,逻辑电路160可使用适用于使用PUF码编码初始密钥的其他逻辑。
图6为示出如本发明中针对如图1的装置实施例的系统所描述用于在存储器装置中使用PUF码的实例方法的流程图。存储器装置可包括:存储器单元阵列;PUF电路;数据路径,将第一电路连接至第二电路,数据路径设置于存储器装置中耦接至存储器单元阵列;以及逻辑电路,用以编码数据路径上的数据,逻辑电路可包括逻辑函数、互斥或exclusive-or函数以及复数方程中的至少一者。
在步骤610处,可执行PUF电路以生成PUF码。在步骤620处的编码步骤,可使用PUF码编码来自第一电路的数据路径上的数据以产生经编码数据,其中编码步骤包括应用逻辑函数、互斥或exclusive-or函数以及复数方程中的至少一者,逻辑函数、互斥或exclusive-or函数以及复数方程使用PUF码及数据路径上的数据作为输入且产生输出作为经编码输出数据。在步骤630处,可将经编码数据提供至第二电路。
在一个代表性固定存储器实施方案中,如图2的实例中所示出,经编码数据包括经编码地址。第一电路可包括登记地址的数据缓存器125,第二电路可包括耦接至存储器单元阵列110的地址生成器135,且数据路径可包括连接数据缓存器125与用以编码数据的逻辑电路130的第一路径131以及连接用以编码数据的逻辑电路与地址生成器135的第二路径132。在此实施例中,方法可包括使用PUF码编码来自数据缓存器125的第一路径131上的地址以产生经编码地址,且经由第二路径132将经编码地址提供至地址生成器135。
在另一代表性实施方案中,如图3的实例中所示出,经编码数据包括经编码输入数据。第一电路可包括登记输入数据的数据缓存器125,且第二电路包括SRAM缓冲器145。数据路径可包括连接数据缓存器125与逻辑电路140的第一路径141,以及连接逻辑电路140与SRAM缓冲器145的第二路径142。在此实施例中,方法可包括使用PUF码编码来自数据缓存器125的第一路径上的输入数据以产生经编码输入数据,且经由第二路径142将经编码输入数据提供至SRAM缓冲器145。
在另一代表性实施方案中,如图4的实例中所示出,经编码数据包括经编码输出数据。第一电路可包括例如经由位线译码器114耦接至存储器单元阵列110的感测放大器117,且第二电路可包括经由总线123耦接至输入与输出接口120的输出缓冲器118。数据路径可包括连接感测放大器117与用以编码数据的逻辑电路150的第一路径151,以及连接用以编码数据的逻辑电路150与输出缓冲器118的第二路径。在此实施例中,方法可包括使用PUF码编码来自感测放大器117的第一路径151上的输出数据以产生经编码输出数据,且经由第二路径152将经编码输出数据提供至输出缓冲器118。
在又一代表性实施方案中,如图5的实例中所示出,使用PUF码编码初始密钥以产生经编码密钥。第一电路可包括在存储器单元阵列中的第一位置设置的第一存储器单元集合111,且第二电路可包括在存储器单元阵列中的第二位置设置的第二存储器单元集合112。数据路径可包括连接第一存储器单元集合111与逻辑电路160的第一路径161,以及连接逻辑电路160与第二存储器单元集合112的第二路径162。在此实施例中,方法可包括使用PUF码编码来自第一存储器单元集合111的第一路径161上的初始密钥以产生经编码密钥,且经由第二路径162将经编码密钥提供至第二存储器单元集合112。
图7为根据另一实施例的包括存储器单元阵列710及判定性随机位生成器(Deterministic Random Bit Generator;DRBG)随机数生成器730的存储器装置700的简化方块图。如图7中所示出,存储器装置700可包括存储器单元阵列710、DRBG随机数生成器730、安全引擎770、SRAM缓存器780以及输入与输出接口790。
存储器单元阵列710可包括用于存储用户数据的用户数据区域715、在存储器单元阵列中的第一位置设置的第一存储器单元集合711以及在存储器单元阵列中的第二位置设置的第二存储器单元集合712。第一位置及第二位置在用户数据区域外部。现参考图8A,其示出如本发明中针对如图7的装置实施例的系统所描述用于生成随机数生成器的初始值的电路,可将PUF码(诸如图8A的由PUF850生成的图8A的384位PUF码855)称作个人化字符串或额外字符串。再次参考图7,图8A的384位PUF码855可存储于图7的第一存储器单元集合711中且经由线716提供至DRBG随机数生成器730。密钥(诸如由DRBG随机数生成器730生成)可经由线735提供且存储于第二存储器单元集合712中。
随机数生成器730(诸如判定性随机位生成器(DRBG))可生成属性与随机数的序列的属性接近的数目序列。DRBG生成的序列通过初始值来判定,诸如由电路800生成的384位种子包括如图8A中所示出的密码块链接信息认证码(cipher block chaining messageauthentication code;CBC-MAC)块。CBC-MAC为用于根据块密码建构信息认证码的技术。由DRBG随机数生成器730生成的数目序列可作为密钥存储于存储器单元阵列710中的第二存储器单元集合712中。对于关于DRBG的背景信息,可能必须参考2012年1月的名称为「对于使用判定性随机位生成器的随机数生成的建议(Recommendation for Random NumberGeneration Using Deterministic Random Bit Generators)」的NIST特殊公开案800-90A,所述公开案以引用的方式并入如同在本发明中完整阐述一般。
存储器装置700包括安全引擎770,其可包括实施高级加密标准(AdvancedEncryption Standard;AES)、基于哈希的信息认证码(HMAC)等以用于对由存储器装置700存储的数据实行加密/解密操作且/或实行MAC计算以用于认证的电路。安全引擎770耦接至DRBG随机数生成器730,使得由DRBG随机数生成器730生成的数目序列能够由安全引擎770用作初始值以用于实行由存储器装置700存储的数据及/或地址信息的加密。在一个实施方案中,CMC-MAC实现在DRBG功能之前应用的熵源调节。
存储器装置700包括SRAM缓存器780,其可用于登记耦接至存储器单元阵列710的数据路径上的数据。
存储器装置700包括输入与输出接口790,其可包括提供对存储器装置外部的其他装置或网络的存取的无线端口或有线端口。输入与输出接口790可包括多个接脚,包括用于串列数据I/O(输入及输出)、用于接收及/或发送地址、数据以及命令信号的接脚。举例而言,输入与输出接口790可支持串列周边接口(Serial Peripheral Interface;SPI)、内置集成电路(Inter-Integrated Circuit;12C)等。
图8A示出如本发明中针对如图7的装置实施例的系统所描述用于生成随机数生成器的初始值的电路。电路800包括分别生成第一密码块链接信息认证码(CBC-MAC)输出819、第二CBC-MAC输出829以及第三CBC-MAC输出839的第一CBC-MAC块810、第二CBC-MAC块820以及第三CBC-MAC块830。第一CBC-MAC输出、第二CBC-MAC输出以及第三CBC-MAC输出中的每一者可包括128个位。第一CBC-MAC输出、第二CBC-MAC输出以及第三CBC-MAC输出合并成384位的完整熵(例如完全随机且不具有有意义模式)输出840。
PUF电路850可生成384位PUF码855,其被称为个人化字符串或额外字符串。384位的完整熵输出840及384位PUF码855输入至具现化函数860以产生384位的种子865,其被称为初始值。384位的种子865由图7的DBRG随机数生成器730使用以使用参考图8B中进一步描述的过程经由线735生成伪随机输出。
继续参考图8A,CBC-MAC块(诸如第一CBC-MAC块810)包括实施根据块密码建构信息认证码的电路系统。(通过验证信息认证码为正确的,接收端可验证信息在发送之后但在接收到其之前尚未经篡改。)信息在CBC模式中通过一些块密码算法加密以形成一系列块(801、803、805、807),使得每一块处的加密取决于先前块的加密结果(例如块803的加密取决于例如加密块801的先前加密阶段的结果802)。信息可包括多个块B0、块B1、块B2、块B3等,所述多个块各自包括128个位。信息可以是待存储于例如存储器单元阵列710的用户数据区域715中或自存储器单元阵列710的用户数据区域715提取的数据。在CMC-MAC用于熵源调节时,块B0至块B3等将为来自随机数生成器的随机位。尽管图8A示出用于信息的四个块(801、803、805、807),但信息可包括大于四个块。通过零初始化向量「All 0」初始化块链。使用秘密密钥Key及块密码811至块密码814计算信息的CBC-MAC。举例而言,块密码可以是AES引擎,其实施高级加密标准(AES)中的算法。AES可包括三种块密码:分别使用128位密钥长度、192位密钥长度以及256位密钥长度的AES-128、AES-192以及AES-256。尽管图8A中示出256位密钥长度,但实施例中可使用128位密钥长度及192位密钥长度。
块密码811、块密码812、块密码813以及块密码814分别产生加密结果B0′、加密结果B1′、加密结果B2′以及加密结果B3′(802、804、806、808)。最末块(例如块B3)处的加密结果产生来自CBC-MAC块的128位的输出,诸如来自第一CBC-MAC块810的第一CBC-MAC输出819。每一块处的加密取决于先前块的加密结果。举例而言,块B1 803处的加密取决于先前块B0 801的加密结果B0′802,块B2 805处的加密取决于先前块B1 803的加密结果B1′804,且块B3 807处的加密取决于先前块B2 805的加密结果B2′806。
图8B示出如本发明中针对如图7的装置实施例的系统所描述的DRBG功能模型。DBRG随机数生成器730的DRBG功能模型根据种子经由线735生成伪随机输出。种子865可由具现化函数860根据包括个人化字符串或额外字符串855的输入及熵输入建构。个人化字符串或额外字符串855可通过PUF电路850(图8A)提供,且熵输入可通过384位的完整熵输出840(图8A)提供。在实施方案中,具现化函数、种子/再播种函数可为AES CTR。本领域技术人员可参考2015年6月的名称为「对于使用判定性随机位生成器的随机数生成的建议」的NIST特殊公开案800-90a,所述公开案以引用的方式并入如同在本发明中完整阐述一般。
图9为根据又一实施例的包括存储器单元阵列及GCM电路的存储器装置的简化方块图。如图9中所示出,存储器装置900包括存储器单元阵列910及实施伽罗华/计数器模式(Galois/Counter Mode;GCM)的函数的GCM电路930。GCM描述于2007年11月的名称为「对于块密码操作模式:伽罗华/计数器模式(GCM)及GMAC的建议(Recommendation for BlockCipher Modes of Operation:Galois/Counter Mode(GCM)and GMAC)」的NIST特殊公开案800-38D中,所述公开案以引用的方式并入如同在本发明中完整阐述一般。
存储器单元阵列910可包括用于存储用户数据的用户数据区域915、在存储器单元阵列中的第一位置设置的第一存储器单元集合911以及在存储器单元阵列中的第二位置设置的第二存储器单元集合912。第一位置及第二位置在用户数据区域915外部。PUF码(诸如由PUF电路生成的额外认证数据(additional authenticated data;AAD))可存储于第一存储器单元集合911中且经由线916提供至GCM电路930。密钥(诸如由GCM电路930生成的认证标签)可经由线935提供且存储于第二存储器单元集合912中。存储器单元阵列910可包括计数器913。
GCM电路930可包括三个输入字符串:标示为P的明文、标示为A的额外认证数据(AAD)、以及标示为IV的初始化向量,且包括两个输出字符串:标示为C的密文及标示为T的认证标签。在GCM函数中,明文P经加密为密文C,且认证标签T自额外认证数据AAD及密文C生成。参考图10进一步描述GCM。
用于建构初始化向量(initialization vector;IV)的电路由判定性建构实施。在判定性建构中,IV为称为固定字段及调用字段的两个字段的串联。在一实施方案中,固定字段识别装置,或更通常,识别认证加密函数的例项的情形。调用字段识别彼特定装置中的认证加密函数的输入集合。存储于第一存储器单元集合911中的PUF码可为固定字段。存储于存储器单元阵列910中的来自整数计数器913的计数器输出可为调用字段。PUF码可包括于额外认证数据(AAD)中,所述额外认证数据经由线916提供至GCM电路930中的GCM电路930的AAD输入A。计数器输出可经由线917提供至GCM电路930。联结函数931可联结PUF码及计数器输出以产生初始化向量IV。初始化向量IV可经由线932提供至GCM电路930的初始化向量输入IV。明文经由线933提供至GCM电路930的明文输入P。明文可以是待存储于例如存储器单元阵列910的用户数据区域915中或自存储器单元阵列910的用户数据区域915提取的数据。计数器可以是自存储器单元阵列910提取的易失性计数器或非易失性。
GCM电路930可产生认证标签T及密文C。由存储器单元阵列910中的第二位置设置的第二存储器单元集合912存储的加密密钥K可经由线935提供至GCM 930。一旦明文933经加密为密文,密文及标签便可输出至用户且/或经由线936存储于存储器单元阵列910的用户数据区域915中。
存储器装置900包括安全引擎970,其可包括实施高级加密标准(AES)、基于哈希的信息认证码(HMAC)等以用于对由存储器装置900存储的数据实行加密/解密操作且/或实行MAC计算以用于认证的电路。安全引擎970根据NIST SP 800-38d实施GCM操作模式(例如GCM电路930)以用于实行加密/解密操作。当然,AES GCM为由一些实施方案使用的一种类型的加密/解密技术。
存储器装置900包括SRAM缓存器980,其可用于登记耦接至存储器单元阵列910的数据路径上的数据。存储器装置900包括输入与输出接口990,其可包括提供对存储器装置外部的其他装置或网络的存取的无线端口或有线端口。输入与输出接口990可包括多个接脚,包括用于串列数据I/O(输入及输出)、用于接收及/或发送地址、数据以及命令信号的接脚。举例而言,输入与输出接口990可支持串列周边接口(SPI)、内置集成电路(I2C)等。
图10示出如本发明中针对如图9的装置实施例的系统所描述的伽罗华/计数器模式(GCM)的认证加密函数。在此实施例中,明文经加密为密文,且认证标签来自额外认证数据(AAD)及密文生成。
如本发明中所使用,额外认证数据AAD指经认证但未经加密的认证加密函数的输入数据。认证卷标指经设计以揭示数据的意外错误及有意修改两者的数据的密码校对和。密文指明文的加密形式。明文指经认证且经加密的认证加密函数的输入数据。
GCM中使用的变量包括:
如图10及图11中所示出,GCM的认证加密函数包括以下步骤:
1.使H=CIPHK(0128)。
2.将块J0定义如下:
若len(IV)=96,则使J0=IV||031||1。
J0=GHASHH(IV||0s+64||[len(IV)]64)。
3.使C=GCTRK(inc32(J0),P)。
5.将块S定义如下:
S=GHASHH(A||0V||C||0u||[len(A)]64||[len(C)]64)。
6.使T=MSBt(GCTRK(J0,S))。
存在GCM的认证加密函数的三个输入字符串:标示为P的明文、标示为A的额外认证数据(AAD)以及初始化向量IV。GCM保护明文及AAD的真实性。存在来自GCM的认证加密函数的两个输出字符串:标示为C的密文,其位长度与明文的位长度相同;以及认证卷标,或卷标,标示为T。GCM的数学分量包括递增函数incs、对块的乘法运算、GHASH函数以及GCTR函数。
图11为示出如本发明中针对如图9的装置实施例的系统所描述在存储器装置中使用PUF码利用GCM的实例认证加密方法的流程图。
在区块1001中,通过将块密码CIPHK应用于「零」块0128来生成GHASH函数的哈希子密钥H。
在区块1002中,自初始化向量IV生成预计数器块(J0)。
在区块1003中,将32位的递增函数inc32应用于预计数器块(J0)以产生用于调用明文P上的GCTR函数的初始计数器块。GCTR函数的此调用的输出为密文C。
在区块1004及区块1005中,AAD及密文C各自附加有『0』位的最小数目(可能没有),使得所得字符串的位长度为块大小的倍数。这些字符串的串联附加有AAD及密文C的长度的64位表示([len(A)]64,[len(C)]64)。
在区块1006中,将GHASH函数应用于结果以产生单个输出块。
在区块1007中,使用具有在区块1002中生成的预计数器块(J0)的GCTR函数加密此输出块,且结果经截断为指定的标签长度t(MSBt)以形成认证标签T。
此章节中描述的方法的其他实施方案可包括非暂时性计算机可读存储媒体,其存储可由处理器执行以执行上文所描述的方法中的任一者的指令。此章节中描述的方法的又一实施方案可包括一种包括存储器及一或多个处理器的系统,所述一或多个处理器可操作以执行存储于存储器中的指令以执行上文所描述的方法中的任一者。
上文描述或提及的任何数据结构及程序代码根据计算机可读存储媒体上的许多实施方案而存储,所述计算机可读存储媒体可以是可存储由计算机系统使用的程序代码及/或数据的任何装置或媒体。此包括但不限于易失性存储器、非易失性存储器、特殊应用集成电路(application-specific integrated circuit;ASIC)、场可编程门阵列(field-programmable gate array;FPGA)、磁性及光学存储装置(诸如磁盘驱动器、磁带、紧密光盘(compact disc;CD)、数字通用光盘或数字视频光盘(digital versatile disc或digitalvideo disc;DVD)),或现在已知或稍后研发的能够存储计算机可读媒体的其他媒体。
字节为许多集成电路逻辑及存储器电路中使用的基本存储单元且由八个字节成。基本存储单元可具有其他大小,包括例如一个位、两个位、四个位、16个位等等。因此,上文阐述且在本发明中所描述的其他实例中利用术语字节的加密/解密逻辑电路的描述一般应用于如将通过用存储单元或存储单元的集合替换术语字节或字节的集合来描述的使用不同大小的存储单元的电路。另外,在一些实施例中,不同大小的存储单元可用于单一命令序列,诸如与八位存储单元合并的一或多个四位存储单元。如本发明中所使用,扰码及编码基本上可互换且提及使用逻辑电路来将PUF码应用于电子信号(如经解扰码且经译码)以执行反相操作。如本发明中所使用,加密及编密(enciphered)基本上可互换且提及使用电路系统及/或软件来将加密算法应用于以电子形式表示(例如存储于存储装置中或经由导线或电波携载)的数据(如经解密且经解译(deciphered))以执行反相操作。
本发明中描述示出通过存储器控制器或通过存储器装置执行的逻辑的数个流程图。逻辑可使用利用存储于计算机系统可存取的存储器中的计算机程序来编程的处理器实施,且可通过处理器、通过专用逻辑硬件(包括场可编程集成电路)以及通过专用逻辑硬件与计算机程序的组合执行。如同本发明中的所有流程图,应了解,可合并、并行执行或以不同序列执行许多步骤而不影响所达成功能。在一些情况下,如读者将了解,只要亦进行某些其他改变,重新配置步骤将达成相同结果。在其他情况下,如读者将了解,只要符合某些条件,重新配置步骤将达成相同结果。此外,将了解,本发明中的流程图仅示出相关于理解所描述技术的步骤,且将理解,可在所示出的步骤之前、之后以及之间执行用于实现其他功能的大量额外步骤。
本发明中描述一种具有安全逻辑电路(security logic circuit)的装置以及一种响应于在输入与输出接口接收到的命令序列的方法,所述命令序列包括待编码、加密、译码、或解密的信息。
本发明中描述一种具有安全逻辑电路及PUF码生成电路的装置以及一种响应于在输入与输出接口接收到的命令序列的方法。
描述一种具有安全逻辑电路及PUF码生成电路的装置以及一种用于执行命令的方法,所述方法包括:接收携载实时数据有效负载的命令,所述实时数据有效负载包括待编码、加密、译码、或解密的信息;应用由PUF码生成电路生成的PUF码以编码且译码所携载的电子信息;从而获得电子信息的经编码版本或经译码版本;以及执行与电子信息的经编码版本或经译码版本相对应的存储器操作。
描述一种具有安全逻辑电路及PUF码生成电路的装置以及一种方法,包括安全逻辑电路将PUF码应用于携载地址的数据路径、携载用于存储至存储器单元或自存储器单元提取的数据的数据路径中的至少一者。
描述一种具有安全逻辑电路、PUF码生成电路以及产生至少伪随机数序列的判定性随机数生成器的装置以及一种方法,包括:将判定性随机数生成器的输出与个人化字符串合并以产生用于初始化加密操作的种子值的安全逻辑电路;以及将所生成的PUF码应用为个人化字符串。
描述一种具有安全逻辑电路及PUF码生成电路的装置以及一种方法,包括安全逻辑电路基于额外认证数据将加密算法应用于待存储于存储器单元中、存储于存储器单元中、自存储器单元提取或待自存储器单元提取的作为输入的数据;且其中安全逻辑电路将所生成的PUF码串联至所生成的计数器值以获得额外认证数据。
描述一种具有安全逻辑电路及PUF码生成电路的装置以及一种方法,包括用以使用PUF码编码来自数据缓存器的第一路径上的地址以产生经编码地址且经由第二路径将经编码地址提供至地址生成器的安全逻辑电路。
描述一种具有安全逻辑电路及PUF码生成电路的装置以及一种方法,包括用以编码数据路径上的数据的安全逻辑电路,其包括用以编码来自数据缓存器的第一路径上的输入数据以产生经编码输入数据的逻辑,且所述逻辑经由第二路径将经编码输入数据提供至SRAM缓冲器,其中所述逻辑使用PUF码以编码第一路径上的输入数据。
描述一种具有安全逻辑电路及PUF码生成电路的装置以及一种方法,包括用以使用PUF码编码来自感测放大器的第一路径上的输出数据以产生经编码输出数据且经由第二路径将经编码输出数据提供至输出缓冲器的安全逻辑电路。
描述一种具有安全逻辑电路及PUF码生成电路的装置以及一种方法,包括用以使用PUF码编码来自第一存储器单元集合的第一路径上的初始密钥以产生经编码密钥且经由第二路径将经编码密钥提供至第二存储器单元集合的安全逻辑电路。
至此,已经结合附图对本发明实施例进行了详细描述。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种存储器装置,包括:
存储器单元阵列;
物理不可复制函数电路(physical unclonable function circuit,PUF电路),设置于所述存储器装置中,所述物理不可复制函数电路用以生成物理不可复制函数码(physicalunclonable function code,PUF码);
数据路径,将第一电路连接至第二电路,所述第二电路设置于所述存储器装置中且耦接至所述存储器单元阵列;以及
逻辑电路,用以使用所述物理不可复制函数码编码来自所述第一电路的所述数据路径上的数据以产生经编码数据,且将所述经编码数据提供至所述第二电路。
2.根据权利要求1所述的存储器装置,其中
所述第一电路包括用以登记地址的数据缓存器;
所述第二电路包括耦接至所述存储器单元阵列的地址生成器;
所述数据路径包括连接所述数据缓存器与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述地址生成器的第二路径;且
用以编码所述数据路径上的数据的所述逻辑电路包括用以编码来自所述数据缓存器的所述第一路径上的地址以产生经编码地址的逻辑,且所述逻辑经由所述第二路径将所述经编码地址提供至所述地址生成器,其中所述逻辑使用所述物理不可复制函数码以编码所述第一路径上的地址。
3.根据权利要求1所述的存储器装置,其中
所述第一电路包括登记输入数据的数据缓存器;
所述第二电路包括SRAM缓冲器;
所述数据路径包括连接所述数据缓存器与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述SRAM缓冲器的第二路径;且
用以编码所述数据路径上的数据的所述逻辑电路包括用以编码来自所述数据缓存器的所述第一路径上的输入数据以产生经编码输入数据的逻辑,且所述逻辑经由所述第二路径将所述经编码输入数据提供至所述SRAM缓冲器,其中所述逻辑使用所述物理不可复制函数码以编码所述第一路径上的输入数据。
4.根据权利要求1所述的存储器装置,其中
所述第一电路包括耦接至所述存储器单元阵列的感测放大器;
所述第二电路包括耦接至输入与输出接口的输出缓冲器,所述输入与输出接口提供外部存取;
所述数据路径包括连接所述感测放大器与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述输出缓冲器的第二路径;且
用以编码所述数据路径上的数据的所述逻辑电路包括用以编码来自所述感测放大器的所述第一路径上的输出数据以产生经编码输出数据的逻辑,且所述逻辑经由所述第二路径将所述经编码输出数据提供至所述输出缓冲器,其中所述逻辑使用所述物理不可复制函数码以编码所述第一路径上的输出数据。
5.根据权利要求4所述的存储器装置,其中用以编码数据的所述逻辑电路包括逻辑函数、互斥或exclusive-or函数以及复数方程中的至少一者,所述逻辑电路使用所述物理不可复制函数码及所述数据路径上的所述数据作为输入且产生所述经编码输出数据作为输出。
6.根据权利要求1所述的存储器装置,其中
所述第一电路包括在所述存储器单元阵列中的第一位置设置的第一存储器单元集合;
所述第二电路包括在所述存储器单元阵列中的第二位置设置的第二存储器单元集合;
所述数据路径包括连接所述第一存储器单元集合与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述第二存储器单元集合的第二路径;且
用以编码所述数据路径上的数据的所述逻辑电路包括用以编码来自所述第一存储器单元集合的所述第一路径上的初始密钥以产生经编码密钥的逻辑,且所述逻辑经由所述第二路径将所述经编码密钥提供至所述第二存储器单元集合,其中所述逻辑使用所述物理不可复制函数码以编码所述第一路径上的初始密钥。
7.根据权利要求6所述的存储器装置,其中所述初始密钥包括关键安全参数。
8.根据权利要求6所述的存储器装置,更包括:
用以自所述存储器装置外部来源接收初始密钥且用以将所述初始密钥存储于所述第一存储器单元集合中的逻辑。
9.一种用于在存储器装置中使用物理不可复制函数码(physical unclonablefunction code,PUF码)的方法,所述存储器装置包括:存储器单元阵列;物理不可复制函数电路(physical unclonable function circuit,PUF电路);数据路径,将第一电路连接至第二电路,所述第二电路设置于所述存储器装置中且耦接至所述存储器单元阵列;以及逻辑电路,用以编码所述数据路径上的数据,所述方法包括:
执行所述物理不可复制函数电路以生成所述物理不可复制函数码;
使用所述物理不可复制函数码编码来自所述第一电路的所述数据路径上的数据以产生经编码数据的编码步骤;以及
将所述经编码数据提供至所述第二电路。
10.根据权利要求9所述的用于在存储器装置中使用物理不可复制函数码的方法,其中所述第一电路包括登记地址的数据缓存器,所述第二电路包括耦接至所述存储器单元阵列的地址生成器,且所述数据路径包括连接所述数据缓存器与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述地址生成器的第二路径,所述方法包括:
使用所述物理不可复制函数码编码来自所述数据缓存器的所述第一路径上的地址以产生经编码地址;以及
经由所述第二路径将所述经编码地址提供至所述地址生成器。
11.根据权利要求9所述的用于在存储器装置中使用物理不可复制函数码的方法,其中所述第一电路包括登记输入数据的数据缓存器,所述第二电路包括SRAM缓冲器,且所述数据路径包括连接所述数据缓存器与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述SRAM缓冲器的第二路径,所述方法包括:
使用所述物理不可复制函数码编码来自所述数据缓存器的所述第一路径上的输入数据以产生经编码输入数据;以及
经由所述第二路径将所述经编码输入数据提供至所述SRAM缓冲器。
12.根据权利要求9所述的用于在存储器装置中使用物理不可复制函数码的方法,其中所述第一电路包括耦接至所述存储器单元阵列的感测放大器,所述第二电路包括耦接至输入与输出接口的输出缓冲器,所述输入与输出接口提供外部存取,且所述数据路径包括连接所述感测放大器与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述输出缓冲器的第二路径,所述方法包括:
使用所述物理不可复制函数码编码来自所述感测放大器的所述第一路径上的输出数据以产生经编码输出数据;以及
经由所述第二路径将所述经编码输出数据提供至所述输出缓冲器。
13.根据权利要求9所述的用于在存储器装置中使用物理不可复制函数码的方法,其中所述第一电路包括在所述存储器单元阵列中的第一位置设置的第一存储器单元集合,所述第二电路包括在所述存储器单元阵列中的第二位置设置的第二存储器单元集合,且所述数据路径包括连接所述第一存储器单元集合与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述第二存储器单元集合的第二路径,所述方法包括:
使用所述物理不可复制函数码编码来自所述第一存储器单元集合的所述第一路径上的初始密钥以产生经编码密钥;以及
经由所述第二路径将所述经编码密钥提供至所述第二存储器单元集合。
14.根据权利要求13所述的用于在存储器装置中使用物理不可复制函数码的方法,其中所述初始密钥包括关键安全参数。
15.根据权利要求9所述的用于在存储器装置中使用物理不可复制函数码的方法,其中所述编码步骤包括应用逻辑函数、互斥或exclusive-or函数以及复数方程中的至少一者,所述逻辑函数、所述exclusive-or函数以及所述复数方程使用所述物理不可复制函数码及所述数据路径上的所述数据作为输入且产生输出作为所述经编码输出数据。
16.根据权利要求9所述的用于在存储器装置中使用物理不可复制函数码的方法,其中所述第一电路包括在所述存储器单元阵列中的第一位置设置的第一存储器单元集合,所述第二电路包括在所述存储器单元阵列中的第二位置设置的第二存储器单元集合,且所述数据路径包括连接所述第一存储器单元集合与用以编码数据的所述逻辑电路的第一路径以及连接用以编码数据的所述逻辑电路与所述第二存储器单元集合的第二路径,所述方法包括:
自所述存储器装置外部来源接收初始密钥;
将所述初始密钥存储于所述第一存储器单元集合中;
使用所述物理不可复制函数码编码来自所述第一存储器单元集合的所述第一路径上的所述初始密钥以产生经编码密钥;以及
经由所述第二路径将所述经编码密钥提供至所述第二存储器单元集合。
17.一种存储器装置,包括:
存储器阵列,包括多个位线;
输入与输出接口,用于接收、传送及提供外部存取;
数据路径电路,连接于所述存储器阵列与所述输入与输出接口之间;
物理不可复制函数码生成电路(physical unclonable function code generatingcircuit,PUF码生成电路),用以生成物理不可复制函数码(physicalunclonable functioncode,PUF码);
安全逻辑电路(security logic circuit),响应于在所述输入与输出接口接收到的命令序列,所述命令序列包括待编码、加密、译码、或解密的信息,应用由所述物理不可复制函数码生成电路生成的物理不可复制函数码来编码及译码所携载的电子信息,从而获得所述电子信息的经编码版本或经译码版本,以及执行与所述电子信息的所述经编码版本或所述经译码版本相对应的存储器操作。
18.根据权利要求17所述的存储器装置,其中所述安全逻辑电路将物理不可复制函数码应用于携载地址的数据路径、携载用于存储至存储器单元或自存储器单元提取的数据的数据路径中的至少一者。
19.根据权利要求17所述的存储器装置,更包括:
判定性随机数生成器,产生至少伪随机数的序列;且
其中所述安全逻辑电路,将所述判定性随机数生成器的输出与个人化字符串合并以产生用于初始化加密操作的种子值;以及将所生成的所述物理不可复制函数码应用为所述个人化字符串。
20.根据权利要求17所述的存储器装置,其中所述安全逻辑电路,基于额外认证数据作为输入而将加密算法应用于待存储于存储器单元中、存储于存储器单元中、自存储器单元提取或待自存储器单元提取的数据;且
其中所述安全逻辑电路连接所生成的所述物理不可复制函数码与所生成的计数器值以获得所述额外认证数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/087,085 | 2020-11-02 | ||
US17/087,085 US11380379B2 (en) | 2020-11-02 | 2020-11-02 | PUF applications in memories |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114444140A true CN114444140A (zh) | 2022-05-06 |
Family
ID=80681425
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110563900.7A Pending CN114444140A (zh) | 2020-11-02 | 2021-05-24 | 存储器中的不可复制函数应用 |
Country Status (3)
Country | Link |
---|---|
US (3) | US11380379B2 (zh) |
CN (1) | CN114444140A (zh) |
TW (1) | TWI751075B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10911229B2 (en) | 2016-08-04 | 2021-02-02 | Macronix International Co., Ltd. | Unchangeable physical unclonable function in non-volatile memory |
US11380379B2 (en) | 2020-11-02 | 2022-07-05 | Macronix International Co., Ltd. | PUF applications in memories |
US20220253536A1 (en) * | 2021-02-05 | 2022-08-11 | Skyechip Sdn Bhd | Memory controller for improving data integrity and providing data security and a method of operating thereof |
US12081238B2 (en) * | 2022-12-20 | 2024-09-03 | Xilinx, Inc. | Registration of a PUF signature and regeneration using a trellis decoder |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150171870A1 (en) * | 2013-12-18 | 2015-06-18 | Rachael J. Parker | Secret operations using reconfigurable logics |
CN104836669A (zh) * | 2015-05-08 | 2015-08-12 | 东南大学 | 一种基于sram puf的安全认证方法及一种终端、认证系统 |
CN107689237A (zh) * | 2016-08-04 | 2018-02-13 | 旺宏电子股份有限公司 | 电子装置及其存储器电路与其操作方法 |
US20180278418A1 (en) * | 2016-08-04 | 2018-09-27 | Macronix International Co., Ltd. | Physical unclonable function for security key |
CN108958650A (zh) * | 2017-05-22 | 2018-12-07 | 旺宏电子股份有限公司 | 电子系统及其操作方法 |
CN108958707A (zh) * | 2017-05-22 | 2018-12-07 | 旺宏电子股份有限公司 | 具有puf及随机数产生器的电路及其操作方法 |
CN111723409A (zh) * | 2019-03-22 | 2020-09-29 | 旺宏电子股份有限公司 | 集成电路、存储器电路以及用于操作集成电路的方法 |
Family Cites Families (101)
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 |
JP4028798B2 (ja) | 2000-06-02 | 2007-12-26 | 株式会社ルネサステクノロジ | 不揮発性半導体記憶装置および情報配信システムにおける情報管理方法 |
US6947556B1 (en) | 2000-08-21 | 2005-09-20 | International Business Machines Corporation | Secure data storage and retrieval with key management and user authentication |
JP2002073424A (ja) | 2000-08-31 | 2002-03-12 | Mitsubishi Electric Corp | 半導体装置、端末装置および通信方法 |
US7840803B2 (en) | 2002-04-16 | 2010-11-23 | Massachusetts Institute Of Technology | Authentication of integrated circuits |
DE602004028118D1 (de) | 2003-05-21 | 2010-08-26 | Koninkl Philips Electronics Nv | Verfahren und Vorrichtung zur Authentifikation eines physischen Gegenstandes |
US8391070B2 (en) | 2008-12-02 | 2013-03-05 | Spansion Llc | Moving program verify level for programming of memory |
ATE426969T1 (de) | 2005-11-29 | 2009-04-15 | Koninkl Philips Electronics Nv | Beweise der physischen nahe unter verwendung von cpufs |
US8290150B2 (en) | 2007-05-11 | 2012-10-16 | Validity Sensors, Inc. | Method and system for electronically securing an electronic device using physically unclonable functions |
US8130955B2 (en) | 2007-12-21 | 2012-03-06 | Spansion Llc | Random number generation through use of memory cell activity |
US7979658B2 (en) | 2008-03-25 | 2011-07-12 | Spansion Llc | Secure management of memory regions in a memory |
US8145855B2 (en) | 2008-09-12 | 2012-03-27 | Sandisk Technologies Inc. | Built in on-chip data scrambler for non-volatile memory |
WO2010030701A1 (en) | 2008-09-12 | 2010-03-18 | Sandisk Corporation | Built in on-chip data scrambler for non-volatile memory |
WO2010035202A1 (en) | 2008-09-26 | 2010-04-01 | Koninklijke Philips Electronics N.V. | Authenticating a device and a user |
US9667257B2 (en) | 2008-09-30 | 2017-05-30 | Infineon Technologies Ag | Secure manufacturing of programmable devices |
CN102656588B (zh) | 2009-08-14 | 2015-07-15 | 本质Id有限责任公司 | 具有防篡改和抗老化系统的物理不可克隆函数 |
EP2491510B1 (en) | 2009-10-21 | 2016-08-24 | Intrinsic ID B.V. | Distribution system and method for distributing digital information |
WO2011089143A1 (en) | 2010-01-20 | 2011-07-28 | Intrinsic Id B.V. | Device and method for obtaining a cryptographic key |
EP2590355A4 (en) | 2010-06-30 | 2017-04-19 | Fujitsu Limited | Individual-specific information generation device and individual-specific information generation method |
US8694778B2 (en) | 2010-11-19 | 2014-04-08 | Nxp B.V. | Enrollment of physically unclonable functions |
WO2012122994A1 (en) | 2011-03-11 | 2012-09-20 | Kreft Heinz | Off-line transfer of electronic tokens between peer-devices |
KR20120109203A (ko) | 2011-03-28 | 2012-10-08 | 에스케이하이닉스 주식회사 | 플래시 메모리 장치 및 그의 독출 전압 생성 방법 |
CN103583013B (zh) | 2011-06-02 | 2016-04-13 | 三菱电机株式会社 | 密钥信息生成装置以及密钥信息生成方法 |
WO2013083415A2 (en) | 2011-12-06 | 2013-06-13 | Intrinsic Id B.V. | Physically unclonable function (puf) with improved error correction |
WO2013155522A1 (en) | 2012-04-13 | 2013-10-17 | Lewis Innovative Technologies, Inc. | Electronic physical unclonable functions |
US10078462B2 (en) | 2012-05-18 | 2018-09-18 | Cornell University | Methods and systems for providing hardware security functions using flash memories |
US8928347B2 (en) | 2012-09-28 | 2015-01-06 | Intel Corporation | Integrated circuits having accessible and inaccessible physically unclonable functions |
EP2904732B1 (en) | 2012-10-04 | 2018-11-28 | Intrinsic ID B.V. | System for generating a cryptographic key from a memory used as a physically unclonable function |
EP2722191B1 (en) | 2012-10-18 | 2015-05-06 | Bundesdruckerei GmbH | Identity card with physical unclonable function |
US9093128B2 (en) | 2012-11-05 | 2015-07-28 | Infineon Technologies Ag | Electronic device with a plurality of memory cells and with physically unclonable function |
TWI606362B (zh) | 2012-11-12 | 2017-11-21 | 慧榮科技股份有限公司 | 存取系統及方法 |
GB2507988A (en) | 2012-11-15 | 2014-05-21 | Univ Belfast | Authentication method using physical unclonable functions |
US20160028544A1 (en) | 2012-11-15 | 2016-01-28 | Elwha Llc | Random number generator functions in memory |
US8861736B2 (en) | 2012-11-19 | 2014-10-14 | International Business Machines Corporation | Reliable physical unclonable function for device authentication |
US8885819B2 (en) | 2012-12-27 | 2014-11-11 | Intel Corporation | Fuse attestation to secure the provisioning of secret keys during integrated circuit manufacturing |
US8938792B2 (en) | 2012-12-28 | 2015-01-20 | Intel Corporation | Device authentication using a physically unclonable functions based key generation system |
US9390291B2 (en) | 2012-12-29 | 2016-07-12 | Intel Corporation | Secure key derivation and cryptography logic for integrated circuits |
US9001554B2 (en) | 2013-01-10 | 2015-04-07 | Intermolecular, Inc. | Resistive random access memory cell having three or more resistive states |
US9083323B2 (en) | 2013-02-11 | 2015-07-14 | Qualcomm Incorporated | Integrated circuit identification and dependability verification using ring oscillator based physical unclonable function and age detection circuitry |
US9082514B1 (en) | 2013-04-22 | 2015-07-14 | Xilinx, Inc. | Method and apparatus for physically unclonable function burn-in |
JP2015026358A (ja) | 2013-06-20 | 2015-02-05 | 株式会社東芝 | デバイス、ホスト装置、ホストシステム、及びメモリシステム |
US8933516B1 (en) | 2013-06-24 | 2015-01-13 | Sandisk 3D Llc | High capacity select switches for three-dimensional structures |
US9495544B2 (en) | 2013-06-27 | 2016-11-15 | Visa International Service Association | Secure data transmission and verification with untrusted computing devices |
US9953166B2 (en) | 2013-07-04 | 2018-04-24 | Microsemi SoC Corporation | Method for securely booting target processor in target system using a secure root of trust to verify a returned message authentication code recreated by the target processor |
JP6106043B2 (ja) | 2013-07-25 | 2017-03-29 | ルネサスエレクトロニクス株式会社 | 半導体集積回路装置 |
US9787480B2 (en) | 2013-08-23 | 2017-10-10 | Qualcomm Incorporated | Applying circuit delay-based physically unclonable functions (PUFs) for masking operation of memory-based PUFs to resist invasive and clone attacks |
KR101489758B1 (ko) | 2013-08-26 | 2015-02-04 | 한국전자통신연구원 | 플래시 메모리의 동작 제어 방법 및 장치 |
US9343135B2 (en) | 2013-09-09 | 2016-05-17 | Qualcomm Incorporated | Physically unclonable function based on programming voltage of magnetoresistive random-access memory |
US9298946B2 (en) | 2013-09-09 | 2016-03-29 | Qualcomm Incorporated | Physically unclonable function based on breakdown voltage of metal-insulator-metal device |
US20150071432A1 (en) | 2013-09-09 | 2015-03-12 | Qualcomm Incorporated | Physically unclonable function based on resistivity of magnetoresistive random-access memory magnetic tunnel junctions |
US9792089B2 (en) | 2013-09-10 | 2017-10-17 | Verayo, Inc. | Random number generator using an incrementing function |
US8995169B1 (en) | 2013-09-12 | 2015-03-31 | Sandisk 3D Llc | Method of operating FET low current 3D Re-RAM |
US9992031B2 (en) | 2013-09-27 | 2018-06-05 | Intel Corporation | Dark bits to reduce physically unclonable function error rates |
US9966467B2 (en) | 2013-09-27 | 2018-05-08 | Phison Electronics Corp. | Integrated circuit and code generating method |
US20150143130A1 (en) | 2013-11-18 | 2015-05-21 | Vixs Systems Inc. | Integrated circuit provisioning using physical unclonable function |
US9189654B2 (en) | 2013-12-04 | 2015-11-17 | International Business Machines Corporation | On-chip structure for security application |
US10216965B2 (en) | 2014-01-08 | 2019-02-26 | Stc.Unm | Systems and methods for generating physically unclonable functions from non-volatile memory cells |
EP2911086A1 (en) | 2014-02-19 | 2015-08-26 | Renesas Electronics Europe GmbH | Integrated circuit with parts activated based on intrinsic features |
US9658787B2 (en) | 2014-02-26 | 2017-05-23 | Macronix International Co., Ltd. | Nonvolatile memory data protection using nonvolatile protection codes and volatile mask codes |
EP3114690B1 (en) | 2014-03-07 | 2020-02-12 | Intel Corporation | Physically unclonable function circuit using resistive memory device |
US9407437B1 (en) * | 2014-03-25 | 2016-08-02 | Amazon Technologies, Inc. | Secure initialization vector generation |
US9436845B2 (en) | 2014-03-25 | 2016-09-06 | Globalfoundries Inc. | Physically unclonable fuse using a NOR type memory array |
US9485094B1 (en) | 2014-04-21 | 2016-11-01 | Maxim Integrated Products, Inc. | Systems and methods for stable physically unclonable functions |
KR102207217B1 (ko) | 2014-04-30 | 2021-01-25 | 삼성전자주식회사 | 플래시 메모리 장치, 플래시 메모리 시스템 및 이의 동작 방법 |
KR101593166B1 (ko) | 2014-06-02 | 2016-02-15 | 한국전자통신연구원 | 물리적 복제 방지 함수의 오류를 방지하는 장치 및 그 방법 |
KR101575810B1 (ko) | 2014-09-30 | 2015-12-08 | 고려대학교 산학협력단 | 물리적 복제 방지 기능을 갖는 플래시 메모리 장치 및 그 구현 방법 |
US9331989B2 (en) | 2014-10-06 | 2016-05-03 | Micron Technology, Inc. | Secure shared key sharing systems and methods |
US9646178B2 (en) | 2014-10-15 | 2017-05-09 | Empire Technology Development Llc | Secure data storage based on physically unclonable functions |
US9653161B2 (en) | 2014-11-21 | 2017-05-16 | Panasonic Intellectual Property Management Co., Ltd. | Tamper-resistant non-volatile memory device comprising an arithmetic circuit that, in operation, calculates a binary reference value based on at least a part of the pieces of resistance value information, a read circuit that, in operation, selectively assigns, based on the binary reference value, one of two values to each of the pieces of resistance value information, and a write circuit that, in operation, performs a write operation corresponding to one of the two values among memory cells |
US9548113B2 (en) | 2014-11-21 | 2017-01-17 | Panasonic Intellectual Property Management Co., Ltd. | Tamper-resistant non-volatile memory device |
CN105632543B (zh) | 2014-11-21 | 2018-03-30 | 松下知识产权经营株式会社 | 具有防篡改性的非易失性存储装置及集成电路卡 |
KR102201642B1 (ko) | 2014-11-28 | 2021-01-13 | 삼성전자주식회사 | Puf 회로 및 그것의 키 등록 방법 |
US9245925B1 (en) | 2015-01-15 | 2016-01-26 | Macronix International Co., Ltd. | RRAM process with metal protection layer |
US9583700B2 (en) | 2015-01-23 | 2017-02-28 | Macronix International Co., Ltd. | RRAM process with roughness tuning technology |
US9607702B2 (en) | 2015-03-25 | 2017-03-28 | Macronix International Co., Ltd. | Sub-block page erase in 3D p-channel flash memory |
US9755841B2 (en) | 2015-04-07 | 2017-09-05 | Globalfoundries Inc. | Method, apparatus and system for security application for integrated circuit devices |
US9722774B2 (en) | 2015-04-29 | 2017-08-01 | Samsung Electronics Co., Ltd. | Non-leaky helper data: extracting unique cryptographic key from noisy F-PUF fingerprint |
WO2016195736A1 (en) | 2015-06-02 | 2016-12-08 | Cambou Bertrand F | Memory circuit using resistive random access memory arrays in a secure element |
US9875378B2 (en) | 2015-06-12 | 2018-01-23 | QUALCOMOM Incorporated | Physically unclonable function assisted memory encryption device techniques |
EP3113409B1 (en) | 2015-07-01 | 2024-09-18 | Secure-IC SAS | Embedded test circuit for physically unclonable function |
US9971566B2 (en) | 2015-08-13 | 2018-05-15 | Arizona Board Of Regents Acting For And On Behalf Of Northern Arizona University | Random number generating systems and related methods |
US9985791B2 (en) | 2015-08-13 | 2018-05-29 | Arizona Board Of Regents Acting For And On Behalf Of Northern Arizona University | Physically unclonable function generating systems and related methods |
US10181357B2 (en) | 2015-08-18 | 2019-01-15 | Ememory Technology Inc. | Code generating apparatus and one time programming block |
CN105007285B (zh) | 2015-08-19 | 2018-07-24 | 南京万道电子技术有限公司 | 一种基于物理不可克隆函数的密钥保护方法和安全芯片 |
US9455403B1 (en) | 2015-08-28 | 2016-09-27 | Macronix International Co., Ltd. | Semiconductor structure and method for manufacturing the same |
US20170126414A1 (en) | 2015-10-28 | 2017-05-04 | Texas Instruments Incorporated | Database-less authentication with physically unclonable functions |
US10097348B2 (en) | 2016-03-24 | 2018-10-09 | Samsung Electronics Co., Ltd. | Device bound encrypted data |
US10454691B2 (en) | 2016-05-24 | 2019-10-22 | Arizona Board Of Regents On Behalf Of Northern Arizona University | Systems implementing hierarchical levels of security |
US10855477B2 (en) | 2016-08-04 | 2020-12-01 | Macronix International Co., Ltd. | Non-volatile memory with physical unclonable function and random number generator |
US11258599B2 (en) | 2016-08-04 | 2022-02-22 | Macronix International Co., Ltd. | Stable physically unclonable function |
US10911229B2 (en) | 2016-08-04 | 2021-02-02 | Macronix International Co., Ltd. | Unchangeable physical unclonable function in non-volatile memory |
US10027472B2 (en) | 2016-09-27 | 2018-07-17 | Intel Corporation | Non-linear physically unclonable function (PUF) circuit with machine-learning attack resistance |
US9811689B1 (en) | 2016-12-27 | 2017-11-07 | Macronix International Co., Ltd. | Chip ID generation using physical unclonable function |
US20180191512A1 (en) | 2016-12-30 | 2018-07-05 | Intel Corporation | Physically unclonable function generation with direct twin cell activation |
EP3454318B1 (en) | 2017-09-12 | 2022-05-11 | eMemory Technology Inc. | Security system with entropy bits generated by a puf |
CN108229215A (zh) * | 2017-12-06 | 2018-06-29 | 杭州中天微系统有限公司 | 一种地址加扰的存储装置及方法 |
US10311930B1 (en) | 2018-04-05 | 2019-06-04 | Qualcomm Incorporated | One-time programming (OTP) magneto-resistive random access memory (MRAM) bit cells in a physically unclonable function (PUF) memory in breakdown to a memory state from a previous read operation to provide PUF operations |
US11055065B2 (en) * | 2018-04-18 | 2021-07-06 | Ememory Technology Inc. | PUF-based true random number generation system |
US11258596B2 (en) * | 2018-08-13 | 2022-02-22 | Taiwan Semiconductor Manufacturing Company Ltd. | System to generate a signature key and method of operating the same |
US11528135B2 (en) * | 2020-03-31 | 2022-12-13 | Taiwan Semiconductor Manufacturing Company, Ltd. | Integrated circuit (IC) signatures with random number generator and one-time programmable device |
US11380379B2 (en) | 2020-11-02 | 2022-07-05 | Macronix International Co., Ltd. | PUF applications in memories |
-
2020
- 2020-11-02 US US17/087,085 patent/US11380379B2/en active Active
-
2021
- 2021-04-20 TW TW110114185A patent/TWI751075B/zh active
- 2021-05-24 CN CN202110563900.7A patent/CN114444140A/zh active Pending
-
2022
- 2022-06-07 US US17/834,287 patent/US11763867B2/en active Active
-
2023
- 2023-08-08 US US18/231,611 patent/US20230386541A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150171870A1 (en) * | 2013-12-18 | 2015-06-18 | Rachael J. Parker | Secret operations using reconfigurable logics |
CN104836669A (zh) * | 2015-05-08 | 2015-08-12 | 东南大学 | 一种基于sram puf的安全认证方法及一种终端、认证系统 |
CN107689237A (zh) * | 2016-08-04 | 2018-02-13 | 旺宏电子股份有限公司 | 电子装置及其存储器电路与其操作方法 |
US20180278418A1 (en) * | 2016-08-04 | 2018-09-27 | Macronix International Co., Ltd. | Physical unclonable function for security key |
CN108958650A (zh) * | 2017-05-22 | 2018-12-07 | 旺宏电子股份有限公司 | 电子系统及其操作方法 |
CN108958707A (zh) * | 2017-05-22 | 2018-12-07 | 旺宏电子股份有限公司 | 具有puf及随机数产生器的电路及其操作方法 |
CN111723409A (zh) * | 2019-03-22 | 2020-09-29 | 旺宏电子股份有限公司 | 集成电路、存储器电路以及用于操作集成电路的方法 |
Also Published As
Publication number | Publication date |
---|---|
US20230386541A1 (en) | 2023-11-30 |
US11763867B2 (en) | 2023-09-19 |
TWI751075B (zh) | 2021-12-21 |
US11380379B2 (en) | 2022-07-05 |
US20220301609A1 (en) | 2022-09-22 |
TW202219962A (zh) | 2022-05-16 |
US20220139434A1 (en) | 2022-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11763867B2 (en) | PUF applications in memories | |
US11856116B2 (en) | Method and apparatus for protecting embedded software | |
TWI402675B (zh) | 低等待時間的區塊密碼術 | |
US8737606B2 (en) | Method and system for high throughput blockwise independent encryption/decryption | |
US8503670B2 (en) | Parallelizable integrity-aware encryption technique | |
US20200244434A1 (en) | Differential power analysis resistant encryption and decryption functions | |
US20080084996A1 (en) | Authenticated encryption method and apparatus | |
US8428251B2 (en) | System and method for stream/block cipher with internal random states | |
US11308241B2 (en) | Security data generation based upon software unreadable registers | |
TW201826162A (zh) | 用於藉由位元混合器來產生保密器回合金鑰的方法和系統 | |
US8913740B2 (en) | Method and apparatus for generating an Advanced Encryption Standard (AES) key schedule | |
US11429751B2 (en) | Method and apparatus for encrypting and decrypting data on an integrated circuit | |
TWI761896B (zh) | 用於執行安全命令的記憶體裝置及方法 | |
US9602281B2 (en) | Parallelizable cipher construction | |
US8804953B2 (en) | Extensive ciphertext feedback | |
US20050138403A1 (en) | Data encryption in a symmetric multiprocessor electronic apparatus | |
US20090257583A1 (en) | Cipher feedback with variable block chaining | |
US10642962B2 (en) | Licensable function for securing stored data | |
CN116628776A (zh) | 存储器装置以及存储器芯片的存储器阵列信息的读取方法 | |
Landge et al. | VHDL based Blowfish implementation for secured embedded system design | |
WO2021044465A1 (ja) | 暗号化装置、復号装置、コンピュータプログラム、暗号化方法、復号方法及びデータ構造 | |
US11960769B2 (en) | High performance secure read in secure memory providing a continuous output of encrypted information and specific context | |
JPH0744375A (ja) | 暗号化データ処理装置 |
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 |