CN117494120A - 存储器装置以及用于非易失性存储器的安全编程的方法 - Google Patents
存储器装置以及用于非易失性存储器的安全编程的方法 Download PDFInfo
- Publication number
- CN117494120A CN117494120A CN202310536504.4A CN202310536504A CN117494120A CN 117494120 A CN117494120 A CN 117494120A CN 202310536504 A CN202310536504 A CN 202310536504A CN 117494120 A CN117494120 A CN 117494120A
- Authority
- CN
- China
- Prior art keywords
- bits
- volatile memory
- programming
- random
- program
- 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
- 238000000034 method Methods 0.000 title claims description 22
- 230000004044 response Effects 0.000 claims abstract description 5
- 239000011159 matrix material Substances 0.000 claims description 14
- 230000002441 reversible effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- 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/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/75—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 inhibiting the analysis of circuitry or operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- 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/77—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 smart cards
-
- 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
-
- 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
-
- 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/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Data Mining & Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Storage Device Security (AREA)
- Read Only Memory (AREA)
Abstract
本发明提供一种存储器装置,包含非易失性存储器(nonvolatile memory,NVM)和安全编程电路(secure‑programming circuit,SPC)。安全编程电路用以接收编程非易失性存储器指令以对非易失性存储器的给定位置的给定数据字组进行编程,和响应于接收到编程非易失性存储器指令,以随机次序对非易失性存储器中的给定数据字组的位进行编程。
Description
技术领域
本发明涉及一种存储器装置以及用于非易失性存储器的安全编程的方法,且确切地说,涉及用于快闪存储器装置的安全编程的方法和系统。
背景技术
闪存(尤其是嵌入式快闪存储器)可存储机密数据,且因此应防止被窃取(“黑客入侵(hacking)”)。
美国专利US11,188,237描述了用于增强闪存装置的安全性和防止闪存装置被黑客入侵的多个实施例。实施例防止恶意行动者入侵闪存芯片以获得存储在芯片内的数据。实施例包含使用故障检测电路、地址加扰、虚拟阵列、密码保护、改进的制造技术以及其它机制。
发明内容
本发明的实施例提供一种存储器装置,包含非易失性存储器(nonvolatilememory,NVM)和安全编程电路(secure-programming circuit,SPC)。安全编程电路用以接收编程非易失性存储器指令以对非易失性存储器的给定位置的给定数据字组进行编程,和响应于接收到编程非易失性存储器指令,以随机次序对非易失性存储器中的给定数据字组的位进行编程。
在一些实施例中,给定数据字组由N个位的二次幂组成,且安全编程电路用以产生N个值的二次幂的随机排列,且以遵循随机排列的次序对给定数据字组的位进行编程。在实施例中,安全编程电路用以通过以下操作产生随机排列:将可逆二元矩阵乘以包含各计数位的向量,以便产生乘积;和将随机位的向量与所述乘积相加。在实施例中,可逆矩阵为包含主对角线、第一三角形以及第二三角形的三角形二元矩阵,主对角线包含“1”值,第一三角形包含“0”值且第二三角形包含随机位。
本发明的实施例提供一种用于非易失性存储器的安全编程的方法,包含接收编程非易失性存储器指令以对非易失性存储器的给定位置的给定数据字组进行编程。响应于接收到编程非易失性存储器指令,以随机次序对非易失性存储器中的所述给定数据字组的位进行编程。
附图说明
图1为根据本发明的实施例的安全嵌入式快闪集成电路(Integrated-Circuit,IC)的框图;
图2为根据本发明的实施例的用于安全闪存编程的方法的流程图;
图3为根据本发明的实施例的用于产生排列映射的方法的流程图。
附图标号说明
100:旁信道攻击;
102:集成电路;
104:处理器;
106:闪存阵列;
108:安全编程电路;
110:编程地址寄存器;
112:编程数据寄存器;
114:多路复用器;
116:位编程电路;
118:黑客;
120:电流探针;
122:示波器;
124:波形;
126:计数器;
130:加扰器;
200、300:流程图;
202、204、206、302、304、306、308、310、312、314:操作;
Idd:电源电流
VDD:电源。
具体实施方式
黑客有时试图通过旁信道攻击,例如通过监测电力消耗或辐射的电磁能来获得非易失性存储器(或其部分)的内容。
确切地说,包括快闪存储器(闪存)和用以读取和写入闪存的读取/写入电路系统(例如,具有嵌入式闪存的处理器)两者的集成电路通常难以通过直接方法侵入,这是因为读取/写入电路系统与非易失性存储器之间的数据交换在集成电路的外部引脚上不直接可见。
一些闪存装置采用位串行编程技术,其中待编程的数据字组的位串行地写入到非易失性存储器阵列中。在擦除之后,闪存单元通常处于给定逻辑值(例如,逻辑1),因此,逻辑1的编程并不消耗电力,而逻辑0的编程会大量耗能。通过监测电源电流,黑客可能检测到何时对逻辑0或逻辑1进行编程。如果以给定次序(例如,从LSB到MSB,或从MSB到LSB)写入位,那么黑客可容易地重新构建已编程的字组。
本发明的实施例提供保护非易失性存储器免受旁信道攻击的电路和方法。在实施例中,集成电路包括安全编程电路,用以以随机位次序对闪存阵列中的字组进行编程;因此,旁侧攻击将重新构建编程字组位的无用随机排列。
在一些实施例中,安全编程电路包括:用以存储待编程的字组的编程字组寄存器;用以对正在编程的位计数的计数器;用以产生计数的随机排列的加扰器;用以根据计数的随机排列来选择编程字组寄存器的位的多路复用器;以及利用由多路复用器选择的值来对闪存阵列中的位进行编程的串行编程电路。
在一些实施例中,加扰器通过以下操作产生计数的随机排列:将随机位的可逆(例如,三角形)矩阵乘以计数的二元表示;和将随机位的向量与所述乘积相加。
图1为根据本发明的实施例的遭受旁信道攻击100的安全嵌入式闪存集成电路102的框图。
集成电路102包括处理器104和闪存阵列106(在一些实施例中,可使用其它类型的非易失性存储器)。在实施例中,闪存阵列106包括多个库(bank);每个库包括多个字组,且每个字组包括多个独立的非易失性单元。在一些实施例中,每个单元存储一个位。
当处理器104擦除库时,将库中的所有单元设定为已知逻辑值。传统地,擦除值任意表示为逻辑1;因此,无需对已擦除库的闪存单元中的逻辑1进行编程。
为了对闪存阵列106的已擦除库中的字组(例如,32位)进行编程,处理器104将编程指令发送到安全编程电路(secure-programming circuit,SPC)108。编程指令可包括编程地址寄存器110中由安全编程电路存储的地址字段,和编程数据寄存器112中由安全编程电路存储的数据字段。多路复用器114依序选择编程数据寄存器的位,且将选择的位转发到位编程电路116,所述位编程电路116用以在由编程地址寄存器110指向的闪存阵列字组处一次编程一个位。如上文所解释,仅对处于逻辑0的编程数据寄存器位进行编程。
黑客118试图读取闪存阵列106中由位编程电路116编程的数据。黑客使用旁信道攻击,且使用输入到示波器122的电流探针120来观测集成电路102消耗的电源电流Idd。如所提及,当编程电路对逻辑0进行编程时,集成电路102的电流消耗明显高于对逻辑1进行编程时的电流消耗。因此,通过观测显示在示波器屏幕上的波形124,黑客可得知对逻辑0进行编程的时间。
然而,根据图1中所示出的实施例,已编程位的次序是随机的,且黑客将不能够重新构建写入的数据字组。举例来说,如果集成电路102对闪存阵列106中的安全密钥进行编程,那么黑客将读取的密钥将被位加扰。
为了使对编程数据寄存器112的位进行编程的次序随机化,安全编程电路108更包括:用以对已编程位进行计数的计数器126;和使用一对一随机映射对计数器的输出进行随机加扰的加扰器130。多路复用器114耦接到加扰器130的输出,且因此将随机选择待编程的编程数据寄存器112的位。举例来说,假设具有8位编程数据寄存器,加扰器130可输出序列2、7、0、1、5、3、4、6,这将是编程电路对闪存中的字组进行编程的次序。加扰器130的输出也是位编程电路116的位地址输入。
在本专利申请案中,在各种语法形式中,术语“随机”(例如以“随机次序”、“随机位”、“随机序列”、“随机排列”等)皆指真随机和伪随机值或事件。
图1及上文中描述的旁信道攻击100的配置和集成电路102(包含安全编程电路108)的配置为出于概念清楚起见而引用的实例。可在替代实施例中使用其它配置。举例来说,在实施例中,黑客使用的旁信道可为到VDD引脚(未绘示)的返回电流;在另一实施例中,黑客可测量跨越印刷电路中的电阻或电感路径的电压降。在一些实施例中,黑客测量从集成电路102发射的电磁辐射,且在其它实施例中,黑客可使用例如麦克风、红外检测器等其它构件。
在实施例中,不需要计数器126、加扰器130、编程数据寄存器112以及多路复用器128。替代地,处理器104以加扰次序将位发送到位编程电路116。
在一些实施例中,闪存阵列每单元存储两个或大于两个位。举例来说,在一个实施例中,闪存单元可为未编程的、弱编程的、中等编程的以及强编程的。四个状态通常表示分别具有00、01、10以及11的值的两个存储位。(“弱”、“中等”或“强”涉及在闪存单元的浮动栅极中捕获的电荷的测量)。黑客可通过观测来自VDD电源的电流得知是否将00、01、10或11编程到闪存单元;然而,在实施例中,位对的次序被加扰,且黑客将获得被加扰的位对集合。
图2为根据本发明的实施例的用于安全闪存编程的方法的流程图200。通过安全编程电路108(如图1所示)执行流程图。
流程图以接收编程字组操作202开始,其中安全编程电路接收编程指令(例如,从图1的处理器104接收),所述编程指令包括将被编程到闪存阵列106(如图1所示)的地址字组和数据字组。数据字组可为机密的,例如,密码密钥。
接下来,在随机排列操作204中,集成电路产生编程字组的所有位的排列映射。此排列映射使用随机一对一映射将编程字组的每个位位置映射到特定位置。
接着,在串行编程操作206处,安全编程电路根据已排列次序在由编程指令指示的地址处对闪存阵列中的编程数据字组的位进行串行编程。举例来说,如果将编程数据字组的位0、1、2、3映射到2、1、0、3,那么安全编程电路将首先对编程数据字组的位2进行编程,接着为位1,随后为位0和位3。在操作206之后,流程图结束。
因此,根据图2中所示出的流程图,安全编程电路在由编程指令指示的地址处且以随机位次序对闪存阵列中的编程数据字组的位进行编程,从而使旁信道攻击变得困难。
图2中所示出和上文所描述的流程图借助于实例引用。可在替代实施例中使用其它合适的流程图。举例来说,在一些实施例中,安全编程电路108在接收到编程指令之前准备进行排列映射。在实施例中,在对编程数据字组的位进行编程时,安全编程电路从尚未编程的位判定待编程的下一个随机位。
排列方法
在实施例中,可使用多个方法来产生排列映射。
图3为根据本发明的实施例的用于产生排列映射的方法的流程图300。通过加扰器130(如图1所示)执行流程图。
流程图以产生器随机向量操作302开始,其中加扰器产生N个随机位的向量V,表示为rnd0到rndN-1(下文针对N=8进行展示):
接下来,在产生矩阵M操作304的步骤,安全编程电路产生可逆N×N矩阵,在本实例中为N×N三角形矩阵M,主对角线具有“1”值,两个三角形(主对角线上方的三角形或主对角线下方的三角形)中的一个具有随机位(Ri),且另一三角形具有“0”值。举例来说,可使用右上方对角线矩阵(右上方三角形具有随机数rndi且左下方三角形具有“0”),如下文所展示(针对N=8)∶
安全编程电路现在进入清零计数操作306,且使计数寄存器清零,这指示现在将对第一位(从0开始)进行编程。
接下来,安全编程电路进入产生Vc操作308,且产生包括计数位的向量Vc(下文针对N=8进行展示):
接着,在产生排列向量操作310的步骤,安全编程电路根据以下产生排列向量Vp:
Vp=Vn+M*Vc
其中加法为二元异或(exclusive-or)函数,且乘法为二元与(AND)函数。下文针对N=8展示操作310:
接着在检查计数完成操作312的步骤,安全编程电路检查是否已排列最后一个位位置(对应于计数=2N-1)的排列,且如果是,那么结束流程图。如果在操作312中,未完成计数,那么安全编程电路进入增加计数操作314,增加计数,且接着重新进入操作308,以排列下一个计数值。
图3中所示出和上文所描述的流程图300的配置借助于实例引用。可在替代实施例中使用其它配置。举例来说,在替代实施例中,可使用未必为三角形的其它合适类型的可逆矩阵。在一些实施例中,使用Sattolo算法(参见例如M.Wilson的“Overview of Sattolo'sAlgorithm”,Algorithms Seminar 2002-2004,F.Chyzak(编),INRIA,(2005),pp.105108)。(然而,Sattolo算法并非依序的,且如果使用,那么应添加合适的电路以逐一输出排列位。)
图1到图3中所示出和上文所描述的集成电路102(包含安全编程电路108)的配置和流程图200和流程图300的方法是仅出于概念清楚起见展示的实例配置和流程图。在替代实施例中可使用任何其它合适的配置和流程图。
包含安全编程电路108的集成电路102的不同子单元可使用合适的硬件来实施,诸如在一或多个专用集成电路(Application-Specific Integrated Circuit,ASIC)或现场可编程门阵列(Field-Programmable Gate Array,FPGA)中,使用软件、使用硬件或使用硬件与软件构件的组合。
处理器104和/或安全编程电路108(如图1所示)可包括一或多个通用处理器,在软件中对所述通用处理器进行编程以执行本文中所描述的功能。软件可以电子形式、经由网络或从主机下载到处理器,例如,或其可替代地或另外设置和/或存储在非暂时性有形媒体(例如,磁性、光学或电子存储器)上。
尽管本文中所描述的实施例主要解决安全非易失性存储器编程,但本文中所描述的方法和系统也可用于其它应用中。
因此将了解,上文所描述的实施例借助于实例引用,且本发明不限于上文已经具体展示且描述的内容。实情为,本发明的范围包含上文所描述的各种特征的组合和子组合两者,以及所属领域的技术人员在阅读前述描述之后将想到且并未在现有技术中公开的本发明的变化及修改。除就这些并入文件中以与本说明书中明确地或隐含地描述的定义有冲突的方式来对任何术语进行定义而言,仅应考虑本说明书中的定义以外,以引用的方式并入本专利申请中的文件被视为申请的整体部分。
Claims (8)
1.一种存储器装置,包括:
非易失性存储器;以及
安全编程电路,用以:
接收编程非易失性存储器指令以对所述非易失性存储器的给定位置的给定数据字组进行编程;以及
响应于接收到所述编程非易失性存储器指令,以随机次序对所述非易失性存储器中的所述给定数据字组的位进行编程。
2.根据权利要求1所述的存储器装置,其中所述给定数据字组由N个位的二次幂组成,且其中所述安全编程电路用以产生N个值的二次幂的随机排列,並且遵循所述随机排列的次序对所述给定数据字组的所述位进行编程。
3.根据权利要求2所述的存储器装置,其中所述安全编程电路用以通过以下操作产生所述随机排列:
将可逆二元矩阵乘以包括各计数位的向量以产生乘积;以及
将随机位的向量与所述乘积相加。
4.根据权利要求3所述的存储器装置,其中所述可逆矩阵为包括主对角线、第一三角形以及第二三角形的三角形二元矩阵,其中所述主对角线包括“1”值,所述第一三角形包括“0”值且所述第二三角形包括随机位。
5.一种用于非易失性存储器的安全编程的方法,所述方法包括:
接收编程非易失性存储器指令以对所述非易失性存储器的给定位置的给定数据字组进行编程;以及
响应于接收到所述编程非易失性存储器指令,以随机次序对所述非易失性存储器中的所述给定数据字组的位进行编程。
6.根据权利要求5所述的用于非易失性存储器的安全编程的方法,其中所述给定数据字组由N个位的二次幂组成,且其中对所述数据字进行编程包括产生N个值的二次幂的随机排列,并且遵循所述随机排列的次序对所述给定数据字组的所述位进行编程。
7.根据权利要求6所述的用于非易失性存储器的安全编程的方法,其中产生所述随机排列包括:
将可逆二元矩阵乘以包括各计数位的向量以产生乘积;以及
将随机位的向量与所述乘积相加。
8.根据权利要求7所述的用于非易失性存储器的安全编程的方法,其中所述可逆矩阵为包括主对角线、第一三角形以及第二三角形的三角形二元矩阵,其中所述主对角线包括“1”值,所述第一三角形包括“0”值且所述第二三角形包括随机位。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/877,953 | 2022-07-31 | ||
US17/877,953 US20240037285A1 (en) | 2022-07-31 | 2022-07-31 | Flash Programming Randomization |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117494120A true CN117494120A (zh) | 2024-02-02 |
Family
ID=86861995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310536504.4A Pending CN117494120A (zh) | 2022-07-31 | 2023-05-12 | 存储器装置以及用于非易失性存储器的安全编程的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20240037285A1 (zh) |
EP (1) | EP4318294A1 (zh) |
JP (1) | JP2024019749A (zh) |
KR (1) | KR20240017315A (zh) |
CN (1) | CN117494120A (zh) |
TW (1) | TWI834551B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070277028A1 (en) * | 2006-05-26 | 2007-11-29 | Jamey Cates | Method and system for recovery from reprogramming failures in nonvolatile memory |
KR100854972B1 (ko) * | 2007-02-13 | 2008-08-28 | 삼성전자주식회사 | 메모리 시스템 및 그것의 데이터 읽기 방법 |
US10534554B2 (en) * | 2017-10-13 | 2020-01-14 | Silicon Storage Technology, Inc. | Anti-hacking mechanisms for flash memory device |
US11017128B2 (en) * | 2018-05-22 | 2021-05-25 | Seagate Technology Llc | Data security using bit transposition during memory accesses |
US11244078B2 (en) * | 2018-12-07 | 2022-02-08 | Nxp Usa, Inc. | Side channel attack protection |
US11568297B2 (en) * | 2020-03-05 | 2023-01-31 | International Business Machines Corporation | Efficient synthesis of a random uniformly distributed Clifford unitary |
-
2022
- 2022-07-31 US US17/877,953 patent/US20240037285A1/en active Pending
-
2023
- 2023-05-05 TW TW112116783A patent/TWI834551B/zh active
- 2023-05-12 CN CN202310536504.4A patent/CN117494120A/zh active Pending
- 2023-06-16 EP EP23179743.2A patent/EP4318294A1/en active Pending
- 2023-06-30 KR KR1020230084760A patent/KR20240017315A/ko unknown
- 2023-07-12 JP JP2023114122A patent/JP2024019749A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
TWI834551B (zh) | 2024-03-01 |
JP2024019749A (ja) | 2024-02-13 |
US20240037285A1 (en) | 2024-02-01 |
EP4318294A1 (en) | 2024-02-07 |
TW202407564A (zh) | 2024-02-16 |
KR20240017315A (ko) | 2024-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9483664B2 (en) | Address dependent data encryption | |
US9343162B2 (en) | Protection against side-channel attacks on non-volatile memory | |
US7086087B1 (en) | Information processing device, card device and information processing system | |
KR101484331B1 (ko) | 데이터 저장 디바이스의 데이터 무결성 검증 | |
EP3147830B1 (en) | Protecting an integrated circuit | |
CN100390700C (zh) | 使用磁设置数据的防篡改封装和方法 | |
US10740476B2 (en) | Tamper-proof storage using signatures based on threshold voltage distributions | |
US7734043B1 (en) | Encryption key obfuscation and storage | |
TW201805942A (zh) | 用於非揮發性記憶體之安全性延伸 | |
US11232196B2 (en) | Tracking events of interest to mitigate attacks | |
Dodo et al. | Secure STT-MRAM bit-cell design resilient to differential power analysis attacks | |
Kannan et al. | Secure memristor-based main memory | |
Neve et al. | Memories: A survey of their secure uses in smart cards | |
TWI834551B (zh) | 記憶體裝置以及用於非揮發性記憶體的安全程式化的方法 | |
Gong et al. | Design for test and hardware security utilizing retention loss of memristors | |
US11195582B2 (en) | Non-volatile memory device and method of writing to non-volatile memory device | |
US20070247182A1 (en) | Protection of security key information | |
Skorobogatov | Compromising device security via NVM controller vulnerability | |
JP7391682B2 (ja) | 改ざん防止カウンタ | |
US20240169063A1 (en) | Preventing profiled side channel attacks | |
Mateu Barriendos | Analysis of Data Remanence and Power-up States of SRAM Cells in Embedded Systems | |
Xiao et al. | A physically-secure write scheme of Multi-time Programmable RRAM for critical information storage | |
CN118230801A (zh) | 具有对原始存储器单元的安全检测的非易失性存储器系统 | |
CN112926100A (zh) | 保护集成电路中敏感资料的方法及集成电路 | |
CN113407957A (zh) | 一种集成电路及用于保护集成电路的方法 |
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 |