CN101536007A - 用于对外部非易失性存储器中所存储信息进行加密的方法及系统 - Google Patents
用于对外部非易失性存储器中所存储信息进行加密的方法及系统 Download PDFInfo
- Publication number
- CN101536007A CN101536007A CNA2007800415313A CN200780041531A CN101536007A CN 101536007 A CN101536007 A CN 101536007A CN A2007800415313 A CNA2007800415313 A CN A2007800415313A CN 200780041531 A CN200780041531 A CN 200780041531A CN 101536007 A CN101536007 A CN 101536007A
- Authority
- CN
- China
- Prior art keywords
- nonvolatile memory
- key
- information
- controller
- engine
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/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/80—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 storage media based on magnetic or optical technology, e.g. disks with sectors
-
- 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/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明描述一种非易失性存储系统,其包含用于在主机与非易失性存储器之间传送信息的控制器。所述控制器包含加密/解密引擎,其用于往来于位于所述控制器外部的非易失性存储器装置传送信息,在正存储到所述非易失性存储器装置中的信息被存储之前使用第一密钥对所述信息进行加密,且进一步在所存储的已加密信息被检索之后使用所述第一密钥对所述信息进行解密。或者,使用第二密钥连同所述第一密钥一起向所述非易失性存储器内所存储的所述信息添加进一步的安全性。
Description
技术领域
本发明实施例大体来说涉及非易失性存储器系统,且特定来说涉及具有用于对往来于外部非易失性存储装置的信息进行安全存储及存取的控制器的此类系统。
背景技术
近几年来,非易失性存储器已因其众多特性而作为一种良好的存储媒体享有盛名,例如,即使在无供电情况下其也可保持所存储的信息。另一方面且几乎因此,在以因特网、电子商务为主导且对敏感信息的电子存储有更大要求的世界里,以安全的方式不能被未授权源发现地存储信息已变得极其重要。
例如,口令、允许对信息的电子存取的用户识别及电子证书已变为敏感信息,这主要是因为其允许对金融数据及其它机密信息的存取。因此,尤其是在安全地进行的情况下,将信息存储到非易失性存储器中及将信息检索出非易失性存储器可是需要的。这对于大尺寸的非易失性存储器(例如超过一兆字节)来说更为明显。
在某些应用中,例如智能卡及可信平台模块(TPM)等装置包含嵌入式快闪或电可编程只读存储器EPROM,其为特定类型的非易失性存储器。可需要使这些及其它应用采用大型的非易失性存储器。通常采用非易失性存储器来存储敏感事物。然而,当前,离开用于存储的电子集成电路或装置进入非易失性存储器或快闪装置的信息不会享有高度的安全且因此易受到干扰。
存在当前采用加密/解密技术以用于对非易失性存储器中所存储的信息进行存取及编程的系统,然而,这些系统包含控制器内的非易失性存储器或集成电路且因此不太适于存储大众信息或存储大量的信息。
另外,在集成电路、装置或芯片内包含大型非易失性存储器可是极为昂贵的,因为制造非易失性存储器的成本因集成而明显高于以标准CMOS逻辑技术来制造装置或芯片。作为实例,已知在与包含控制器或装置相同的集成电路内包含大型快闪存储器可使成本增加25%到30%。包含相对较小尺寸(例如约数字节)的非易失性存储器可使用CMOS逻辑技术来完成。以CMOS逻辑技术实施的非易失性存储器单元明显大于以电可擦除可编程ROM(EEPROM)技术实施的其对应单元。然而,在CMOS中制造装置或芯片的成本明显低于在EEPROM中的成本。使用CMOS逻辑技术制造的具有小非易失性存储器的装置或芯片由于非易失性存储器需要较大的CMOS非易失性存储器单元而经历不明显的成本增加。这又使得所述装置或芯片稍大,然而成本比在必须使用EEPROM技术来实施所述装置或芯片的情况下明显较低。如果裸片尺寸的增加相当小而又需要较大容量的存储器时,则较大的尺寸是可容许的,裸片尺寸的增加当然是不实际的且需要采用EEPROM技术。
在其中非易失性存储器位于控制器外部(即,在不同的裸片、集成电路或芯片或不同的封装上)的应用中,不存在向所述外部非易失性存储器存储信息及从所述外部非易失性存储器检索信息的有效安全的系统。
鉴于前文所述,需要使包含控制器的非易失性存储系统实现安全的信息存储媒体,其中所述媒体驻留在所述控制器外部。
发明内容
附图说明
图1(a)显示根据本发明实施例的非易失性存储器系统。
图1(b)显示图1(a)的系统的控制器的进一步细节。
图1(c)显示测试/制造图1(a)的控制器的实例性实施例。
图1(d)显示根据本发明另一实施例的非易失性系统79的实例性实施例。
图1(e)显示前述非易失性存储器系统中的任一者的例示性性用,例如图1(a)的非易失性系统。
图2显示图1(a)的系统在检索非易失性存储器中所存储的信息时采用的实例性步骤。
图3显示根据本发明另一实施例的非易失性存储器系统。
图4显示当将信息存储到非易失性存储器中时在一个实施例中处理的实例性步骤的流程图。
图5显示当从非易失性存储器检索信息时在一个实施例中处理的实例性步骤的流程图。
具体实施方式
现在参照图1(a),图中显示根据本发明实施例的非易失性存储器系统10,其包含控制器12,控制器12通过接口(或通信链路)16耦合到非易失性存储器14。链路16可采取业内众所周知的各种形式,例如快闪接口、SPI、I2C、“或非”及“与非”快闪总线、经界定以顺应业内选用的标准的总线,等等。本文中使用的“非易失性存储器”是指能够在不向其供电的情况下保持信息的存储器。本文中使用的“非易失性半导体存储器”是指制作于衬底上的能够在不向其供电的情况下保持信息的半导体存储器。半导体可制作于衬底上,且非易失性半导体存储器可制作于一个或一个以上裸片、芯片或集成电路上。
显示控制器12包含主机接口18、控制逻辑20、编码器/解码器引擎22及编码器/解码器密钥存储装置24及快闪接口26。本文中使用的“密钥”是指经研发以实现对信息进行加密及/或解密的目的的电子值。
显示主机接口18经耦合以通过主机链路17从主机(未显示)接收信息,在一个实例中所述主机链路为通用串行接口(USB)连接,且在其它实施例中可为其它已知类型的连接。充当主机的装置的实例为:计算机的中央处理单元(CPU)、数码相机的处理单元、例如蜂窝电话的移动通信装置及引导信息出入非易失性存储器的许多其它装置。进一步显示主机接口18耦合到控制逻辑20以用于向其提供从所述主机接收的信息。
另外,还显示主机接口18耦合到引擎22以用于提供从主机接收的信息。控制逻辑20从存储装置24检索主密钥(对非易失性存储器系统唯一的密钥),并将所述主密钥加载到引擎22中以供在对信息进行加密及/或解密时使用,这在不久将变得更为明显。
进一步显示控制逻辑20耦合到存储装置24以用于维持主密钥。在本发明一个实施例中,存储装置24为非易失性存储器。在替代实施例中,所述主密钥是硬连线的,或被永久地编程或位于只读存储器(ROM)中。对所述主密钥进行硬连线的方式的实例包含但不限于使用电可编程熔丝、反熔丝、激光熔断及非易失性存储器单元。所述主密钥可替代地由固件或软件代码编程或存储在控制器中的ROM内。所述主密钥可在存储装置24是不必要的情况下任选地存储在控制逻辑20内。在另一实施例中,主密钥存储在引擎22中。主密钥的产生与编程在制造控制器12或系统10时发生。
在其中存储装置24是非易失性存储器的情况下,控制器12的尺寸因使用CMOS过程而略大,但尺寸的增加是不明显的。这是因为存储装置24的尺寸约为数字节,从而使得尺寸的增加不明显或可忽略不计。然而,非易失性存储器14的尺寸很大,且在非易失性存储器14置于控制器12内的情况下会实质地增加与控制器12相关联的尺寸及成本。然而,根据本发明实施例,通过使较大尺寸的非易失性存储器14位于控制器12外部来消除与所述非易失性存储器相关联的负担,从而允许实际地使用CMOS过程来用于制造控制器12。
主机链路17的实例包含但不限于:USB、多媒体卡(MMC)、安全数据(SD)、压缩快闪(CF)、存储棒(MS)、IDE、串行ATA(SATA)、PCI Express(PCIe)、SCSI、IS07816及低管脚计数(LPC),其均为业内选用的标准。
用以加密及/或解密信息的引擎22必须被强加密,即,使用尚未被破译的加密算法。当前已知的强算法(例如高级加密标准(AES)128/196/256)由引擎22来可编程地执行。应了解,可在不背离本发明实施例的情况下采用任何加密/解密算法。在一个实施例中,已知加密/解密算法不可被破译且因此更为安全。
在需要将加密/解密算法改变为不同算法的情况下,需要修改或替换引擎22以适应这一算法改变。通常使用硬件来设计引擎22以实施已知的不可破译算法,从而完成对存储在非易失性存储器中的信息的实时加密。或者,使用固件或软件对引擎22进行编程以实施算法。然而,应了解,引擎22的固件或软件实施会导致加密/解密速度减小。因此,为实时地实施加密/解密,将引擎22设计在硬件中且引擎22实施已知的加密/解密算法。
控制逻辑20基本地控制信息流且可采取各种形式,其中一种形式是如上文所述的中央处理单元(CPU)。引擎22进一步显示为耦合到存储单元24及快闪接口26。非易失性存储器14可包含在一个或一个以上非易失性存储器装置或集成电路(或芯片)中。
在实例性实施例中,不久将停止使用的非易失性存储器14可位于一个或一个以上集成电路中,其中所述电路包含在与控制器12相同的封装中,或物理地处于外部的封装中。
在本发明一个实施例中,系统10为便携式可装卸消费者装置,如下文将针对随后图式进一步论述,所述系统可连接到主机以供操作。当系统10连接到主机时,系统10或所述便携式可装卸消费者装置的用户被验证或被授权,此时将主密钥提供给引擎22。
如上文中所述,系统10需要足够的及大尺寸的非易失性存储器(例如非易失性存储器14)以用于以安全方式存储信息或电子数据或其它类型的电子信息。大尺寸既定是指在经济上及实践中无法可行地包含在其上除了制造非易失性存储器的裸片内的非易失性存储器。待存储的信息由通过标准连接耦合到装置的主机或由包含在装置或控制器内部的固件来提供。预期这一装置的许多实例性应用,针对图1(e)显示及论述其中一种应用。
应了解,虽然本文中大多数论述及图式论述了存储在非易失性存储器14(图1(a))或根据本发明实施例的其它非易失性存储器中的在密文中或已加密的信息,但未经加密的信息或明文也可存储在非易失性存储器内。很明显,在后一种情况下,无需对所存储的明文进行解密。本文中使用的“密文”(CT)是指信息的已加密版本。本文中使用的“明文”(PT)是指呈其原始形式的没有任何种类的加密的信息。“明文数据密钥”是一种尚未被加密或已被解密的数据密钥。“密码数据密钥”是一种已加密数据密钥。
在操作中,主机通过主机链路17将待存储到非易失性存储器14中的信息提供到主机接口18,主机接口18又将主机提供的信息耦合到控制逻辑20且耦合到引擎22。在控制逻辑20的控制下,引擎22从存储装置24接收主密钥并使用所述主密钥来将主机提供的信息加密并通过快闪接口26将所述已加密信息传递到非易失性存储器14。
当要从非易失性存储器14读取信息时,将所述信息通过快闪接口26传送到引擎22,引擎22使用主密钥对从非易失性存储器24传送的信息进行解密。在本发明一个实施例中,存储装置24将主密钥提供给引擎22。通过引擎22使用主密钥是在控制逻辑20的引导下执行的。接着,由引擎22将已解密的信息提供给主机接口18,主机接口18又将所述信息提供给主机。
在一个实施例中,主密钥是随机的,且引擎22使用相对强的加密/解密算法以确保安全。事实上,在制造控制器12期间,随机数产生器产生主密钥,下文将相针对随后图式对此加以论述。应了解,主密钥的较少随机性及/或加密/解密代码的强度导致存储或待存储在非易失性存储器14中的信息的较不安全及较易受攻击的状态。
以此方式,控制器12(或系统10)的独特个性在于,每一系统均使用不同的主密钥来编程且主密钥一直保持对其他人未知。事实上,在主密钥以某种方式被清除、删除或破坏的情况下,存储在非易失性存储器中的信息因无法被解密而变得无效。如不久将论述,在使用第二密钥(例如数据密钥)的情况下,当数据密钥被删除或变得未知时,存储在非易失性存储器中的信息变得无效,而系统可被重新使用以用于存储随后的信息,尽管先前使用丢失的数据密钥所存储的所有已存储信息均已永久地丢失。此可极有用于在系统或与系统一起操作的非易失性存储器丢失的情况下保持对所存储的信息的未经授权存取。
在主密钥以未经授权的手段恢复的情况下,例如系统10的其它系统(或控制器12)的整体性没受到损害,因为每一系统均具有唯一的主密钥。由测试器在制造期间产生各种主密钥,且每一产生的主密钥均编程到不同的系统10(或控制器12)中。因此,主密钥甚至对系统10的所有设计者保持未知。为实现主密钥的可编程性,可在存储装置24中采用一次可编程存储器、非易失性存储器或熔丝以及其它装置,因为主密钥仅需被编程一次且因此仅由系统10(或控制器12)使用。主密钥用于系统10(或控制器12)的整个寿命期间。
随机数产生器(未显示)在系统10(或控制器12的制造期间)实时地或在运行中产生随机数,所述随机数变为主密钥且被编程到系统10(或控制器12)中。因此,在完成制造时,将主密钥存储在存储装置24中,所述存储装置优选地为非易失性存储器、熔丝、一次可编程存储器或可在不加电时保持信息的任何其它类型的存储器。所述主密钥绝不会以任何方式改变或变更。
作为另一及任选安全措施,为保护主密钥不被读取,在制造期间在其中编程主密钥的层上方插入一层来充当用以掩盖存储装置24的晶体管的帽盖。以此方式,试图通过拆开系统10(或控制器12)来显露主密钥需要一定的精密水平,如果没有达到此水平则会发生显露失败,且另外地需要专门的设备及高成本。应了解,某些实施例不需要对编程手段的伪装(obviscation)。也就是说,在某些实施例中,主密钥借以编程到系统中的方式是不可物理地读取的,且不需要额外的制造步骤来防止对主密钥的未经授权识别。
在本发明的一个实施例中,非易失性存储器14包含预定的存储位置(称为专用区域)以用于存储例如证书及口令等专用或敏感信息,所述信息是除既定将由系统的用户存储的信息以外的信息。专用区域是非易失性存储器中用于存储除既定将由系统10的用户存储的数据以外的数据的预定位置。也就是说,证书、口令等等是除既定将由用户存储的以外的但又有必要存储以实现系统的适当运作的信息。
在本发明又一实施例中,使用数据密钥或第二密钥来存取信息,从而提供了附加的信息安全。主密钥仅用以存取专用区域中所存储的信息,且在专用区域内以已加密方式存储数据密钥并检索所述数据密钥以用于存取非易失性存储器内的剩余信息。
为使操作使用两个密钥来检索信息的实施例的方法进一步清晰,在图2中显示由系统10处理以用于使用主密钥及数据密钥来存取信息的实例性步骤的流程图。可存在一个或一个以上数据密钥,每一数据密钥均用于存取非易失性存储器中的特定位置。以已加密方式将数据密钥存储在存储装置24中或非易失性存储器14中。或者,将其存储在引擎22中,存储在(例如)寄存器堆中或控制器12内的任何其它位置中。
图1(b)显示图1(a)的控制器12的进一步细节。在图1(b)中,显示引擎22通过多路复用器(mux)25耦合到随机数产生器23,多路复用器25接纳链路27,链路27将主密钥或数据密钥耦合到引擎22。Mux 25允许引擎22的输入选择性地通过链路27接收密钥或通过数据链路29接收其它信息。应了解,在密钥存储于引擎22内的情况下,mux 25类似地位于引擎22内。
如图1(b)中进一步显示,显示图1(a)的控制逻辑20经耦合以向mux 31提供选择信号,mux 31选择性地接收主密钥、数据密钥或其它类型的密钥。在操作中,在要产生数据或第二密钥的情况下,控制逻辑20通过选择信号33向mux 31发信号以选择主密钥来作为其输入,且引擎22通过链路27来接收随机数产生器所产生的随机数。引擎22使用所述主密钥对所接收的随机数进行加密并产生已加密的(或密码)数据密钥。从此点开始,系统10采用数据密钥以对用户想要存储在非易失性存储器中的数据进行加密及解密。在其中指定专用区域的实例性实施例中,将数据密钥加密并存储在所述专用区域中并使用主密钥来存取。
在实例性实施例中,随机数产生器23在制造期间产生随机数,所述随机数由引擎22用来产生主密钥。以此方式,主密钥从未离开控制器12且完全在控制器内产生,从而增强了安全。一般来说,当数据或信息离开芯片、裸片或封装时,安全会至少在某种程度上受到损害,因为通过使用测试工具及激励装置,在信息离开芯片之后可极为容易地截获所述信息,而当其从未离开芯片时情况则不会如此。
图1(c)显示用于测试/制造不同于前文针对图1(b)所论述的图1(a)的控制器12的控制器测试设备77。在图1(c)中,显示测试器41通过将主密钥编程到控制器12中来测试或辅助制造所述控制器。由于测试器41位于控制器12外部且物理地位于控制器12外面,因此主密钥更易受到截获。因此,图1(c)的实施例的安全小于关于主密钥的产生及编程的图1(b)的实施例的安全,因此需要安全的测试/制造环境。在图1(c)中,位于测试器41中的随机数产生器43产生随机数并通过测试器电缆45将其传送到控制器的引擎22以充当主密钥。然后以上文所论述的方式将所接收的主密钥存储在控制器中。应注意,在实施例1(b)及1(c)两者中,主密钥针对每一控制器12仅产生一次。同样,此将进一步增强其中将使用控制器12的系统(例如图1(a)的系统10)的安全等级。
图1(d)显示非易失性系统79的实例性实施例,其中包含通过通信链路91而耦合的控制器81与非易失性存储器85,其中控制器81及存储器85物理地封装在单独的单元中。例如,显示控制器81位于封装83中,封装83不包含非易失性存储器85。通信链路91物理地连接控制器83与非易失性存储器85。显示非易失性存储器85在其为非易失性半导体存储器情况下包含一个或一个以上集成电路或裸片。图1(d)的系统79比图1(a)的系统10及图3的40安全性相对较小,因为已加密的信息必须在控制器封装83外面行进且更易于截获,尽管由于缺乏相关密钥的知识而使得破译所述信息几乎与前文所述系统一样困难。
图1(e)显示前述非易失性存储器系统(例如系统10)中的任一者的例示性应用。在图1(e)中,显示笔记型计算机101在其端口103处借助于便携式可装卸消费者装置105的连接器107来接纳装置105,连接器107以可装卸的方式连接到装置105。显示装置105包含耦合到非易失性存储器111的控制器109。
当装置105通过其连接器107而连接到计算机101中的主机时,控制器109与所述主机通信。如上文所论述,控制器109在主机与非易失性存储器之间传送信息。例如,计算机101的用户可希望将信息(例如文件)存储到装置105中。所述信息通过端口103及连接器107而传送到控制器109,其中以上文论述的方式使用密钥对所述信息进行加密。将已加密的信息(或密文)存储在非易失性存储器111中。类似地,当计算机101的用户希望读取先前存储在装置105中的信息时,由控制器从非易失性存储器111中读取所存储的已加密信息,将其解密为明文并通过连接器107及端口103提供给计算机101。
在一个实例中,装置105是图1(a)的系统10。或者,装置105不包含如针对图1(d)所论述而单独封装的非易失性存储器。在一个例示性实施例中,端口103及连接器107顺应于USB标准,但在本发明各种实施例中也可采用其它类型的通信方式。
图2显示由图1(a)的系统10在检索存储在非易失性存储器14中的信息时所采用的实例性步骤。在图2中,在步骤30处,从非易失性存储器14中读取已加密数据密钥或密码数据密钥。将所述已加密数据密钥优选地存储在非易失性存储器的专用区域中,且使用主密钥或通过使用主密钥而产生的又一第三密钥来存取所述专用区域。接下来,在步骤32处,由引擎22使用存储在存储装置24中的主密钥来对所检索的密码数据密钥进行解密。接下来,在步骤34中,将所检索的已解密或明文数据密钥加载到引擎22中,且使用所述密钥来将从除非易失性存储器14中所述专用区域以外的任何处所检索的任何数据或信息解密。在采用两个密钥的情况下(例如前述使用主密钥及数据密钥的实例),一旦在步骤34处检索数据密钥,即不再需要使用主密钥,除非将从非易失性存储器14存取例如口令或证书等其它敏感信息或将所述敏感信息存储到非易失性存储器14。
应注意,在本发明的替代实施例中,可在非易失性存储器14内指定一个以上专用区域,此外,每一专用区域均可通过使用不同的数据密钥来存取。只要可安全地存储密钥,正采用的数据密钥的数目即没有限制。
图3显示根据本发明另一实施例的非易失性存储器系统40。图1(a)显示非易失性存储器14与控制器42相耦合,控制器42包含图1(a)的引擎22及快闪接口26,此外还显示引擎22接收主密钥及数据密钥。控制器42接收明文,所述明文耦合到寄存器44以供将其临时存储。寄存器44耦合到引擎22,且引擎22以与图1(a)相同的方式耦合到快闪接口26。图3的实施例与图1(a)的实施例之间的不同之处是可选择性地将明文或密文提供给快闪接口26。在其中PT转变到CT的情况下,PT从寄存器44传送到引擎22以供任选地使用两个密钥(主密钥及数据密钥)对其进行加密。也就是说,如上所述,如果PT是包含口令、证书、密钥等的敏感信息,则使用主密钥来对其进行加密,否则,如果PT是数据或有时被称为的用户数据、除口令、证书、密钥等以外的数据,则使用数据密钥对其进行加密。
如图3中所示,可旁路引擎22,但最多将有不重要的安全性提供给正存储的或从非易失性存储器14检索的信息。
非易失性存储器14可具有大存储容量,即多于1兆字节。将供用于存储大信息的非易失性存储器定位于控制器外部允许使用CMOS技术来制造控制器,这比用于制造快闪或其它类型的非易失性存储器的方法更为廉价。
图4显示当将信息存储到图3的非易失性存储器14中时所处理的一个实施例的实例性步骤的流程图。首先由控制器来接收PT并将密钥加载到引擎22中。接下来,用所加载的密钥对PT进行加密以产生PT的CT版本,并将PT保存或存储到非易失性存储器中。所使用的密钥类型取决于非易失性存储器内是否指定专用区域及所述专用区域是否是其中存储CT的专用区域。在后者的情况下,将主密钥用作密钥,且在其中正采用两个密钥且正存取除专用区域以外的区域的情况下,数据密钥即是正使用的密钥。在其中未指定专用区域的情况下,则很明显使用主密钥。
图5显示当从图3的非易失性存储器14检索信息时在另一实施例中所处理的实例性步骤的流程图。首先,由控制器接收CT并将密钥加载到引擎22中。接下来,使用所加载的密钥来对CT进行解密,从而检索PT。注意,在加密及解密时对往来于相同位置的信息使用相同的密钥,否则,解密将不会产生准确的PT。关于在图5中使用哪一密钥,针对图4所论述的相同情形也适用于图5。
虽然已就特定实施例描述了本发明,但预期借助本发明的益处,所属领域的技术人员无疑将明了对本发明的变更及修改。因此,希望将以上权利要求书解释为涵盖归属于本发明真实精神及范围内的所有变更及修改。
Claims (25)
1、一种在非易失性存储系统中用于在主机与非易失性存储器之间传送信息的控制器,其包括:
加密/解密引擎,其用于往来于位于所述控制器外部的所述非易失性存储器传送信息,其中所述引擎在待存储到所述非易失性存储器装置中的信息被存储到其中之前使用密钥对所述信息进行加密,并在已加密信息从所述非易失性存储器中被检索之后使用所述密钥对所述已加密信息进行解密。
2、如权利要求1所述的控制器,其中所述密钥为主密钥。
3、如权利要求2所述的控制器,其中已加密数据密钥由所述引擎存储到所述非易失性存储器中的预定位置中,所述已加密数据密钥已由所述引擎使用所述主密钥而产生,所述所存储的已加密数据密钥是从所述预定位置中检索的并由所述引擎使用所述主密钥进行解密,且用于对从所述非易失性存储器中检索的位于除所述预定位置中以外的位置中的信息进行解密。
4、如权利要求3所述的控制器,其进一步包含适于向所述引擎选择性地提供所述主密钥及所述数据密钥的多路复用器。
5、如权利要求3所述的控制器,其中所述预定位置是用于存储除既定将由所述系统的用户存储的数据以外的信息的专用区域。
6、如权利要求5所述的控制器,其中一个以上专用区域被指定。
7、如权利要求6所述的控制器,其中所述专用区域中的每一者均与其唯一的已加密数据密钥相关联。
8、如权利要求3所述的控制器,其进一步包含用于产生随机数的随机数产生器,所述随机数适于由所述引擎接收以用于产生所述已加密数据密钥。
9、如权利要求2所述的控制器,其进一步包含用于产生所述主密钥的随机数产生器。
10、如权利要求9所述的控制器,其进一步包含用于存储所述数据密钥及/或所述主密钥的编码器/解码器密钥存储装置。
11、如权利要求10所述的控制器,其进一步包含用于存储由所述随机数产生器产生的唯一随机数的非易失性存储器。
12、如权利要求5所述的控制器,其中已加密数据密钥是从所述专用区域中检索的,所述数据密钥由所述引擎解密且用于对从所述非易失性存储器中检索的位于除所述专用区域中以外的区域中的信息进行解密。
13、一种非易失性存储器系统,其包括:
非易失性存储器;
控制器,其耦合在主机与所述非易失性存储器之间以用于在其之间传送信息且位于所述非易失性存储器外部,所述控制器包含加密/解密引擎,所述加密/解密引擎用于将信息以密文形式传送到所述非易失性存储器,通过在正存储到所述非易失性存储器中的信息被存储之前产生所述密文来使用密钥对所述信息进行加密,且通过在所述所存储的信息被检索之后使用所述密钥对所述所存储的密文进行解密来使用提供明文。
14、如权利要求13所述的非易失性存储器系统,其中所述密钥为主密钥。
15、如权利要求13所述的非易失性存储器系统,其中已加密数据密钥是从所述非易失性存储器中指定用于存储除用户信息以外的信息的专用区域中检索的,所述数据密钥由所述引擎解密且用于对从所述非易失性存储器中检索的位于除所述专用区域中以外的位置中的信息进行解密。
16、如权利要求13所述的非易失性存储器系统,其中所述控制器包含一次可编程存储器、非易失性存储器或用于存储所述数据密钥及/或所述主密钥的熔丝。
17、如权利要求13所述的非易失性存储器系统,其中所述非易失性存储器包括非易失性半导体存储器或硬盘驱动器。
18、如权利要求17所述的非易失性存储器系统,其中所述非易失性半导体存储器是一个或一个以上集成电路。
19、如权利要求13所述的非易失性存储系统,其中所述控制器通过通信链路耦合到所述非易失性存储器且封装在与所述非易失性存储器相同的单元中。
20、如权利要求19所述的非易失性存储器系统,其中所述控制器进一步包含用于产生对所述装置唯一且仅产生一次的主密钥的随机数产生器。
21、如权利要求19所述的非易失性存储器系统,其中所述随机数产生器用以产生第二密钥,所述第二密钥由所述引擎选择性地用以对往来于所述非易失性存储器的信息进行加密及解密。
22、如权利要求21所述的非易失性存储器系统,其中所述引擎适于对所述第二密钥进行加密以产生密码数据密钥并将其存储在所述非易失性存储器的指定区域中。
23、如权利要求22所述的非易失性存储器系统,其中所述指定区域用以存储除既定将由所述装置的用户存储的信息以外的信息。
24、一种存储及存取往来于非易失性存储器的信息的方法,其包括:
接收明文;
用第一密钥对明文进行加密以产生密文;
将所述密文存储在位于产生所述密文处外部的非易失性存储器中;
检索所述所存储的密文;及
使用所述第一密钥对所述所检索的密文进行解密。
25、如权利要求24所述的方法,其进一步包括:
将第二密钥的已加密版本存储到所述非易失性存储器中的预定区域中;
检索所述已加密的第二密钥;
使用所述第一密钥对所述第二密钥进行解密;及
使用所述第二密钥从所述非易失性存储器中除所述预定区域以外的区域中检索信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/598,173 US20080107275A1 (en) | 2006-11-08 | 2006-11-08 | Method and system for encryption of information stored in an external nonvolatile memory |
US11/598,173 | 2006-11-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101536007A true CN101536007A (zh) | 2009-09-16 |
Family
ID=39359756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007800415313A Pending CN101536007A (zh) | 2006-11-08 | 2007-11-06 | 用于对外部非易失性存储器中所存储信息进行加密的方法及系统 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20080107275A1 (zh) |
EP (1) | EP2080145A2 (zh) |
JP (1) | JP2010509662A (zh) |
KR (1) | KR20090080115A (zh) |
CN (1) | CN101536007A (zh) |
TW (1) | TW200833056A (zh) |
WO (1) | WO2008127408A2 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103415855A (zh) * | 2010-06-16 | 2013-11-27 | 威斯科数据安全国际有限公司 | 大容量存储设备存储器加密方法、系统及装置 |
CN105580027A (zh) * | 2013-09-30 | 2016-05-11 | 高通股份有限公司 | 用于使用不同域特定密钥确保内容安全的方法 |
CN107430670A (zh) * | 2015-03-26 | 2017-12-01 | 英特尔公司 | 用于存储器保护的柔性计数器系统 |
CN107533623A (zh) * | 2015-09-14 | 2018-01-02 | 慧与发展有限责任合伙企业 | 安全存储器系统 |
CN109391467A (zh) * | 2017-08-10 | 2019-02-26 | 北京兆易创新科技股份有限公司 | 非易失性存储器的加密方法及装置、解密方法及装置 |
CN110431557A (zh) * | 2017-01-09 | 2019-11-08 | 交互数字Ce专利控股公司 | 用于执行安全备份和恢复的方法和装置 |
CN112703703A (zh) * | 2018-07-17 | 2021-04-23 | J·B·坎特 | 用于存储敏感信息和其它数据的闪存设备 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8887270B2 (en) * | 2007-11-12 | 2014-11-11 | Micron Technology, Inc. | Smart storage device |
US8782433B2 (en) * | 2008-09-10 | 2014-07-15 | Inside Secure | Data security |
US9286493B2 (en) * | 2009-01-07 | 2016-03-15 | Clevx, Llc | Encryption bridge system and method of operation thereof |
US8078848B2 (en) | 2009-01-09 | 2011-12-13 | Micron Technology, Inc. | Memory controller having front end and back end channels for modifying commands |
US8276042B2 (en) | 2009-02-03 | 2012-09-25 | Micron Technology, Inc. | Determining sector status in a memory device |
US8589700B2 (en) | 2009-03-04 | 2013-11-19 | Apple Inc. | Data whitening for writing and reading data to and from a non-volatile memory |
US8055816B2 (en) * | 2009-04-09 | 2011-11-08 | Micron Technology, Inc. | Memory controllers, memory systems, solid state drives and methods for processing a number of commands |
JP2010267135A (ja) * | 2009-05-15 | 2010-11-25 | Toshiba Corp | メモリコントローラ |
TWI496161B (zh) * | 2010-08-06 | 2015-08-11 | Phison Electronics Corp | 記憶體識別碼產生方法、管理方法、控制器與儲存系統 |
JP5017439B2 (ja) * | 2010-09-22 | 2012-09-05 | 株式会社東芝 | 暗号演算装置及びメモリシステム |
US20120131635A1 (en) * | 2010-11-23 | 2012-05-24 | Afore Solutions Inc. | Method and system for securing data |
US20120221767A1 (en) | 2011-02-28 | 2012-08-30 | Apple Inc. | Efficient buffering for a system having non-volatile memory |
KR101303278B1 (ko) * | 2011-12-14 | 2013-09-04 | 한국전자통신연구원 | 비트스트림 보호를 위한 fpga 장치 및 그 방법 |
US9256551B2 (en) | 2013-08-09 | 2016-02-09 | Apple Inc. | Embedded encryption/secure memory management unit for peripheral interface controller |
US9866548B2 (en) * | 2014-12-17 | 2018-01-09 | Quanta Computer Inc. | Authentication-free configuration for service controllers |
US11126565B2 (en) | 2016-06-27 | 2021-09-21 | Hewlett Packard Enterprise Development Lp | Encrypted memory access using page table attributes |
TWI615732B (zh) * | 2016-12-27 | 2018-02-21 | 瑞昱半導體股份有限公司 | 電子裝置之電子元件、啟動電子裝置的方法及加密方法 |
TWI652683B (zh) * | 2017-10-13 | 2019-03-01 | 力旺電子股份有限公司 | 用於記憶體的電壓驅動器 |
US11030346B2 (en) | 2018-07-13 | 2021-06-08 | Ememory Technology Inc. | Integrated circuit and data processing method for enhancing security of the integrated circuit |
CN112231716A (zh) * | 2019-07-15 | 2021-01-15 | 珠海艾派克微电子有限公司 | 数据的防盗装置和防盗方法 |
CN113168475A (zh) * | 2019-08-29 | 2021-07-23 | 谷歌有限责任公司 | 保护集成于片上系统上的安全元件的外部数据存储的安全 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2264373B (en) * | 1992-02-05 | 1995-12-20 | Eurologic Research Limited | Data encryption apparatus and method |
TW529267B (en) * | 1999-03-15 | 2003-04-21 | Sony Corp | Data processing system and method for mutual identification between apparatuses |
US6968061B2 (en) * | 2000-02-17 | 2005-11-22 | The United States Of America As Represented By The Secretary Of The Navy | Method which uses a non-volatile memory to store a crypto key and a check word for an encryption device |
US7080039B1 (en) * | 2000-03-23 | 2006-07-18 | David J Marsh | Associating content with households using smart cards |
US6980659B1 (en) * | 2000-06-02 | 2005-12-27 | Brig Barnum Elliott | Methods and systems for supplying encryption keys |
US6961852B2 (en) * | 2003-06-19 | 2005-11-01 | International Business Machines Corporation | System and method for authenticating software using hidden intermediate keys |
US20050086471A1 (en) * | 2003-10-20 | 2005-04-21 | Spencer Andrew M. | Removable information storage device that includes a master encryption key and encryption keys |
WO2006071725A2 (en) * | 2004-12-21 | 2006-07-06 | Sandisk Corporation | Memory system with in-stream data encryption/decryption |
US20060195704A1 (en) * | 2005-01-27 | 2006-08-31 | Hewlett-Packard Development Company, L.P. | Disk array encryption element |
JP2006252449A (ja) * | 2005-03-14 | 2006-09-21 | Toshiba Corp | 不揮発性メモリモジュールおよび不揮発性メモリシステム |
-
2006
- 2006-11-08 US US11/598,173 patent/US20080107275A1/en not_active Abandoned
-
2007
- 2007-11-06 CN CNA2007800415313A patent/CN101536007A/zh active Pending
- 2007-11-06 EP EP07873596A patent/EP2080145A2/en not_active Withdrawn
- 2007-11-06 JP JP2009535501A patent/JP2010509662A/ja not_active Withdrawn
- 2007-11-06 WO PCT/US2007/083763 patent/WO2008127408A2/en active Application Filing
- 2007-11-06 KR KR1020097011723A patent/KR20090080115A/ko not_active Application Discontinuation
- 2007-11-08 TW TW096142267A patent/TW200833056A/zh unknown
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103415855B (zh) * | 2010-06-16 | 2017-08-08 | 威斯科数据安全国际有限公司 | 大容量存储设备存储器加密方法、系统及装置 |
US9910996B2 (en) | 2010-06-16 | 2018-03-06 | Vasco Data Security, Inc. | Mass storage device memory encryption methods, systems, and apparatus |
CN103415855A (zh) * | 2010-06-16 | 2013-11-27 | 威斯科数据安全国际有限公司 | 大容量存储设备存储器加密方法、系统及装置 |
CN105580027B (zh) * | 2013-09-30 | 2019-03-29 | 高通股份有限公司 | 用于使用不同域特定密钥确保内容安全的方法 |
CN105580027A (zh) * | 2013-09-30 | 2016-05-11 | 高通股份有限公司 | 用于使用不同域特定密钥确保内容安全的方法 |
CN107430670A (zh) * | 2015-03-26 | 2017-12-01 | 英特尔公司 | 用于存储器保护的柔性计数器系统 |
CN107430670B (zh) * | 2015-03-26 | 2021-10-29 | 英特尔公司 | 用于存储器保护的柔性计数器系统 |
US10650169B2 (en) | 2015-09-14 | 2020-05-12 | Hewlett Packard Enterprise Development Lp | Secure memory systems |
CN107533623A (zh) * | 2015-09-14 | 2018-01-02 | 慧与发展有限责任合伙企业 | 安全存储器系统 |
CN110431557A (zh) * | 2017-01-09 | 2019-11-08 | 交互数字Ce专利控股公司 | 用于执行安全备份和恢复的方法和装置 |
CN110431557B (zh) * | 2017-01-09 | 2023-09-26 | 交互数字麦迪逊专利控股公司 | 用于执行安全备份和恢复的方法和装置 |
CN109391467A (zh) * | 2017-08-10 | 2019-02-26 | 北京兆易创新科技股份有限公司 | 非易失性存储器的加密方法及装置、解密方法及装置 |
CN112703703A (zh) * | 2018-07-17 | 2021-04-23 | J·B·坎特 | 用于存储敏感信息和其它数据的闪存设备 |
CN112703703B (zh) * | 2018-07-17 | 2024-04-12 | J·B·坎特 | 用于存储敏感信息和其它数据的闪存设备 |
Also Published As
Publication number | Publication date |
---|---|
KR20090080115A (ko) | 2009-07-23 |
EP2080145A2 (en) | 2009-07-22 |
JP2010509662A (ja) | 2010-03-25 |
TW200833056A (en) | 2008-08-01 |
WO2008127408A3 (en) | 2009-01-08 |
US20080107275A1 (en) | 2008-05-08 |
WO2008127408A2 (en) | 2008-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101536007A (zh) | 用于对外部非易失性存储器中所存储信息进行加密的方法及系统 | |
KR100692425B1 (ko) | 대량 저장 장치의 암호화/복호화를 위한 방법 및 장치 | |
CN1269071C (zh) | 存储卡 | |
US7058818B2 (en) | Integrated circuit for digital rights management | |
US7636844B2 (en) | Method and system to provide a trusted channel within a computer system for a SIM device | |
US20100185843A1 (en) | Hardware encrypting storage device with physically separable key storage device | |
CN103415855A (zh) | 大容量存储设备存储器加密方法、系统及装置 | |
US20060075259A1 (en) | Method and system to generate a session key for a trusted channel within a computer system | |
CN101506815A (zh) | 用于安全系统的双处理器结构 | |
CN101268650A (zh) | 在微控制器中用于数据安全性处理的方法和装置 | |
CN102023935A (zh) | 具有密钥的数据存储设备及其方法 | |
WO2010052722A1 (en) | Secure storage device | |
US20120284534A1 (en) | Memory Device and Method for Accessing the Same | |
CN102947836A (zh) | 存储设备、主机设备和使用双重加密方案在第一和第二存储设备之间传递密码的方法 | |
US8745412B2 (en) | Semiconductor memory device and method for realizing secure data storage | |
JP4787273B2 (ja) | ライフサイクルフェーズを有するセキュアメモリカード | |
CN104854598B (zh) | 嵌入在线缆中的有源组件 | |
KR101156102B1 (ko) | 보안기능이 구비된 메모리 카드 리더기 및 이를 이용한 데이터 암호화 방법 | |
US8095805B2 (en) | Security flash memory, data encryption device and method for accessing security flash memory | |
JP2009525556A (ja) | 外部のコード・イメージをチップ上のプライベート・キーに一致させるための方法および装置 | |
CN110781472A (zh) | 指纹数据的存储和校验方法、终端及存储介质 | |
CN102955916B (zh) | 保护数字内容的方法与储存装置 | |
JP2003281476A (ja) | Cpu付きicカードの通信システム、cpu付きicカード、管理センター及び読書装置 | |
TW201717097A (zh) | 資料加密系統 | |
CN111008831A (zh) | 用于点对点加密合规性的系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090916 |