CN111630598B - 非易失性存储装置以及其写入方法 - Google Patents

非易失性存储装置以及其写入方法 Download PDF

Info

Publication number
CN111630598B
CN111630598B CN201880087393.0A CN201880087393A CN111630598B CN 111630598 B CN111630598 B CN 111630598B CN 201880087393 A CN201880087393 A CN 201880087393A CN 111630598 B CN111630598 B CN 111630598B
Authority
CN
China
Prior art keywords
data
dummy
cell
puf
memory
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
Application number
CN201880087393.0A
Other languages
English (en)
Other versions
CN111630598A (zh
Inventor
吉本裕平
加藤佳一
纪伊直人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nuvoton Technology Corp Japan
Original Assignee
Nuvoton Technology Corp Japan
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nuvoton Technology Corp Japan filed Critical Nuvoton Technology Corp Japan
Publication of CN111630598A publication Critical patent/CN111630598A/zh
Application granted granted Critical
Publication of CN111630598B publication Critical patent/CN111630598B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0059Security or protection circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0007Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0023Address circuits or decoders
    • G11C13/0026Bit-line or column circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/24Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/75Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting 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/79Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2123Dummy operation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1695Protection circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/79Array wherein the access device being a transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/24Accessing extra cells, e.g. dummy cells or redundant cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C29/56016Apparatus features

Abstract

非易失性存储装置(10)具备:存储器组,作为按照电阻值的大小记录数字数据的电阻变化型的多个存储单元(21)的至少一个数据单元与至少一个虚设单元相关联而构成;以及读出电路(11),对构成存储器组的多个存储单元(21)的每一个,并行执行读出工作,在至少一个虚设单元记录,用于使执行读出电路(11)的读出工作时发生的边信道泄漏与至少一个数据单元记录的信息数据的相关关系变小的虚设数据。

Description

非易失性存储装置以及其写入方法
技术领域
本公开涉及,非易失性存储装置,尤其涉及,具有多个电阻变化型的非易失性存储单元的非易失性存储装置等。
背景技术
网络银行以及网络购物等的、经由互联网进行的电子商务服务的市场迅速扩展。作为此时的结算方法利用电子货币,作为其媒体利用的IC(“Integrated Circuit”,以下相同。)卡、以及智能手机终端的利用也同样扩展。在这样的服务中,为了结算时的安全性,而针对通信中的相互认证以及通信数据的加密总是需要水平更高的安全技术。
关于软件技术,积蓄了以高度的加密算法为中心的程序处理的加密技术,实现充分的安全性。但是,根据技术进步,从外部直接硬件性地读取电路内部的信息的可能性迅速提高。
(现有技术文献)
(专利文献)
专利文献1:日本特开2007-67942号公报
专利文献2:日本特开2006-25366号公报
专利文献3:日本特开2016-105585号公报
专利文献4:国际公开第2014/119329号
专利文献5:国际公开第2010/100015号
(非专利文献)
非专利文件1:Paul Kocher,et al.“Introduction to Differential PowerAnalysis and Related Attacks”1998
非专利文件2:Georgios Selimis,et al.“Evaluation of 90nm6T-SRAM asPhysical Unclonable Function for Secure Key Generation in Wireless SensorNodes”
非专利文件3:An Chen,“Comprehensive Assessment of RRAM-based PUF forHardware Security Applications”IEDM2015
非专利文件4:P.H.Tseng,et al.“Error Free Physically UnclonableFunction(PUF)with Programmed ReRAM using Reliable Resistance States by NovelID-Generation Method”SSDM2017
发明内容
本公开提供,具有高防篡改性的非易失性存储装置。
本公开的一个形态涉及的非易失性存储装置,具备:存储器组,至少一个数据单元与至少一个虚设单元相关联而构成,该至少一个数据单元以及至少一个虚设单元是按照电阻值的大小记录数字数据的电阻变化型的多个存储单元;以及读出电路,对构成所述存储器组的多个存储单元的每一个,并行执行读出工作,在所述至少一个虚设单元记录虚设数据,该虚设数据用于使执行所述读出电路的读出工作时发生的边信道泄漏与所述至少一个数据单元记录的信息数据的相关关系变小。
根据本公开,提供具有高防篡改性的非易失性存储装置。
附图说明
图1是示出实施方式涉及的电阻变化型非易失性存储装置的概略结构的一个例子的框图。
图2是示出实施方式涉及的电阻变化型非易失性存储装置具备的存储单元的概略结构的一个例子的截面图。
图3是绘制同一电阻状态下的标准化电阻值信息与针对其差异的标准正态分布的偏差的关系的图。
图4是绘制将成形完成为止的积累脉冲施加时间标准化的信息与针对其差异的标准正态分布的偏差的关系的图。
图5是示出实施方式的非易失性存储装置的具体结构例的框图。
图6是示出非易失性存储装置具备的读出电路的结构例的图。
图7是示出读出电路具备的读出放大电路的结构例的电路图。
图8是选择出的存储单元由读出电路读出时的时序图。
图9是示出实施例1的由非易失性存储装置的工作生成的存储器组的数据模式的图。
图10是示出实施例1的非易失性存储装置的工作例的流程图。
图11是示出实施例2的非易失性存储装置的PUF数据登记时的工作例的流程图。
图12是用于说明实施例2的非易失性存储装置的PUF数据登记时的工作的图。
图13是示出实施例2的非易失性存储装置的PUF数据再现时的工作例的流程图。
图14是用于说明实施例2的非易失性存储装置的PUF数据再现时的工作的图。
图15是示出实施例2的非易失性存储装置的存储单元阵列的数据结构的图。
图16是示出实施例2的非易失性存储装置的工作例的流程图。
图17是示出边信道攻击的评价环境的图。
图18是示出边信道信息的图。
图19是示出实施例1的非易失性存储装置的存储单元阵列的、汉明重量与磁场强度的相关关系的图。
图20是示出实施例1的非易失性存储装置的存储单元阵列的、汉明重量为一定时的磁场强度的图。
图21是示出实施例2的非易失性存储装置的存储单元阵列的、汉明重量与磁场强度的相关关系的图。
图22是示出实施例2的非易失性存储装置的存储单元阵列的、汉明重量为一定时的磁场强度的图。
具体实施方式
(作为本公开的基础的知识)
一般而言,加强了安全性的IC,利用搭载在内部的加密密钥,将秘密信息加密来利用,防止信息的泄漏。在此情况下,需要不将在内部保持的加密密钥(也称为“密钥”。)的信息向外部泄漏。
对此,在1999年Paul Kocher等提出的非专利文件1所记载的边信道攻击(SCA:Side Channel Attack)的方法被认为威胁。该方法,利用各个信号处理电路的执行时的半导体元件的电力消耗、以及依赖于电力消耗的辐射电磁波等的边信道信息,从而确定加密密钥。该方法为威胁的理由是,攻击者(黑客),能够由示波器以及市贩的PC那样的比较廉价的装置实现攻击环境,还能够不给IC带来物理损害,而在实际工作中对密钥信息进行黑客行为。
作为一般的SCA,大致存在两种。一个是,关注密码处理电路的工作时发生的电力消耗,确定密码运算处理的定时,分析此时的电力消耗的变动,从而确定密钥的简单电力分析(SPA:Simple Power Analysis)。另一个是,反复测量密码处理电路内输出的数据和发生的电力消耗,进行统计分析,从而推测密钥的差分电力分析(DPA:Differential PowerAnalysis)。这样的SCA的攻击对象,大多是实际使用加密密钥的密码处理电路的密码处理,提出了针对密码处理的各种各样的SCA对策。
在专利文献1中试图,以随机的顺序执行使用密钥的密码处理、以及使用假钥的密码处理,从而使边信道泄漏与密钥之间的相关变小。而且,边信道泄漏是,电力、磁场以及热的任一个。
专利文献2公开,将密码处理电路内的汉明重量设为一定,将密码处理时的电力消耗设为一定,来使DPA具有抗性,并且,混合假运算,从而难以确定密码处理的定时的密码处理技术。
并且,除了所述边信道对策以外,近几年,还提出称为PUF(物理不可克隆函数:Physically Unclonable Function)的新的硬件技术。PUF技术是,利用制造差异生成按每个IC不同的唯一的个体识别信息的技术。以后,在本说明书中将由PUF技术生成的个体识别信息称为“PUF数据”。PUF数据,也可以说是与IC的物理特性的差异关联的各个设备固有的随机数据,由于利用物理特性的稍微的差异,因此,难以进行物理分析,并且,不能按每个IC人为地再现其物理特性,据此,能够生成不能物理复制的数据。
作为具体的现有的例子,能够示出非专利文件2那样的SRAM PUF的例子。在这样的例子中利用如下现象,即,在SRAM的各个存储单元中,主要根据晶体管的Vt差异(工作电压的差异),接通电源时的初始值的数字数据容易成为1状态还是容易成为0状态不同。这是,搭载在各个IC的每个SRAM的单元固有且不同的。也就是说,将向SRAM接通电源时的初始值数据作为PUF数据来利用。
除此以外,也能够示出专利文献3、专利文献4、非专利文件3、非专利文件4那样的ReRAM PUF的例子。在专利文献3的例子中,利用ReRAM的存储单元的电阻差异。而且,获得存储器组内的电阻值信息,根据这些电阻值信息,求出成为用于二值化的基准的判断值,生成PUF数据。非专利文件3是,对两个单元以同一状态进行写入,对基于写入后的电阻值差异的大小关系进行比较,从而生成PUF数据的方式。并且,在专利文献4以及非专利文件4中,将ReRAM的成形的随机性作为PUF来利用。在ReRAM的存储单元中,针对电阻值高的初始状态,进行称为成形的施加比通常的重写电压大的电压应力来引起绝缘击穿的处理,从而能够向能够重写的可变状态迁移。而且,该成形的过程中需要的电压应力的施加时间,按每个存储单元具有随机的特性。在所述文献的本方式中,向存储器组提供固定时间的电压应力,在大致半数的存储单元的成形完成的时刻,结束电压应力施加的处理。于是,在结束后的存储单元组中,记录初始状态和可变状态的存储单元分别大致半数,并且记录每个设备固有的随机的数据。该方式是,将该随机的数据作为PUF数据来利用的方式。
根据这样的PUF技术,记录成为各个IC固有的随机数的PUF数据,从而能够处理为难以分析且不能复制的数据。能够将该PUF数据,例如,作为将所述的密钥加密的设备钥来利用。将由设备钥匙(PUF数据)加密后的密钥,以加密的状态保存到非易失性存储器。也就是说,只能由设备钥将非易失性存储器记录的加密密钥解码为原来的密钥数据,因此,密钥的安全强度,依赖于PUF的安全强度。
另一方面,对于PUF,利用物理特性的稍微的差异,因此,在针对同一设备再现PUF数据的情况下,容易受到温度以及电源那样的环境变动的影响,存在再现性的降低、基于制造中的物理依赖性的唯一性的降低等的几个问题。
专利文献5,作为改善这些再现性以及唯一性的对策,利用称为Fuzzy Extractor的技术。这是搭载对维持PUF的安全强度并且能够纠错的算法以及散列函数等的PUF数据的后处理的技术。
根据本申请发明人的知识,本公开的一个形态的概要为如下。
本公开的一个形态涉及的非易失性存储装置,具备:存储器组,至少一个数据单元与至少一个虚设单元相关联而构成,该至少一个数据单元以及至少一个虚设单元是按照电阻值的大小记录数字数据的电阻变化型的多个存储单元;以及读出电路,对构成所述存储器组的多个存储单元的每一个,并行执行读出工作,在所述至少一个虚设单元记录虚设数据,该虚设数据用于使执行所述读出电路的读出工作时发生的边信道泄漏与所述至少一个数据单元记录的信息数据的相关关系变小。
据此,在至少一个虚设单元,记录有用于使边信道泄漏与信息数据(想要保密的数据,例如PUF数据以及其他的重要的数据)的相关关系变小的虚设数据,因此,发生与因信息数据而发生的边信道泄漏不同的边信道泄漏。因此,难以根据执行由读出电路的读出工作时发生的边信道泄漏推测信息数据。因此,能够提高防篡改性。
并且,也可以是,所述非易失性存储装置具备写入电路,所述写入电路,根据所述至少一个数据单元记录的信息数据,对所述至少一个虚设单元进行所述虚设数据的写入工作。
据此,能够将用于使所述相关关系变小的虚设数据写入到虚设单元。
并且,也可以是,在所述多个存储单元记录,利用了物理上的差异特性的设备固有的PUF数据。
据此,利用安全强度高的PUF数据,因此,能够更提高防篡改性。
并且,也可以是,所述多个存储单元包括可变状态的存储单元,该可变状态的存储单元,通过被施加互不相同的多个电信号,电阻值在多个可变阻抗值范围之间进行可逆迁移,关于用于所述PUF数据的物理上的特性差异,利用所述可变状态的存储单元的同一电阻状态下的电阻值的差异。
据此,将多个存储单元分别设为同一电阻状态,从而能够容易生成PUF数据。
并且,也可以是,所述多个存储单元包括可变状态的存储单元以及初始状态的存储单元,所述可变状态的存储单元,通过被施加互不相同的多个电信号,电阻值在多个可变阻抗值范围之间进行可逆迁移,所述初始状态的存储单元,只要不被施加用于变化为所述可变状态的电应力即成形应力,就不会成为所述可变状态,并且,电阻值处于与所述多个可变阻抗值范围的任一个都不重叠的初始电阻值范围,关于用于所述PUF数据的物理上的特性差异,利用所述成形应力所需要的积累脉冲时间的差异。
据此,向多个存储单元施加成形应力,从而能够容易生成PUF数据。
并且,也可以是,所述至少一个数据单元记录所述PUF数据,构成所述存储器组的多个存储单元不记录所述PUF数据的纠错数据。
据此,若在构成存储器组的多个存储单元记录有PUF数据的纠错数据(例如,与PUF数据一对一地对应的纠错数据),则根据该纠错数据分析PUF数据,但是,由于没有记录该纠错数据,因此,能够更提高防篡改性。而且,PUF数据的纠错是,即使不利用该纠错数据,也根据由Fuzzy Extractor生成的帮助数据能够进行的。并且,能够在不记录该纠错数据的空的区域(例如虚设单元)记录虚设数据,因此,能够提高防篡改性。
并且,也可以是,所述虚设数据是,用于使所述至少一个数据单元与所述至少一个虚设单元的汉明重量成为规定的值的数据。
据此,汉明重量成为规定的值,因此,边信道泄漏与该规定的值对应,能够使与信息数据的相关关系变小。
并且,也可以是,所述虚设数据是随机数据。
据此,汉明重量成为与随机数据对应的值,因此,边信道泄漏与该随机数据对应,能够使与信息数据的相关关系变小。
并且,也可以是,所述多个存储单元包括可变状态的存储单元,该可变状态的存储单元,通过被施加互不相同的多个电信号,电阻值在多个可变阻抗值范围之间进行可逆迁移,所述至少一个虚设单元是所述可变状态的存储单元,所述虚设数据是同一电阻状态下的电阻值。
据此,与数据单元同样,在虚设单元中,也能够使用作为虚设数据的PUF数据。
本公开的一个形态涉及的写入方法,是非易失性存储装置的写入方法,所述非易失性存储装置具备存储器组以及读出电路,所述存储器组,至少一个数据单元与至少一个虚设单元相关联而构成,该至少一个数据单元以及至少一个虚设单元是按照电阻值的大小记录数字数据的电阻变化型的多个存储单元;所述读出电路,对所述多个存储单元的每一个,并行执行读出工作,向所述至少一个虚设单元写入虚设数据,该虚设数据用于使执行所述读出电路的读出工作时发生的边信道泄漏与所述至少一个数据单元记录的信息数据的相关关系变小。
据此,能够提供具有高防篡改性的非易失性存储器。
以下,参照附图,说明基于这些知识的本公开的详情。
以下说明的实施方式,都示出一个具体例子。以下的实施方式示出的数值、形状、材料、构成要素、构成要素的配置位置以及连接形态、步骤、步骤的顺序等是一个例子,不是限定本公开的宗旨。对于以下实施方式的构成要素中的示出本公开的最上位概念的实施方案中没有记载的构成要素,作为任意的构成要素而被说明。并且,在附图中,对于相同的符号,会有省略说明的情况。并且,为了容易理解附图,而示意性地示出各个构成要素,会有示出的形状以及尺寸比等不是准确的情况。并且,在制造方法中,根据需要,能够变更各个工序的顺序等,并且,能够追加其他的公知的工序。
(实施方式)
[本公开中利用的电阻变化型非易失性存储装置的概要]
图1是示出实施方式涉及的电阻变化型非易失性存储装置100的概略结构的一个例子的框图。并且,图2是示出实施方式涉及的电阻变化型非易失性存储装置100具备的存储单元91的概略结构的一个例子的截面图。而且,在本说明书中,将电阻变化型非易失性存储装置,也简称为非易失性存储装置。
在图1示出的例子中,本实施方式的非易失性存储装置100,至少具备存储单元阵列90、以及控制装置93。而且,控制装置93并不一定需要是非易失性存储装置100的一部分,也可以利用连接于非易失性存储装置100之外的控制装置,进行以下说明的工作。
存储单元阵列90具有,按照电阻值的大小记录数字数据的电阻变化型的多个存储单元91被配置为阵列状的结构。虽然在后面进行详细说明,但是,在存储单元阵列90中包括,作为多个存储单元91的至少一个数据单元与至少一个虚设单元相关联而构成的存储器组。在本实施方式中,存储单元阵列90包括,多个存储器组。数据单元是,记录密钥以及用户数据等的实际的信息数据的信息单元,虚设单元,记录用于使从存储器组读出信息时发生的边信道泄漏与信息数据的相关关系变小的虚设数据。而且,“记录”也可以是指,正在记录、以及将来记录的任一方。以下说明的“记录”也是同样的。
控制装置93,按照数据单元记录的存储单元91的电阻状态,执行向虚设单元的写入。在读出数据单元记录的数据时,将其数据单元、以及与该数据单元相关联的虚设单元一起,并行执行读出工作。也就是说,以存储器组的单位,并行执行读出工作。虚设单元被写入为,用于使执行读出工作时发生的边信道泄漏与数据单元记录的信息数据的相关关系变小的电阻值。
在图2示出的例子中,存储单元91具备的电阻变化元件120具备,基层122(例如,Ta2O5)、第一电极124(例如,Ir)、电阻变化层126(例如,TaOx)、以及第二电极128(例如,TaN)。各个存储单元91,与用于选择特定的存储单元的晶体管129连接。
存储单元91具有,被施加不同多个电信号,从而能够成为电阻值在多个可变阻抗值范围之间进行可逆迁移的可变状态的性质。可变阻抗值范围有,作为数字信息的某一个状态的成为低电阻状态的电阻值范围、以及作为另一个状态的成为比所述低电阻状态高电阻的高电阻状态的电阻值范围。如此,在可变状态下,能够使电阻值在低电阻状态与高电阻状态之间进行可逆迁移。
并且,存储单元91具有,能够成为初始状态的性质。“初始状态”是,电阻值处于与可变阻抗值范围的任一个都不重叠的初始电阻值范围的状态。处于初始状态的存储单元,只要不进行成形,就不成为可变状态。“成形”是指,将规定的电应力施加到存储单元,使存储单元变化为存储单元的电阻值在多个可变阻抗值范围之间进行可逆迁移的状态。
为了成形而施加的电应力(成形应力),例如,也会有是具有规定的电压和时间宽度的电脉冲的情况,也会有是多个电脉冲的组合的情况。成形应力也可以是积累的应力。在此情况下,应力的积累量超过规定量时,存储单元91从初始状态向可变状态迁移。
在本实施方式中设为,存储单元91具有,若在制造后,不进行成形,则不成为电阻值在多个可变阻抗值范围之间进行可逆迁移的状态的性质。也就是说,以下的说明中设为,由半导体过程等制造之后,施加成形应力之前的电阻变化元件,处于初始状态。
然而,该性质是一个例子,并不是必须的。存储单元91,也可以不是能够成为初始状态的元件,例如,而可以是仅具有可变状态的、所谓无成形的元件。
存储单元阵列90,除了将任意设定的数据模式按照多个存储单元91各自的可变状态的不同记录来利用的情况以外,还存在作为与物理特性对应的随机的个体识别信息即PUF利用的情况。
在一个例子的PUF中,利用同一电阻状态的各个存储单元的电阻值差异。即使同一电阻状态,也存在微小的电阻值的差异,在该一个例子的PUF中,利用该特性。从存储单元阵列90中,多个存储单元91被设定为可变状态的全部相同的电阻状态,被处理为记录了PUF数据的存储器组。
图3是绘制同一电阻状态下的标准化电阻值信息与针对其差异的标准正态分布的偏差的关系的图。如图3示出,关于存储单元的电阻值差异的分布,按照正态分布,以大致直线分布。据此,能够确认电阻值差异是非常随机的现象。在图3示出的例子中,将电阻值差异的分布的中央值设定为判断值,例如,若电阻值比判断值大则分配1数据,若小则分配0数据,从而输出数字数据。
在另一个例子中,利用从初始状态的存储单元到成形完成的积累脉冲施加时间的差异。
图4是绘制将成形完成为止的积累脉冲施加时间标准化的信息与针对其差异的标准正态分布的偏差的关系的图。关于存储单元的成形特性,能够确认相对于积累脉冲施加时间以大致直线分布。据此,与电阻值差异同样,可以说成形处理的积累脉冲施加时间的差异是非常随机的现象。在图4示出的例子中,作为成形脉冲参数,设定PUF数据区域的存储单元之中的大致半数的存储单元,成形完成时的固定时间的参数,对该PUF数据区域的存储单元,在该固定时间,进行成形处理。于是,在成形脉冲施加后的PUF数据区域内,大致半数的存储单元的成形完成,向可变状态迁移(换而言之,剩余的大致半数,仍然处于初始状态)。在图4示出的例子中,例如,将迁移为可变状态的存储单元设为1,将仍然处于初始状态的存储单元设为0来分配,从而输出数字数据。
[电阻变化型非易失性存储装置的结构以及电路基本工作]
图5是示出实施方式的非易失性存储装置10的具体结构例的框图。而且,非易失性存储装置10是,所述说明的非易失性存储装置100的一个具体例子,实施方式的非易失性存储装置的具体结构不仅限于图5所示的结构。
如图5示出,实施方式的非易失性存储装置10,在半导体基板上具备,存储器主体部22。并且,非易失性存储装置10还具备,数据输入输出电路6、控制电路15、以及地址输入电路16。
存储器主体部22具备,读出电路11、写入电路14、列解码电路17、行解码电路18、PUF数据生成电路19、以及存储单元阵列20。
写入电路14,向选择存储单元21施加各个工作的规定的电压来写入数据。例如,写入电路14,根据后述的信息区域7的至少一个数据单元记录的信息数据,向后述的虚设区域8的至少一个虚设单元进行虚设数据的写入工作。
读出电路11,对构成存储器组的多个存储单元21的每一个,并行执行读出工作。例如,存储器组是,由与字线对应的多个存储单元21构成的组,在存储单元阵列20,按每个字线存在存储器组。因此,读出电路11,例如,以存储器组的单位进行读出工作。读出电路11,将位线中流动的电流的变化,由后述的读出方式检测,作为选择存储单元的数字数据输出。
PUF数据生成电路19,生成PUF数据。具体而言,PUF数据生成电路19,获得同一电阻状态的多个存储单元21的电阻值,将获得的电阻值的中央值计算为判断值。而且,PUF数据生成电路19,判断获得的电阻值是否比判断值大,从而生成PUF数据。而且,将获得的电阻值的中央值计算为判断值的处理,判断获得的电阻值是否比判断值大的处理,以及生成PUF数据的处理,也可以不在存储器主体部22进行,也可以在存储器主体部22的外部进行。
行解码电路18,从与存储单元阵列20连接的多个m条字线WL中选择一个字线WL。
列解码电路17,从多个n条位线BL以及多个n条源极线SL中选择并行读出数(构成存储器组的存储单元数)的k条位线BL、以及与其对应的k条源极线SL,连接到写入电路14以及读出电路11。
它们(写入电路14,读出电路11,PUF数据生成电路19,行解码电路18以及列解码电路17),按照并行执行读出以及/或写入的行以及/或列的数量进行工作。
非易失性存储装置10的读出电路11具有输出Dout。读出电路11,与由列解码电路17以及行解码电路18选择的k个存储单元经由k条位线连接,将作为k个存储单元的数字数据的Dout发送到数据输入输出电路6。并且,PUF数据生成电路19,与由列解码电路17以及行解码电路18选择的k个存储单元经由k条位线连接,将关于k个存储单元的PUF数据数据发送到输入输出电路6。
存储器主体部22具有,作为存储区域的、信息区域7以及虚设区域8。信息区域7包括数据单元,在信息区域7存储任意的数据(用户数据)、加密密钥以及PUF数据等的安全数据。另一方面,虚设区域8包括虚设单元,在虚设区域8,根据向信息区域7写入的数据,写入用于使与进行并行读出工作时发生的边信道泄漏的相关关系变小的数据。
而且,信息区域7与虚设区域8不需要图5那样由位线分开,也可以由存储单元阵列20上的任意的区域划分。使物理上的区域区分的规则性变得越复杂,就越能够提高对黑客行为等的攻击的抗性。并且,对于信息区域7,也可以按照安全性的重要性,进行以能够限制访问的方式更细分化的划分。例如,对于加密密钥以及PUF数据等的安全数据,可以举出以在用户侧不能访问的方式限制等。并且,在虚设区域8,例如,也可以预先写入用于纠错的奇偶信息,也可以作为处理为针对检查时的不良位线的置换的冗余位利用。
存储单元阵列20具备,字线WL0、WL1、WL2、···WLm、与多个字线交叉、且被形成为相互平行地延伸的多个位线BL0、BL1、···BLn、以及与多个字线交叉、且被形成为相互平行、且与位线平行地延伸的源极线SL0、SL1、SL2、···SLn。这些多个位线BL0、BL1、···BLn以及多个源极线SL0、SL1、SL2、···SLn之中的、p条(p是满足1≤p≤n的整数),被分配为虚设区域8,剩下的线被分配为信息区域7。而且,在字线与多个位线的立交点,分别配置存储单元21。
各个存储单元21具备电阻变化元件23以及晶体管24。字线WL0、WL1、WL2、···WLm与各个晶体管24的栅极端子连接,位线BL0、BL1、···BLn与各个存储单元21具备的电阻变化元件23的第二电极连接,电阻变化元件23的第一电极与晶体管24的第二主端子分别连接,源极线SL0、SL1、SL2、···SLn与晶体管24的第一主端子分别连接。
电阻变化元件23在存储单元21中作为非易失性存储元件进行工作。非易失性存储装置10是,各个存储单元21由一个晶体管24以及一个电阻变化元件23构成的、所谓1T1R型的电阻变化型非易失性存储装置。存储单元的选择元件,不仅限于所述晶体管。也可以利用例如二极管等的2端子元件。
控制电路15,根据控制信号,使列解码电路17,选择位线或源极线的任一方,在写入时与写入电路14连接,在读出时与读出电路11连接。而且,使写入电路14或读出电路11工作。
对于电阻变化元件23,能够构成为与实施方式的所述电阻变化元件120同样的结构,因此,省略详细说明。
在图5示出的例子中,存储单元阵列20的选择晶体管利用NMOS晶体管,但是,不仅限于此,也可以利用PMOS晶体管。
图6是示出非易失性存储装置10具备的读出电路11的结构例的图。而且,在图6中,除了读出电路11以外,还示出存储单元阵列20以及列解码电路17。读出电路11,为了以由k个存储单元21构成的存储器组的单位并行执行读出工作,而具有k个(k是满足1≤k≤n的整数)读出放大电路30(SA0、SA1、SA2、···SAk)。由列解码电路17选择出的k条位线,与k个读出放大电路30分别连接。各个读出放大电路30,输出连接的存储单元21的数字数据。
图7是示出读出电路11具备的读出放大电路30的结构例的电路图。而且,在本图中,也示出与读出放大电路30连接的存储单元21。读出放大电路30具备,比较器80、均衡晶体管81、以及钳位晶体管82、83。比较器80,与SA_EN信号连接,一方的输入端子,与均衡晶体管81的第一主端子以及钳位晶体管82的第一主端子连接,另一方的输入端子,与均衡晶体管81的第二主端子以及钳位晶体管83的第一主端子连接。均衡晶体管81的栅极端子,与EQ信号连接。钳位晶体管82的第二主端子,与选择存储单元21连接,钳位晶体管83的第二主端子,与参考单元85连接。
在此,对于读出电路11输出选择存储单元21的数字数据的工作,利用图7的读出电路的结构图以及图8的时序图,进行具体说明。图8是选择出的存储单元21由读出电路11读出时的时序图。
在T0的定时,选择存储单元21的字线WL以及参考单元85的字线WL成为高电平(即,与选择存储单元21对应的晶体管24以及与参考单元85对应的晶体管84接通),各个选择存储单元21与读出放大电路30连接。
在T1的定时,读出放大电路30的使能信号SEN_EN成为高电平,从而读出放大电路30内的比较器80向等待状态迁移。此时,与均衡晶体管81的栅极端子连接的均衡信号EQ为高电平,比较器80的输入端子彼此电连接,被设定为同电位。
在T2的定时,均衡信号EQ成为低电平,从而解除各个输入端子的同电位的状态,比较器80的一个输入端子依赖于选择存储单元21的电阻值,开始放电,另一方的输入端子依赖于参考单元85的电阻值,开始放电。此时,若与参考单元85的电阻值相比,选择存储单元21的电阻值大,则从比较器80的输出Dout输出低电平,若小则输出高电平,然后,数字数据的值输入到数据输入输出电路6。
在T3的定时,使SEN_EN信号成为低电平,据此,比较器80的工作停止。
在T4的定时,使EQ信号再次成为高电平,比较器80的输入端子彼此电连接来成为同电位。
而且,图7中构成的读出电路11在本实施方式的非易失性存储装置10中,具有k个读出放大电路30,因此,能够使最大k个读出放大电路30进行并行工作。
[实施例1]
图9是示出实施例1的由非易失性存储装置10的工作生成的存储器组的数据模式的图。将至少一个数据单元与至少一个虚设单元相关联来构成存储器组。数据单元是,信息区域7中包括的存储单元,虚设单元是,虚设区域8中包括的存储单元。在此,示出与字线WL0至WL3分别对应的存储器组。而且,在本实施例中,设为k=16,将读出放大电路30的数量设为16个,将数据单元设为8个,将虚设单元设为8个。例如,若关注字线WL0,则与字线WL0对应的存储器组,由16个存储单元a至p构成。具体而言,存储单元a至h是,信息区域7中包括的数据单元,存储单元i至p是虚设区域8中包括的虚设单元。存储单元a至p并行执行读出工作,并且,并行执行写入工作。
图10是示出实施例1的非易失性存储装置10的工作例的流程图。以下,参照图9以及图10,说明非易失性存储装置10的工作。
在步骤S11中,写入电路14,从数据输入输出电路6,接收信息区域7的写入数据模式信息。在步骤S12中,根据步骤S11中接收的写入数据,写入电路14,设定向虚设区域8写入的数据模式。例如,向虚设区域8写入的数据被设定为,由共同的字线WL选择的、由多个存储单元构成的存储器组的信息区域7与虚设区域8的汉明重量总是成为一定(规定的值)。
例如,如图9示出考虑设定为,读出放大电路SA0至SA7读出的存储单元的组包括在信息区域7中,读出放大电路SA8至SA15读出的存储单元的组包括在虚设区域8中,将规定的值设定为汉明重量总是成为“8”。例如,在将高电阻状态的存储单元设为0数据,将低电阻状态的存储单元设为1数据的情况下,在选择出字线WL0的情况下,向信息区域7的存储单元a至h写入的数据模式为“00001111”那样汉明重量为“4”,因此,在虚设区域8的存储单元i至p,写入例如“00001111”那样的汉明重量“4”的数据模式,从而字线WL0的存储器组的并行读出的汉明重量成为“8”。同样,在字线WL2中,向信息区域7写入的数据模式为,“10101101”那样汉明重量为“5”,因此,在虚设区域8的存储单元设定例如“11100000”的汉明重量“3”的数据。而且,对于虚设区域8的数据模式,若是汉明重量成为一定的模式,则也可以是任何模式。如此,针对进行并行读出的存储器组,以汉明重量总是成为一定的方式调整虚设区域8的存储单元,从而使读出工作时的边信道泄漏与信息区域7的存储单元记录的数据的相关变小。
而且,在步骤S13中,针对信息区域7以及虚设区域8,执行步骤S12中设定的数据模式的写入,由非易失性存储装置10记录数据。如此,写入电路14,根据至少一个数据单元记录的信息数据,向至少一个虚设单元进行虚设数据的写入工作。而且,在该一个例子中,在写入电路14接收写入数据后,写入电路14生成虚设单元的数据模式,但是,也可以在外部预先生成向虚设单元写入的数据。并且,在向信息区域7的数据单元写入的定时也执行向虚设单元的写入,但是,例如,也会有如下方法,即,在对信息区域7进行写入处理后,进行写入到信息区域7的数据的读出,按照读出结果向虚设单元写入的方法。
如上说明,非易失性存储装置10,具备:作为按照电阻值的大小记录数字数据的电阻变化型的多个存储单元的、至少一个数据单元与至少一个虚设单元相关联而构成的存储器组;以及对构成存储器组的多个存储单元的每一个,并行执行读出工作的读出电路11。在至少一个虚设单元记录,用于使执行读出电路11的读出工作时发生的边信道泄漏与至少一个数据单元记录的信息数据的相关关系变小的虚设数据。
据此,在至少一个虚设单元,记录有用于使边信道泄漏与信息数据的相关关系变小的虚设数据,因此,发生与因信息数据而发生的边信道泄漏不同的边信道泄漏。因此,难以根据执行读出电路11的读出工作时发生的边信道泄漏推测信息数据。因此,能够提高防篡改性。
具体而言,虚设区域8的至少一个(在此为8个)的虚设单元记录的虚设数据是,用于使至少一个(在此为8个)数据单元与至少一个虚设单元的汉明重量成为规定的值(在此为8个)的数据,因此,边信道泄漏与该规定的值对应,能够使与数据单元记录的信息数据的相关关系变小。
[实施例2]
实施例2是,关于PUF数据的内容,因此,首先说明一般的PUF的工作系统后,说明实施例2的非易失性存储装置10的工作的例子。
首先,参照图11、图12,说明PUF数据登记的流程。
图11是示出实施例2的非易失性存储装置10的PUF数据登记时的工作例的流程图。图12是用于说明实施例2的非易失性存储装置10的PUF数据登记时的工作的图。
在步骤S21中,例如,检测出被设定为低电阻状态的PUF区域内的存储单元的电阻值差异,生成n位的PUF数据(P)。在步骤S22中,生成与PUF数据不同的随机数据(R),在步骤S23中,生成合并生成的随机数据(R)以及作为纠错数据的奇偶数据(E)的、位长为n位的代码数据(C)。作为一个例子,PUF数据(P)为16位(n=16),并且,随机数据(R)为5位,奇偶数据(E)为11位,代码数据(C)为16位。在步骤S24中,步骤S21中生成的PUF数据(P)与步骤S21中生成的代码数据(C)由XOR加密,从而生成帮助数据(H)。该帮助数据(H),由与通常的存储器数据同样的方法,存放到信息区域7。
例如,在工厂等的非易失性存储装置10的生产时进行PUF数据的登记,随机数据(R)、奇偶数据(E)以及代码数据(C)是,此时使用的、不由非易失性存储装置10记录的数据。因此,若确定代码数据(C),则能够根据代码数据(C)推测PUF数据(P),但是,只要代码数据(C)不被流出等,就不能根据代码数据(C)推测PUF数据(P)。
并且,帮助数据(H)是,在信息区域7存放的、能够分析的数据,但是,由于是PUF数据(P)与代码数据(C)由XOR加密的数据,因此,不能根据帮助数据(H)推测PUF数据(P)。
接着,利用图13以及图14,说明PUF数据再现的流程。
图13是示出实施例2的非易失性存储装置10的PUF数据再现时的工作例的流程图。图14是用于说明实施例2的非易失性存储装置10的PUF数据再现时的工作的图。
在步骤S31中,读出记录在信息区域7的帮助数据(H),在步骤S32中,从PUF区域再现PUF数据(P')。此时得到的PUF数据(P'),会有与PUF数据(P)相等的情况,也会有包括错误的可能性。这是因为,PUF数据,利用同一电阻状态下的电阻值的差异,但是,该差异是微小的差异,容易受到温度以及电源那样的环境变动的影响,再现性并不高,每当从PUF区域再现PUF数据时成为不同的数据的缘故。
在步骤S33中,步骤S31中读出的帮助数据(H)与步骤S32中再现的PUF数据(P')由XOR解码,从而生成代码数据(C')。对该得到的代码数据(C'),执行纠错,从而得到原来的代码数据(C)。在步骤S34中,步骤S33中纠正的代码数据(C)与帮助数据(H)由XOR解码,从而能够再现登记时的PUF数据(P)。如此,即使针对PUF数据的纠错数据不存在,也能够再现纠正PUF数据(P')后的PUF数据(P)。而且,以图11以及图13说明的处理,例如,由PUF数据生成电路19等进行,但是,不仅限于此,也可以由非易失性存储装置10具有的其他的构成要素进行,也可以由非易失性存储装置10的外部的构成要素进行。
一般的纠错,为了进行纠错而附加与数据对应的奇偶数据(纠错数据),数据和奇偶数据的双方由非易失性存储器存放。例如,在针对PUF数据,附加奇偶数据来存放到非易失性存储器的情况下,该奇偶数据,与PUF数据一对一地关联,因此,存在根据奇偶数据的信息,推测PUF数据的风险。但是,本实施例中说明的PUF数据的纠错方式是,称为FuzzyExtractor的纠错方式的一个例子,针对不能预测的随机数据附加奇偶数据,将通过与生成的PUF数据的基于XOR的加密来生成的数据作为帮助数据保存,因此,难以根据帮助数据预测PUF数据。也就是说,根据该Fuzzy Extractor,能够实现比以往的纠错方式,安全性高的纠错。
根据以上的PUF的工作系统,以后说明实施例2的非易失性存储装置10的工作例。
图15示出实施例2的非易失性存储装置10的存储单元阵列的数据结构。在本实施例2中,设为k=21,将读出放大电路30设为21个,将数据单元设为16个,将虚设单元设为5个。在非易失性存储装置10中,将读出放大电路SA0至SA15读出的存储单元的组分配为信息区域7,将SA16至20读出的存储单元的组分配为虚设区域8。
在信息区域7中,记录有PUF数据以及用于PUF数据的纠错的帮助数据。并且,关于实施例2的PUF数据,将电阻差异作为固有ID数据利用,因此,看起来全部为同一电阻状态,例如低电阻状态(例如1状态)。而且,在数据单元记录有PUF数据的存储器组中,也可以该数据单元包括不是同一电阻状态的存储单元。另一方面,帮助数据,与通常的存储器数据同样,以低电阻状态(例如1状态)以及高电阻状态(例如0状态)的两个状态记录数据。
图16是示出实施例2的非易失性存储装置10的工作例的流程图。以下,参照图15以及图16,说明虚设区域8的电阻值设定为止的工作。
在步骤S41中,生成随机数据。该随机数据,也可以是搭载在芯片内部的随机数生成器生成的随机数据,也可以是从外部输入的随机数据。而且,该随机数据是,与以图11以及图12说明的随机数据(R)无关的随机数。在步骤S42中,在与PUF数据并行执行读出工作的虚设区域8的存储单元设定随机数据。在步骤S43中,步骤S42中设定的随机数据,由写入电路14,写入到虚设区域8的存储单元。
如上所述,对PUF数据的纠错,利用Fuzzy Extractor。也就是说,在与信息区域7内的帮助数据对应的、虚设区域8的存储单元,存放针对帮助数据的纠错的奇偶数据。另一方面,在与PUF数据对应的虚设区域8的存储单元,不需要存放针对PUF数据的纠错数据,因此,例如,通过写入随机数据,从而能够使PUF数据与边信道泄漏的相关关系变小。
而且,在本实施例中,向虚设单元写入的数据是随机数据,但是,不仅限于此。关于实施例2的PUF数据,根据同一电阻状态的差异生成固有ID数据,因此,例如,即使仅将虚设区域8的存储单元全部设定为与PUF相同的电阻状态(例如低电阻状态),也能够提高相关关系的复杂性。
[针对向非易失性存储装置的边信道攻击的抗性评价]
接着,说明针对向实施例1、2的非易失性存储装置的边信道攻击的抗性评价。
图17是示出边信道攻击的评价环境的图。评价环境,例如,由个人电脑(PC)50、示波器51、电磁场(EM)探头52、芯片评价板53、非易失性存储装置54构成。PC50,与芯片评价板53以及示波器51连接,示波器51,与EM探头52连接。若从PC50,向芯片评价板53,发送读出工作的指令,非易失性存储装置54则开始读出工作。若执行读出工作,非易失性存储装置54,则消耗读出工作的电力,因此,据此在电路上流动的电流成为磁场并发生在芯片表面。该发生的磁场由EM探头52,检测为边信道信息,波形数据输出到示波器51。在示波器51显示的波形数据由PC50获得,进行分析。
图18示出,在图17的评价环境中,使非易失性存储装置54的读出电路工作一个周期时的,EM探头52获得的边信道信息。在与图8所示的时序图对应的各个信号的切换的定时(T1至T4),出现电力消耗的大幅度的变化,能够确认检测出边信道泄漏。以下说明的、针对实施例1、2的非易失性存储装置10的边信道的攻击抗性评价结果是,将T3的泄漏示出为评价对象时的结果。
图19是示出实施例1的非易失性存储装置10的存储单元阵列的、汉明重量与磁场强度的相关关系的图。具体而言,相对于实施例1的存储单元阵列,不分离为信息区域7与虚设区域8,将具有汉明重量0至16的数据模式的存储器组分别生成多个。接着,对各个存储器组进行读出工作100次。也就是说,对汉明重量0的多个存储器组的每一个进行读出工作100次,对汉明重量1的多个存储器组的每一个进行读出工作100次,···,对汉明重量16的多个存储器组的每一个进行读出工作100次。图19示出,将针对多个存储器组的每一个由EM探头52获得100次的波形平均化时的磁场强度的描绘的图。而且,图19的菱形的点示出,每个汉明重量的描绘的磁场强度的中央值,误差棒,连结每个汉明重量的描绘的磁场强度的最小值和最大值。根据该图也可见,汉明重量与边信道泄漏(在此磁场强度)具有的相关关系强。而且,以后说明的图的磁场强度的描绘方法,与图19相同,因此,省略说明。
图20是示出实施例1的非易失性存储装置10的存储单元阵列的、存储器组的汉明重量为一定时的磁场强度的图。具体而言,示出相对于实施例1的存储单元阵列,分离为信息区域7与虚设区域8,针对信息区域7的汉明重量为0至8,分别调整为存储器组全体的汉明重量成为一定的8时的结果。根据将汉明重量设为一定的对策,针对信息区域7的汉明重量调整虚设区域8的汉明重量,因此,能够确认信息区域7的存储单元与边信道泄漏的相关关系小。例如,可见,信息区域7单体的汉明重量为0时的存储器组的边信道泄漏、与信息区域7单体的汉明重量为8时的存储器组的边信道泄漏大致相同,边信道泄漏与数据单元记录的信息数据的相关关系小。
图21是示出实施例2的非易失性存储装置10的存储单元阵列的、汉明重量与磁场强度的相关关系的图。具体而言示出,相对于实施例2的存储单元阵列,使与记录PUF数据的信息区域7相关联的虚设区域8成为初始状态(绝缘状态)时的、该PUF数据的汉明重量与EM探头52获得的磁场强度的关系。实施例2的PUF数据,根据同一电阻状态的稍微的电阻差异生成固有ID数据,因此,看起来全部为低电阻状态,不是实施例1那样相关关系强。但是,如图21示出,汉明重量越大,磁场强度就越小,具有稍微的相关性。而且,在图21中,没有示出汉明重量为0至2、15、16时的数据。这是因为,PUF数据是,由随机性高的、同一电阻状态的稍微的电阻差异而生成的数据,向存储器组的存储单元的大致全部,能够分配图3等的1数据或0数据的概率低的缘故。
图22是示出实施例2的非易失性存储装置的存储单元阵列的、汉明重量为一定时的磁场强度的图。具体而言示出,相对于实施例2的存储单元阵列,向虚设区域8写入随机数据时的信息区域7的汉明重量与边信道泄漏的相关性。可见,受到写入到虚设区域8的随机数据的影响,因此,与各个汉明重量对应的磁场强度的差异大。并且,可见,误差棒的宽度也大。也就是说,意味着向虚设区域8写入随机数据,从而汉明重量的数据的筛选的复杂性提高。
如上说明,在多个存储单元,记录利用了物理上的差异特性的设备固有的PUF数据,因此,能够更提高防篡改性。
例如,多个存储单元包括,通过被施加互不相同的多个电信号,电阻值在多个可变阻抗值范围进行可逆迁移的可变状态的存储单元,对用于PUF数据的物理上的特性差异,利用可变状态的存储单元的同一电阻状态下的电阻值的差异。据此,能够容易生成PUF数据。
进一步,在至少一个数据单元,记录PUF数据,在构成存储器组的多个存储单元,不记录与PUF数据一对一地关联的纠错数据。而且,与PUF数据一对一地关联的纠错数据是,与记录该PUF数据的数据单元关联的虚设单元能够记录的纠错数据,也是能够与该PUF数据并行读出的数据。在实施例2中,如图15示出,在该虚设单元记录随机数据,不记录与PUF数据一对一地关联的纠错数据。
据此,若在构成存储器组的多个存储单元记录PUF数据的纠错数据(与PUF数据一对一地关联的纠错数据),则能够根据该纠错数据分析PUF数据,但是,不记录该纠错数据,因此,能够更提高防篡改性。而且,关于PUF数据的纠错,即使不利用该纠错数据,也根据由Fuzzy Extractor生成的帮助数据能够进行纠错。并且,能够在不记录该纠错数据的空的区域(例如虚设单元)记录虚设数据,因此,能够提高防篡改性。
并且,虚设数据是,随机数据。据此,汉明重量成为与随机数据对应的值,因此,边信道泄漏与该随机数据对应,能够使与信息数据的相关关系变小。而且,至少一个虚设单元也可以是,可变状态的存储单元,虚设数据也可以是,同一电阻状态下的电阻值。在此情况下,与数据单元同样,在虚设单元中,也能够使用作为虚设数据的PUF数据。
根据所述非易失性存储装置,能够更坚固保护密钥。例如,即使通过针对非易失性存储装置的边信道攻击,想要筛选汉明重量,汉明重量与边信道泄漏(例如,磁场波形)的相关关系也小,因此,对于攻击者而言,在蛮力攻击时,难以筛选成为候选的数据,计算量大幅度增加,因此,其结果为,能够提高安全性。
(其他的实施方式)
以上,说明了实施方式涉及的非易失性存储装置10,但是,本公开,不仅限于所述实施方式。
例如,在所述实施方式中,非易失性存储装置10,也可以不具备写入电路14,也可以将虚设数据预先记录在虚设单元。
并且,例如,PUF数据,也可以是由PUF技术生成的个体识别信息(例如,利用同一电阻状态下的电阻值的差异来生成的数据),也可以是成为该个体识别信息的基础的数据(例如,示出包括电阻值的差异的同一电阻状态的数据)。
并且,例如,在所述实施方式中,对用于PUF数据的物理上的特性差异,利用了图3中说明的、可变状态的存储单元的同一电阻状态下的电阻值的差异,但是,不仅限于此。例如,对用于PUF数据的物理上的特性差异,也可以利用以图4说明的成形应力所需要的积累脉冲时间的差异。
并且,例如,在所述实施方式中,在信息区域7包括多个数据单元,但是,包括至少一个数据单元即可,在虚设区域8包括多个虚设单元,但是,包括至少一个虚设单元即可。
并且,本公开,不仅能够作为非易失性存储装置实现,也能够作为包括构成非易失性存储装置的各个构成要素进行的步骤(处理)的写入方法实现。
具体而言,具备作为按照电阻值的大小记录数字数据的电阻变化型的多个存储单元的、至少一个数据单元与至少一个虚设单元相关联而构成的存储器组、以及对构成多个存储单元的每一个、并行执行读出工作的读出电路11的非易失性存储装置10的写入方法。在该写入方法中,向至少一个虚设单元,写入用于使执行读出电路11的读出工作时发生的边信道泄漏与至少一个数据单元记录的信息数据的相关关系变小的虚设数据(图10的步骤S13或图16的步骤S43)。
例如,这些步骤,也可以由计算机(计算机系统)执行。而且,本公开,能够作为用于使计算机执行这些方法中包括的步骤的程序实现。进一步,本公开,能够作为记录有该程序的CD-ROM等即非暂时性的计算机可读取的记录介质实现。
例如,在本公开,由程序(软件)实现的情况下,利用计算机的CPU、存储器以及输入输出电路等的硬件资源执行程序,来执行各个步骤。也就是说,CPU从存储器或输入输出电路等获得并运算数据,以及,将运算结果存储器输出到输入输出电路等,来执行各个步骤。
并且,所述实施方式非的易失性存储装置10中包括的各个构成要素也可以,作为专用或通用的电路实现。
并且,所述实施方式的非易失性存储装置10中包括的各个构成要素也可以,由作为集成电路(IC:Integrated Circuit)的LSI(Large Scale Integration)实现。
并且,集成电路不仅限于LSI,也可以由专用电路或通用处理器实现。也可以利用能够编程的FPGA(Field Programmable Gate Array),或者,能够重构LSI内部的电路单元的连接以及设定的可重构处理器。
进而,若因半导体技术的进步或派生的其他的技术而出现代替LSI的集成电路化的技术,当然,也可以利用该技术进行非易失性存储装置10中包括的各个构成要素的集成电路化。
而且,根据所述说明,对本领域技术人员而言,本公开的许多改良以及其他的实施方式是明显的。因此,所述说明是,应该仅理解为例子的、以向本领域技术人员提示实现本公开的最佳形态为目的来提供的。在不脱离本公开的宗旨的情况下,能够实际变更其结构以及/或功能的详细内容。
本公开涉及的非易失性存储装置,能够搭载在进行基于利用数字ID的数据密码的认证的、向主计算机以及服务器访问的IC或SoC(System on Chip)等。
符号说明
6 数据输入输出电路
7 信息区域
8 虚设区域
10、54、100 非易失性存储装置
11 读出电路
14 写入电路
15 控制电路
16 地址输入电路
17 列解码电路
18 行解码电路
19 PUF数据生成电路
20、90 存储单元阵列
21、91 存储单元
22 存储器主体部
23 电阻变化元件
24、84 晶体管
30 读出放大电路
50 个人电脑(PC)
51 示波器
52 电磁场(EM)探头
53 芯片评价板
80 比较器
81 均衡晶体管
82、83 钳位晶体管
85 参考单元
93 控制装置
120 电阻变化元件
122 基层
124 第一电极
126 电阻变化层
128 第二电极
129 晶体管

Claims (10)

1.一种非易失性存储装置,具备:
存储器组,至少一个数据单元与至少一个虚设单元相关联而构成,该至少一个数据单元以及至少一个虚设单元是按照电阻值的大小记录数字数据的电阻变化型的多个存储单元;以及
读出电路,对构成所述存储器组的多个存储单元的每一个,并行执行读出工作,
在所述至少一个虚设单元记录虚设数据,该虚设数据用于使执行所述读出电路的读出工作时发生的边信道泄漏与所述至少一个数据单元记录的信息数据的相关关系变小。
2.如权利要求1所述的非易失性存储装置,
所述非易失性存储装置具备写入电路,
所述写入电路,根据所述至少一个数据单元记录的信息数据,对所述至少一个虚设单元进行所述虚设数据的写入工作。
3.如权利要求1所述的非易失性存储装置,
在所述多个存储单元记录物理不可克隆函数数据即PUF数据,所述PUF数据是利用了物理上的差异特性的设备固有的数据。
4.如权利要求3所述的非易失性存储装置,
所述多个存储单元包括可变状态的存储单元,该可变状态的存储单元,通过被施加互不相同的多个电信号,电阻值在多个可变阻抗值范围之间进行可逆迁移,
关于用于所述PUF数据的物理上的特性差异,利用所述可变状态的存储单元的同一电阻状态下的电阻值的差异。
5.如权利要求3所述的非易失性存储装置,
所述多个存储单元包括可变状态的存储单元以及初始状态的存储单元,
所述可变状态的存储单元,通过被施加互不相同的多个电信号,电阻值在多个可变阻抗值范围之间进行可逆迁移,
所述初始状态的存储单元,只要不被施加用于变化为所述可变状态的电应力即成形应力,就不会成为所述可变状态,并且,电阻值处于与所述多个可变阻抗值范围的任一个都不重叠的初始电阻值范围,
关于用于所述PUF数据的物理上的特性差异,利用所述成形应力所需要的积累脉冲时间的差异。
6.如权利要求3所述的非易失性存储装置,
所述至少一个数据单元记录所述PUF数据,
构成所述存储器组的多个存储单元不记录所述PUF数据的纠错数据。
7.如权利要求1至6的任一项所述的非易失性存储装置,
所述虚设数据是,用于使所述至少一个数据单元与所述至少一个虚设单元的汉明重量成为规定的值的数据。
8.如权利要求1至6的任一项所述的非易失性存储装置,
所述虚设数据是随机数据。
9.如权利要求6所述的非易失性存储装置,
所述多个存储单元包括可变状态的存储单元,该可变状态的存储单元,通过被施加互不相同的多个电信号,电阻值在多个可变阻抗值范围之间进行可逆迁移,
所述至少一个虚设单元是所述可变状态的存储单元,
所述虚设数据是所述可变状态的存储单元的同一电阻状态下的电阻值。
10.一种写入方法,是非易失性存储装置的写入方法,所述非易失性存储装置具备存储器组以及读出电路,
所述存储器组,至少一个数据单元与至少一个虚设单元相关联而构成,该至少一个数据单元以及至少一个虚设单元是按照电阻值的大小记录数字数据的电阻变化型的多个存储单元;所述读出电路,对所述多个存储单元的每一个,并行执行读出工作,
在所述写入方法中,
向所述至少一个虚设单元写入虚设数据,该虚设数据用于使执行所述读出电路的读出工作时发生的边信道泄漏与所述至少一个数据单元记录的信息数据的相关关系变小。
CN201880087393.0A 2018-01-23 2018-10-29 非易失性存储装置以及其写入方法 Active CN111630598B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018-009148 2018-01-23
JP2018009148 2018-01-23
PCT/JP2018/040095 WO2019146198A1 (ja) 2018-01-23 2018-10-29 不揮発性メモリ装置およびその書込み方法

Publications (2)

Publication Number Publication Date
CN111630598A CN111630598A (zh) 2020-09-04
CN111630598B true CN111630598B (zh) 2023-04-11

Family

ID=67394606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880087393.0A Active CN111630598B (zh) 2018-01-23 2018-10-29 非易失性存储装置以及其写入方法

Country Status (5)

Country Link
US (1) US11195582B2 (zh)
EP (1) EP3745403A4 (zh)
JP (1) JP6894012B2 (zh)
CN (1) CN111630598B (zh)
WO (1) WO2019146198A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210041974A (ko) * 2019-10-08 2021-04-16 에스케이하이닉스 주식회사 전자 장치 및 전자 장치의 제조 방법

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207343A (ja) * 2006-02-01 2007-08-16 Renesas Technology Corp 不揮発性半導体記憶装置
KR100799721B1 (ko) * 2006-11-30 2008-02-01 삼성전자주식회사 비휘발성 메모리 장치, 그 제조 방법 및 동작 방법.
CN101232048A (zh) * 2006-11-03 2008-07-30 三星电子株式会社 存储器件及其操作和制造方法
CN101622673A (zh) * 2007-02-23 2010-01-06 松下电器产业株式会社 非易失性存储装置及非易失性存储装置中的数据写入方法
JP2013005314A (ja) * 2011-06-20 2013-01-07 Renesas Electronics Corp 半導体装置
JP2013037736A (ja) * 2011-08-05 2013-02-21 Renesas Electronics Corp 半導体装置
CN107437431A (zh) * 2016-05-26 2017-12-05 松下知识产权经营株式会社 非易失性存储装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006025366A (ja) 2004-07-09 2006-01-26 Sony Corp 暗号化装置及び半導体集積回路
JP2007067942A (ja) 2005-08-31 2007-03-15 Dainippon Printing Co Ltd Icカード、および、icカード用プログラム
EP2404403B1 (en) 2009-03-06 2019-12-04 Intrinsic ID B.V. System for establishing a cryptographic key depending on a physical system
JP2013126078A (ja) 2011-12-14 2013-06-24 Renesas Electronics Corp 暗号処理装置、暗号処理方法、プログラム
JP5942781B2 (ja) 2012-04-16 2016-06-29 ソニー株式会社 記憶制御装置、メモリシステム、情報処理システム、および、記憶制御方法
US9430406B2 (en) * 2012-10-04 2016-08-30 Intrinsic Id B.V. System for generating a cryptographic key from a memory used as a physically unclonable function
JP5689569B2 (ja) 2013-02-01 2015-03-25 パナソニックIpマネジメント株式会社 不揮発性記憶装置
JP6136325B2 (ja) 2013-02-08 2017-05-31 日本電気株式会社 暗号処理装置、暗号処理方法およびプログラム
US9218890B2 (en) * 2013-06-03 2015-12-22 Sandisk Technologies Inc. Adaptive operation of three dimensional memory
US9343162B2 (en) * 2013-10-11 2016-05-17 Winbond Electronics Corporation Protection against side-channel attacks on non-volatile memory
CN105632543B (zh) 2014-11-21 2018-03-30 松下知识产权经营株式会社 具有防篡改性的非易失性存储装置及集成电路卡
EP3226168A1 (en) * 2016-03-31 2017-10-04 Nxp B.V. Electronic device and protection method
JP6793044B2 (ja) * 2016-05-26 2020-12-02 ヌヴォトンテクノロジージャパン株式会社 不揮発性メモリ装置
US9811689B1 (en) * 2016-12-27 2017-11-07 Macronix International Co., Ltd. Chip ID generation using physical unclonable function

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207343A (ja) * 2006-02-01 2007-08-16 Renesas Technology Corp 不揮発性半導体記憶装置
CN101232048A (zh) * 2006-11-03 2008-07-30 三星电子株式会社 存储器件及其操作和制造方法
KR100799721B1 (ko) * 2006-11-30 2008-02-01 삼성전자주식회사 비휘발성 메모리 장치, 그 제조 방법 및 동작 방법.
CN101622673A (zh) * 2007-02-23 2010-01-06 松下电器产业株式会社 非易失性存储装置及非易失性存储装置中的数据写入方法
JP2013005314A (ja) * 2011-06-20 2013-01-07 Renesas Electronics Corp 半導体装置
JP2013037736A (ja) * 2011-08-05 2013-02-21 Renesas Electronics Corp 半導体装置
CN107437431A (zh) * 2016-05-26 2017-12-05 松下知识产权经营株式会社 非易失性存储装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Bipolar-Selected Phase Change Memory Featuring Multi-Level Cell Storage;Ferdinando Bedeschi et al.;《Ferdinando Bedeschi》;第44卷(第1期);217-227 *
Vertical cross-point resistance change memory for ultra-high density non-volatile memory applications;Hong Sik Yoon et al.;《2009 Symposium on VLSI Technology》;26-27 *

Also Published As

Publication number Publication date
JP6894012B2 (ja) 2021-06-23
EP3745403A1 (en) 2020-12-02
CN111630598A (zh) 2020-09-04
JPWO2019146198A1 (ja) 2020-12-17
WO2019146198A1 (ja) 2019-08-01
US20200350012A1 (en) 2020-11-05
EP3745403A4 (en) 2021-01-13
US11195582B2 (en) 2021-12-07

Similar Documents

Publication Publication Date Title
CN107437431B (zh) 非易失性存储装置
US10574639B2 (en) Authentication apparatus utilizing physical characteristic
JP6587188B2 (ja) 乱数処理装置、集積回路カード、および乱数処理方法
JP6617924B2 (ja) 耐タンパ性を有する不揮発性メモリ装置および集積回路カード、不揮発性メモリ装置の認証方法、個体識別情報生成方法
JP6532024B2 (ja) 耐タンパ性を有する不揮発性メモリ装置、および集積回路カード
JP6508478B2 (ja) 耐タンパ性を有する不揮発性メモリ装置、および集積回路カード
JP6474056B2 (ja) 耐タンパ性を有する不揮発性メモリ装置、集積回路カード、不揮発性メモリ装置の認証方法、不揮発性メモリ装置を用いた暗号化方法および復号化方法
EP2933720B1 (en) Random number processing apparatus
JP6793044B2 (ja) 不揮発性メモリ装置
KR20160128911A (ko) 유니크 암호 키 및 상응하는 헬퍼 데이터를 생성하는 방법
JP6817888B2 (ja) 不揮発性メモリ装置
CN111630598B (zh) 非易失性存储装置以及其写入方法
JP6937288B2 (ja) 不揮発性メモリ装置およびチャレンジ・レスポンス方法
Sakib et al. Flash memory based physical unclonable function
US11404119B1 (en) Non-volatile memory device and challenge response method

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Kyoto Japan

Applicant after: Nuvoton Technology Corporation Japan

Address before: Kyoto Japan

Applicant before: Panasonic semiconductor solutions Co.,Ltd.

GR01 Patent grant
GR01 Patent grant