CN105607865A - 安全数据储存装置、系统及其数据写入与读取方法 - Google Patents

安全数据储存装置、系统及其数据写入与读取方法 Download PDF

Info

Publication number
CN105607865A
CN105607865A CN201510753816.6A CN201510753816A CN105607865A CN 105607865 A CN105607865 A CN 105607865A CN 201510753816 A CN201510753816 A CN 201510753816A CN 105607865 A CN105607865 A CN 105607865A
Authority
CN
China
Prior art keywords
mentioned
data storage
storage device
address
secure data
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.)
Granted
Application number
CN201510753816.6A
Other languages
English (en)
Other versions
CN105607865B (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.)
Winbond Electronics Corp
Original Assignee
Winbond Electronics Corp
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 Winbond Electronics Corp filed Critical Winbond Electronics Corp
Publication of CN105607865A publication Critical patent/CN105607865A/zh
Application granted granted Critical
Publication of CN105607865B publication Critical patent/CN105607865B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • G06F12/1475Key-lock mechanism in a virtual system, e.g. with translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种安全数据储存装置、系统及其数据写入与读取方法。上述安全数据储存装置包括储存数据的二维存储器阵列、金钥储存区域、地址转换单元与位混和单元。存储器阵列包括预定数目的数据字符。金钥储存区域储存金钥。地址转换单元根据转换函数、金钥和逻辑地址,将逻辑地址转换为实体地址。位混和单元混和输入数据字符的位值以取得混和数据字符。混和数据字符是输入数据字符的位值的重新排列结果。位混和单元根据一对一映射函数、金钥和输入数据字符的逻辑地址进行混和。安全数据储存装置可电连接至主机,以接收读取指令或写入指令。通过实施本发明,可改善其数据的安全性和完整性,以及防止储存在装置的数据遭受窜改。

Description

安全数据储存装置、系统及其数据写入与读取方法
技术领域
本发明主要是有关于一安全数据储存装置及其方法,特别是有关于允许读取和写入操作的一安全数据储存装置、系统及其数据写入与读取方法。
背景技术
非挥发性(non-volatile)存储器或非挥发性储存装置为即使在未被提供电源时,仍保留储存信息的电脑存储器。举例来说,非挥发性存储器包括:只读存储器(Read-onlymemory,ROM)、快闪存储器(flashmemory)、铁电随机存取存储器(FerroelectricRandomAccessMemory,F-RAM),以及不同类性的磁性电脑储存装置,例如:硬盘、软盘、磁带(magnetictape)以及光盘(opticaldiscs)。非挥发性存储器在传统上是使用在长期且持续的储存。
快闪存储器装置是电子非挥发性电脑储存媒体,其允许存取或读取储存的数据、写入新的数据以及抹除储存的数据。在近年来,由于大的存储器空间以及快速的重写速度的压倒性的优势,快闪存储器在非挥发性存储器市场中扮演了一个重要的角色。快闪存储器被使用在许多不同应用中,举例来说,在通用串列汇流排(UniversalSerialBus,USB)中,应用于个人信息的储存,或嵌入一信用卡中或礼物卡中,以进行金融支付或业务。
快闪存储器技术允许在储存装置中写入“0”至任何实体位地址,以及当要抹除包含多位的区块时,将这些值设定为“1”。储存的数据在各种装置使用的情况间,可维持完整性。然而,窜改这类装置所储存的数据可能相对地简单,举例来说,通过紫外光或X光照射装置的储存部分。对于一些快闪存储器的应用上,例如:金融业务,储存在安全储存装置的数据不被轻易地窜改是非常重要的事。这样的窜改将会修改储存的数据,而使得诈骗容易进行,举例来说,若一预付礼物卡已遭受窜改,可能会使得在快闪存储器装置上会一直显示礼物卡还有余额,然而,事实上礼物卡的余额已经归零。
因此,提供例如基于快闪存储器的有效率的数据储存与重写的安全储存装置,并改善其数据的安全性和完整性,以及防止储存在装置的数据遭受窜改,将会是一更理想的情况。
发明内容
有鉴于上述先前技术的问题,本发明提供了一种安全数据储存装置、系统及其数据写入与读取方法,可防止所储存的数据遭受窜改。
根据本发明的一实施例提供了用以防止储存的数据遭受窜改的一安全数据储存装置。上述安全数据储存装置包括用以储存数据的一二维存储器阵列、金钥储存区域、地址转换单元与位混和单元。存储器阵列可为一快闪存储器,其中上述二维存储器阵列包括一预定义数目的数据字符。每一上述数据字符包括一位集合,且每一上述数据字符分别对应到上述二维存储器阵列的一单一实体地址。
上述安全数据储存装置的金钥储存区域用以储存上述安全数据储存装置的一金钥。在一些实施例中,上述金钥储存区域是上述二维存储器阵列的一部分,但在另一些实施例中,上述金钥储存区域是从上述二维存储器阵列所分隔出来的一储存区域。储存在上述金钥储存区域的金钥是一唯一金钥,例如:为了特定安全数据储存装置所制订的金钥。
上述安全数据储存装置更包括一地址转换单元。上述地址转换单元用以转换一逻辑地址至用以指示上述二维存储器阵列的一位置的一对应的实体地址。上述地址转换单元是根据一转换函数、储存在上述金钥储存区域的至少一部分的上述金钥以及上述逻辑地址来进行转换。在一些实施例中,上述地址转换单元根据上述金钥的一第一部分将上述逻辑地址转换为上述实体地址。
上述安全数据储存装置更包括一位混和单元。上述位混和单元用以混和一输入数据字符的位值以取得一混和字符值。上述混和字符值是上述输入数据字符的上述多个位值的一重新排列结果,上述位混和单元是根据一一对一映射函数、至少一部分的上述金钥以及上述输入数据字符的上述逻辑地址来进行混和。上述安全数据储存装置可电连接至一主机,以接收上述逻辑地址、一读取指令或一写入指令。在一些实施例中,上述位混和单元根据上述金钥的一第二部分混和上述多个位值。
在一些实施例中,上述位混和单元包括多个多工器。每一上述多工器具有一预定义数量的输入线以及输出线,决定哪一输入线对应到哪一输出线。每一上述多工器可根据基于储存在上述金钥储存区域的上述金钥(例如:一唯一金钥)所产生的控制参数,决定哪一输入线对应到哪一输出线。上述控制参数更是根据上述逻辑地址或上述对应的实体地址所产生。
上述安全数据储存装置会电连接至一主机或一控制单元。在一些实施例中,安全数据储存装置和主机为一单一实体。
根据本发明的一些实施例提供了一写入数据至一安全数据储存装置的方法。上述安全数据储存装置包括一存储器阵列以及一金钥,且上述安全数据储存装置电连接至一主机。上述方法包括,从电连接至上述安全数据储存装置的一主机接收一写入指令,上述写入指令包括一数据字符的一逻辑地址以及一输入数据字符;以及根据上述逻辑地址以及根据至少一部分的上述金钥,转换上述逻辑地址至上述存储器阵列的一对应的实体地址。上述转换的操作是根据一预定义转换函数来执行。上述方法更包括,根据上述逻辑地址以及根据至少一部分的上述金钥,计算一混和字符值。上述计算的操作更包括重新排列上述输入数据字符的多个位值。上述方法更包括,写入上述混和字符值至上述存储器阵列中对应上述实体地址的一位置。
在一些实施例中,计算上述混和数据字符是通过多个多工器来执行,每一上述多工器具有一预定义数量的输入线以及输出线,其中上述方法更包括:根据储存在上述安全数据储存装置的一金钥储存区域的上述金钥所产生的控制参数,决定哪一输入线对应到哪一输出线。
在一些实施例中,根据上述逻辑地址或上述对应的实体地址计算上述控制参数。
在一些实施例中,上述方法更包括:在每一特定数据储存装置储存所制订的一唯一金钥。
根据本发明的一些实施例提供了一从一安全数据储存装置读取数据的方法。上述安全数据储存装置包括一存储器阵列以及一金钥,且上述安全数据储存装置电连接至一主机。上述方法包括:从电连接至上述安全数据储存装置的一主机接收一读取指令,上述读取指令包括一数据字符的一逻辑地址;以及根据上述逻辑地址以及根据至少一部分的上述金钥,转换上述逻辑地址至上述存储器阵列的一对应的实体地址。上述转换的操作是根据一预定义转换函数来执行。上述方法更包括,从上述存储器阵列中对应上述实体地址的一位置读取一混和字符值;以及根据上述逻辑地址以及根据至少一部分的上述金钥,产生一输出字符值。上述产生的操作更包括,重新排列上述混和字符值的多个位值,以取得还原的数据字符值。上述方法更包括,提供上述输出字符值至上述主机。
根据本发明的一实施例提供了一数据储存系统。上述数据储存系统包括一安全数据储存装置以及一主机,且上述安全数据储存装置电连接至上述主机,以自上述主机接收一逻辑地址与一指令。上述主机传送一输入数据字符的上述逻辑地址与上述指令,其中上述指令是选自一读取指令、一写入指令或一抹除指令;上述安全数据储存装置包括:一二维存储器阵列,用以储存数据,其中上述二维存储器阵列包括一预定义数目的数据字符,每一上述数据字符包括一位集合,每一上述数据字符分别对应到上述二维存储器阵列的一单一实体地址;一金钥储存区域,用以储存上述安全数据储存装置的一金钥;一地址转换单元,用以转换上述逻辑地址至用以指示上述二维存储器阵列的一位置的一对应的实体地址,其中上述地址转换单元是根据一转换函数、储存在上述金钥储存区域的至少一部分的上述金钥以及上述逻辑地址来进行转换;以及一位混和单元,用以混和一输入数据字符的位值以取得一混和字符数据,其中上述混和字符数据是上述输入数据字符的上述位值的一重新排列,上述位混和单元是根据一一对一映射函数、至少一部分的上述金钥以及上述输入数据字符的上述逻辑地址来进行混和。在一些实施例中,上述数据储存系统更包括多个上述安全数据储存装置与多个上述金钥,其中各金钥为了每一特定安全数据储存装置所制订的一唯一金钥。
通过实施本发明,可改善其数据的安全性和完整性,以及防止储存在装置的数据遭受窜改。
关于本发明其他附加的特征与优点,此领域的熟习技术人士,在不脱离本发明的精神和范围内,当可根据本案实施方法中所揭露的执行联系程序的使用者装置、系统以及方法,做些许的更动与润饰而得到。
附图说明
图1A是显示根据本发明的实施例所述的一二维存储器阵列的逻辑地址映射至一二维阵列的实体地址的示意图。
图1B是显示根据本发明的实施例所述的安全数据储存系统150的示意图。
图2是显示根据本发明的实施例所述的安全数据储存装置120的位混和单元127的示意图。
图3A是根据本发明一实施例所述关于一安全数据储存装置产生以及储存一金钥的方法的流程图。
图3B是根据本发明一实施例所述关于从一安全数据储存装置读取数据的方法的流程图。
图3C是根据本发明一实施例所述关于写入数据至一安全数据储存装置的方法的流程图。
附图标号
20逻辑表示图
21实体表示图
100主机
101控制单元
120安全数据储存装置
121金钥储存区域
123地址转换单元
125二维存储器阵列
127位混和单元
128混和控制单元
130、133、137接口
135地址接口
150安全数据储存系统
200、210、220控制参数
201、201、203、209、211、212、213、219、221、222、223、229多工器
240、241、249输入位值
270、271、279混和位值
300、302、330、332、334、336、338、350、352、354、356步骤
具体实施方式
本章节所叙述的是实施本发明的最佳方式,目的在于说明本发明的精神而非用以限定本发明的保护范围。任何熟习此技艺者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的保护范围当视申请专利范围所界定者为准。
除非另外声明,如同从以下讨论而明白的,应了解在整个说明书的讨论中使用例如:“处理”、“计算”、“储存”、“决定”等,是指电脑或计算机系统,或类似的电子计算装置的动作及/或处理,其将计算机系统的暂存器及/或存储器中以物理量呈现的数据,操纵及/或转换为在计算系统的存储器、暂存器或其他此种信息储存、传送或显示装置中以类似的物理量呈现的其他数据。
本发明的实施例可以包括用于在此实施操作的装置,此类装置可为所想要的目的而特别被建构出,或可包括由储存其中的运算程序选择地启动或重新配置的电脑或处理器。此种程序可以储存在储存媒体上,例如但不限制于任何形式的磁盘包括:软磁盘、光学磁盘、光盘只读存储器(CD-ROM)、磁光磁盘、只读存储器(ROM)、随机存取存储器(RAM)、电性可程序只读存储器(EPROMS)、电性可拭除且可程序只读存储器(EEPROM)、磁性或光学卡、或任何其他型式适用于储存电子指令的媒体,且能够连接至计算机的系统汇流排。应了解各种的编程语言可被用以实施本发明以下的教导。
本发明的实施方式可以包括用以编码、包括或储存指令的物件,例如一电脑或处理器可读媒体或一电脑或处理器储存媒体(例如存储器、硬盘或快闪存储器)。上述指令例如电脑可执行指令,当此物件被处理器或控制器执行时,将使得处理器或控制器可实现本发明所揭露的方法。
非挥发性存储器装置(例如快闪存储器)的特性是,写入一特定的位值(例如:0)会比写入其它位值(例如:1)至存储器装置还要简单。举例来说:快闪存储器会使能一单一有效率的写入方向,例如:在储存装置中,有效率地写入位值“0”(零)至任何实体地址。然而,在存储器装置中写入位值“1”将会比写入位值“0”没有效率,且需要复制写入于包含需要变换的位的一存储器区块的数据以及多个额外的位,且需要抹除或重设定存储器装置中的整个区块,此外更需要将对应未曾被更改的位的原始数据,以及对应已从“0”更改至“1”的一位或多位的新数据,重新写入被抹除的区块。因此,快闪存储器或储存装置会具有一有效率写入方向以及一低效率或无效率写入方向的特性。在另一范例中,某些具有单一有效率的写入方向的存储器装置写入位值“1”会比写入位值“0”执行起来更有效率。
在需要执行多个写入操作的应用中,更改数据使得数据大部分或仅在有效率(例如:数据位值传统上会从“1”更改至“0”,很少或从不从“0”更改至“1”)的单一方向进行写入,将有利于维持快闪存储器只在有效率的方向写入数据的特性。此外,这样的作法亦会加速交易,且防止需要更大存储器单元的需求。
然而,为了防止储存在装置的数据发生诈骗以及窜改,维护储存在装置的数据的安全性是必要的。不同的加密方法在此领域中已被提出。举例来说,RSA演算法是一种公开金钥(public-key)加密方法,在RSA演算法中包含了一公开加密金钥以及一私密解密金钥。进阶加密标准(AdvancedEncryptionStandard,AES)是使用对称金钥演算法来加密电子数据的规格,此对称金钥演算法是由美国国家标准与技术研究院(U.S.NationalInstituteofStandardsandTechnology(NIST))于2001年,以及根据Rijndael加密法(Rijndaelcipher)所建立。上述以及其它未提到的加密方法,会变换储存在存储器的数据值,且当数据被读取时,被加密的数据必须解码回明文(plaintext)的内容。因此,原先包含一特定数量的“0”位值以及“1”位值的一存储器区块在加密后会被改变为包括一不同数量的需储存在存储器的“0”位值以及“1”位值。如同上述的内容,在一方向(例如:从1至0)数据频繁的变换较有效率,但在另一方向(例如:从0至1)数据的变换相对地比较没有效率、繁杂且需要更多时间来执行单向交易。
本发明所要处理的技术问题是关于输入数据值和加密数据值之间的差异。在本发明内文所使用的一“数据字符(dataword)”,是指处理器或电脑所使用的数据的一基本单位的名称。一数据字符是表示,指令集或处理器硬件在处理数据时,视为单一单元的一固定大小的一组位或数字(例如:二进制的数字(binary)或十进制的数字(decimal))。一数据字符的位或数字的数量视为此数据字符的大小或长度。数据字符的大小会反映在许多电脑架构或操作的情况。举例来说,一处理器大部分的暂存器通常是以字符为单位,且在许多(不是全部)架构中,在一单向作业时,数据可在工作的存储器被来回转换的最大长度通常为一字符。处理器在一般情况具有的数据字符大小为8、16、24、32或64位(bits)。在一些实施例中,处理器或储存装置可使用超过一字符大小为单位。
在本发明内文所使用的一“字符值(wordvalue)”,是指储存在一存储器单元的一特定数据单位或一预定长度的数据字符的一实际数字值。在本发明内文所使用的一“位值(bitvalue)”,是指储存在存储器单元的一特定位的一实际二进位值。当加密数据时(例如:使用上述加密方法的一者加密数据),每一数据字符的加密数据值在一般来说会和输入(明文或非加密)数据字符值有很大的不同。举例来说,以二进制数据为例,若我们计算接收以作为加密运算的输入的一数据字符,以及经过加密运算后输出的加密数据字符中所包含的“0”值和“1”值的数量,将会发现两者的数值会非常不同。即使输入数据值的变化很小,在加密数据值的变化会非常大,且当写入加密数据值至一储存单元时,将会比写入明文数据值时,需要重新写入或转换更多位值。为了可以利用快闪存储器的特性,提供可以保护储存数据的安全,且不用转换该数据的位值的方法将是必要的。
本发明揭露一种混和输入数据值且不用转换位值的方法。举例来说,一输入字符值“1110”可混和(mix)成“1011”、“1101”、“1110”或“0111”。
本发明所揭露的装置和方法的目的,是为了能够安全地写入数据至具有单一有效率写入方向的一储存装置。
安全写入是通过混和输入数据,而不变换数据位值,特别是不需要在无效率的写入方向写入数值至储存装置的方式来执行。本发明所揭露的装置和方法允许在有效率的方向写入额外数据至储存装置。举例来说,只要在储存装置中仍有未变换的数据位值(例如:在有效率方向中还未被覆写(over-written)),即允许在有效率的方向写入额外数据至储存装置。对于有效率地写入方向为从“1”至“0”的方向的例子中,只要不是全部的位值都等于“0”的情况下,举例来说,对于初始仅储存包含位值“1”的数据的一安全数据储存装置,可允许在此有效率地写入方向变换每一储存的数据字符。在另一范例中,对于有效率写入方向为从“0”至“1”的方向且初始仅储存包含位值“0”的数据的一安全数据储存装置,只要不是全部的位值都等于“1”的情况下,会允许在上述有效率的写入方向上变换每一储存的数据字符。
本发明一些实施例包括一安全非挥发性数据储存单元,其以一安全方式储存原始数据(例如:非加密数据值)。于第一阶段中,通过一地址转换单元执行数据地址变换,以消除在安全数据储存装置中的一逻辑地址和一数据字符的实际实体地址间的一相关性。于第二阶段中,通过一位混合单元执行数据混和,以扰乱(scramble)且不改变一特定数据单元中的多个位值。
根据本发明一些实施例,一数据储存单元可包括,例如:一二维存储器阵列(例如:通过列和行所呈现的列表)。此阵列包含一既定数目的多个列(或数据字符)。在阵列中的每一字符具有一预定大小(或位数目),例如:8位、32位、64位或128位,且字符的大小等于在二维阵列中行的个数。根据本发明一些实施例,阵列可包含超过一种字符大小,例如:阵列的一部分具有一第一字符大小,而阵列的另一部分则具有一第二字符大小。每一字符和存储器阵列的一单一实体位置(被称为实体地址)相关联。一字符的实体地址是表示储存在存储器阵列的数据字符的实际(实体)位置。当读取储存在装置的数据或写入数据至一指定的逻辑地址时,字符的实体地址是被存储器单元硬件存取的位置。数据字符包括一位集合,例如:一固定数量的位,且在一数据字符中的每一数据位会对应到在数据字符的实体地址中的一实体位位置。
在一存储器单元中的一指定的实体地址储存了一字符值,其中此字符值是实际的二位值或数值。
图1A是显示根据本发明的实施例所述的一二维存储器阵列的逻辑地址映射至一二维存储器阵列的实体地址的示意图。一存储器阵列MEM可被定义成一4列(字符)的表格,每一字符的长度为10位(bits)。在存储器阵列MEM中的第一字符的一逻辑地址可被标示为L_MEM[0],且在第一字符中的第二位的逻辑位位置可被标示为L_MEM[0,1]。存储器阵列MEM的逻辑表示图(logicalrepresentation,L_MEM)20示出了三个逻辑位位置所对应的位值:L_MEM[0,1]=x;L_MEM[0,2]=y;以及L_MEM[0,3]=z。
在L_MEM逻辑表示图20中,每一字符(或列)会被映射到在实体表示图(physicalrepresentation,P_MEM)21中不同的列。举例来说,在逻辑表示图20中的第一列(标示为L_MEM[0])会被映射到实体表示图21中的第三列(标示为P_MEM[2])。在逻辑表示图20中的第二列(标示为L_MEM[1])会被映射到实体表示图21中的第一列(标示为P_MEM[0])。
此外,逻辑表示图20的一列中的每一位会映射至在实体表示图21中不同的位位置。举例来说,具有位值x且位于逻辑表示图20的L_MEM[0,1]的位会被映射至实体表示图21中P_MEM[2,9]的位置。具有位值y且位于逻辑表示图20的L_MEM[0,2]的位会被映射至实体表示图21中P_MEM[2,6]的位置。因此,在实体表示图21的这些字符(列)会被混和,且在各字符中的位值亦同样地会被混和,但在每一字符内以及在整个存储器单元内的数据值仍维持不变。
图1B是显示根据本发明的实施例所述的安全数据储存系统150的示意图。如图1B所示,安全数据储存系统150包含一安全数据储存装置120。安全数据储存装置120包含二维存储器阵列125,例如配置为一二维结构的一快闪存储器阵列,或其他非挥发性存储器阵列。在二维存储器阵列125中的每一字符(或列)对应到一实体地址,且其字符值是储存在所对应的实体地址。每一字符包括一位集合,例如:一固定数量的位。在一些实施例中,每一位及/或字符可通过一主机100或一外部控制单元个别地被存取(例如:为了读取或写入)。
安全数据储存装置120可包括一金钥储存区域121,其为专用以储存一金钥的预定义储存区域。此金钥可为或可包括一字串,例如:文数字字符(alphanumericcharacter)、二进位字符、数字等。在一实施例中,金钥的长度可为128位。根据本发明一些实施例,此金钥或其部分可用以作为混和和保护储存的数据的一个或多个金钥。金钥储存区域121可为安全数据储存装置120中的独立储存区域,且/或在二维存储器阵列125中的一预定义的固定地址。
安全数据储存装置120包括一地址转换单元123。地址转换单元123从主机100接收一逻辑地址,以及转换此逻辑地址至用以指示在二维存储器阵列125中的一位置的一对应的实体地址。在本发明的实施例中,一逻辑地址是指对应于二维存储器阵列125中一字符(或列,或数据单元)的一单一实体地址的一存储器地址。地址转换单元123会根据例如指定逻辑地址、储存在金钥储存区域121的至少一部分金钥,以及一预定义的转换函数,将逻辑地址转换成对应的实体地址。任何已知的加密/解密演算法或方法(或演算法或方法的结合)都可应用在执行转换函数上,举例来说:互斥或运算(XOR)(根据互斥析取操作来进行操作)、线性回馈移位暂存器(LinearFeedbackShiftRegister,LFSR)、进阶加密标准(AdvancedEncryptionStandard,AES)、数据加密标准(DataEncryptionStandard,DES)、安全杂凑演算法(SecureHashAlgorithm,SHA)以及/或RSA加密演算法。亦可采用其他混和、转换、映射或加密的方法,以取得和对应的逻辑地址不具相关性的一实体地址。通过地址转换单元123计算出的实体地址会经由接口133传送至二维存储器阵列125,以协助在二维存储器阵列125中读取、写入以及抹除的操作。
安全数据储存装置120包括一位混和单元127。位混和单元127用以混和一输入数据字符的位值以取得一混和字符值。混和字符值会储存在二维存储器阵列125中通过地址转换单元123转换一逻辑地址所取得的实体地址中。位混和操作是根据混和控制单元128所提供的控制参数来执行,其中混和控制单元128可根据储存在金钥储存区域121的至少一部分金钥,以及输入数据的逻辑地址来提供控制参数。位混和单元127不会改变在一数据字符的位值,而是混合或重新排列数据字符中的位值。因此,混和数据字符所包含的位值“0”的总数目和位值“1”的总数目分别会和输入数据字符(在明文中)所包含的位值“0””的总数目和位值“1”的总数目相等。混和字符值会通过接口137从位混和单元127储存至二维存储器阵列125,以及当一主机装置(例如:主机100)执行一“读取”指令时,从二维存储器阵列125传送至位混和单元127。当主机100执行一“读取”指令时,混和数据字符会通过位混和单元127还原,以取得原始的或明文的字符数据。然后明文字符数据会经由接口130传送至主机100。类似地,当主机100执行一“写入”指令以写入输入数据字符时,输入字符值会经由接口130传送至位混和单元127进行混和,混和字符值会通过接口137储存至二维存储器阵列125。主机100亦会执行一“抹除”指令,以抹除或重新设定在安全数据储存装置120中的一存储器区域。“清除”指令可包括一逻辑地址以及所要清除的区域大小。
于一实施例中,地址转换单元123根据金钥的一第一部分将逻辑地址转换为实体地址,且位混和单元127根据金钥的一第二部分混和一输入数据字符的那些位值。
安全数据储存系统150包括安全数据储存装置120以及可电连接的主机100。根据本发明一些实施例,主机100可为一外部处理器或一外部电脑,且操作性地电连接至安全数据储存装置120。根据本发明另一些实施例,主机100可整合或包含于安全数据储存装置120中,例如主机100和安全数据储存装置120可配置在单一个实体单元中。地址接口135连接在主机100和安全数据储存装置120之间,用以使得一逻辑地址可被安全数据储存装置120接收,例如逻辑地址可经由地址接口135传送至安全数据储存装置120的地址转换单元123。
图2是显示根据本发明的实施例所述的安全数据储存装置120的位混和单元127的示意图。如图2所示,位混和单元127用以接收N个输入位值(数据[0]、数据[1]~数据[n-1])240~249,以及输出N个混和数据值(混和数据[0]、混和数据[1]~混和数据[n-1])270~279,其中N为一大于1的常数,且N个混和数据值270~279是由N个输入位值240~249重新置换位置或重新排列所产生。
位混和单元127可实施一对一映射函数。详细来说,位混和单元127可接收输入的控制参数和输入字符值,且通过搅乱、重新排列或混和输入字符值,以产生和输入数据字符大小相同,且具有和输入数据字符相同的位值的输出数据字符。输入数据字符的每一输入位值会经由位混和单元127的单一输出线而被输出。
位混和单元127亦可根据此领域的已知的方式进行混和或重新排列数据值。根据本发明一些实施例,位混和单元127可包括多个多工器(multiplexer)或杂凑单元(hashunit)201-209、211-219以及221-229。于一实施例中,每一多工器可包括一固定数量的输入线,以及和输入线相同数目的输出线。每一线路可传输一单一位值。每一多工器会决定哪一个输入线会对应到哪一输出线。举例来说,一多工器可接收两位值的输入,且以一混和的方式或不改变输入的位值的方式,来输出这两位值。每一多工器根据提供至位混和单元127的控制参数来混合输入位。
位混和单元127会从连接至金钥储存区域121和地址接口135的混和控制单元128接收一个或多个控制参数CTRL1、CTRL2、CTRL3(例如:控制参数200、210和220)。混和控制单元128是根据储存在金钥储存区域121的金钥以及输入数据字符的逻辑地址,计算出控制参数。多个多工器可使用相同的控制参数。举例来说,各多工器201-209接收控制参数200,各多工器211-219接收控制参数210,以及类似地,各多工器221-229接收控制参数220。不同数目的控制参数可被使用,举例来说,每一多工器可使用不同的控制参数。输入数据值可能置换位置的数目是根据提供至位混和单元127的控制参数的数目来决定。因此,控制参数的数目和混和操作所提供的数据安全的级别相关。
原来在输入数据字符中特定位位置的每一位,会被映射到储存在实体存储器的混和数据字符中的一个新位置。每一字符的数据值以一混和的方式被储存在存储器阵列,其中混和的方式是根据输入逻辑地址以及由金钥推导出的一个或多个控制参数来完成。因此,想窜改储存数据的任何尝试,都需要得知控制参数以及混和操作才能进行,因此窜改储存数据的操作将会变得困难且费时。
根据本发明一些实施例,各安全数据储存装置可接收一唯一或客制的金钥,因此,当尝试窜改具有一不同金钥值的一第二安全数据储存装置时,找到对应一第一安全数据储存装置的控制参数,并无法提供任何帮助。
图3A是根据本发明一实施例所述关于一安全数据储存装置产生以及储存一金钥的方法的流程图。在步骤300会产生一金钥。根据本发明一些实施例,每一安全数据储存装置会分别产生一唯一的金钥。在其他实施例中,多个安全数据储存装置可共用一个相同的金钥。金钥会有一预定义的长度(位的数量),例如:128或256位长度。其他的长度亦可被采用。不同的随机金钥产生器可被采用。
当金钥产生后,在步骤302中,金钥会被储存在安全数据储存装置的金钥储存区域中。一般来说,连接至安全数据储存装置进行操作的一主机装置(例如:在安全数据储存装置的外部的装置,或包括在安全数据储存装置内的装置),会用以取得或产生金钥,然后将金钥储存在金钥储存区域中。
图3B是根据本发明一实施例所述关于从一安全数据储存装置读取数据的方法的流程图。在步骤330中,接收从一主机装置传送一“读取”指令,此“读取”指令包括一逻辑地址,且该一逻辑地址对应储存在一安全数据储存装置的一字符。
在步骤332中,逻辑地址会被转换成在安全数据储存装置的一存储器阵列的一实体地址。举例来说,通过安全数据储存装置内部的一地址转换单元,例如:图1B的地址转换单元123,将逻辑地址转换成存储器阵列的一实体地址。上述转换是根据逻辑地址以及储存在安全数据储存装置的一专用的金钥储存区域(例如:金钥储存区域121)的一金钥(或此金钥的一部分)来进行。逻辑地址到实体地址的转换是根据储存在地址转换单元的一预定义的转换函数(例如已知的加密函数)来执行。转换函数消除了逻辑地址和存储器阵列的实体地址间的相关性。
在步骤334,根据所计算出的实体地址,从存储器阵列取得一混和数据值(即混和字符值)。在步骤336,混和数据值会传送至一位混和/还原(mixing/un-mixing)单元,以在步骤336中产生一输出数据值,此输出数据值是一还原或明文的字符值。位混和/还原的操作是根据输入的逻辑地址,以及从储存在安全数据储存装置的一金钥储存区域的至少一部分金钥所推导出来的一个或多个控制参数,来进行。举例来说,位混和/还原的操作是通过包含在安全数据储存装置的一位混和单元(例如:图1B的位混和单元127)来执行。位混和单元可通过多个多工器来执行操作,多个多工器会接收一固定数量的数据位以及控制参数,以及根据一混和或重新排列的方式,输出具有和输入数据位相同数目的位。
在步骤338中,输出数据值(即输出字符值)经由数据接口提供给产生“读取”指令的主机装置,数据接口是电性地且操作性地连接主机装置至安全数据储存装置。
图3C是根据本发明一实施例所述关于写入数据至一安全数据储存装置的方法的流程图。在步骤350中,从电性地且操作性地连接至安全数据储存装置的主机装置传送一“写入”指令。“写入”指令包括将被储存在安全数据储存装置的一输入字符值以及一逻辑地址。
在步骤352,根据逻辑地址以及储存在安全数据储存装置的金钥储存区域(例如:金钥储存区域121)的一金钥(或此金钥的部分)计算出一实体地址。实体地址是通过一地址转换单元(例如:图1B的地址转换单元123)所计算出来,此地址转换单元储存一预定义的地址转换函数,用以将逻辑地址转换为对应的实体地址。
在步骤354中,通过一位混和单元(例如:图1B的位混和单元127)根据输入字符值、由金钥或部分金钥所推导出来的控制参数,以及作为输入的逻辑地址,产生一混和字符值。在位混和操作会采用一对一函数,以产生输入数据字符的位值经过置换位置或重新排列的结果,但却维持和输入数据字符相同的位值。根据本发明一实施例,位混和单元包括多个多工器。每一多工器接收一固定数量的输入位值,以及产生和输入位值相同且将输入位值经过混和或重新排列的一输出。
在步骤356中,在安全数据储存装置所包含的一二维存储器阵列中,将混和字符值写入实体地址(如步骤352所产生的实体地址)所指示的位置。
为了一目的或其变型,在本文所用的术语“配置”且/或“适应”,是表示设计来用以达成目的所使用的组件的方式且/或机制。
本文所使用的术语除非另有说明不应当理解为对本发明的限制,本文所使用的术语的目的仅是为了描述特定实施例,并非用以限制本发明。虽然本发明的实施方案已经说明和描述,但应该清楚地了解本发明并不限于本文所描述的实施例。许多修改,改变,变化,替换和等同做法都不会被排除在外。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何熟习此技艺者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的保护范围当视申请专利范围所界定者为准。

Claims (16)

1.一种安全数据储存装置,用以防止所储存的数据遭受窜改,其特征在于,上述安全数据储存装置包括:
一二维存储器阵列,用以储存数据,其中上述二维存储器阵列包括一预定义数目的数据字符,每一上述数据字符包括一位集合,每一上述数据字符分别对应到上述二维存储器阵列的一单一实体地址;
一金钥储存区域,用以储存上述安全数据储存装置的一金钥;
一地址转换单元,用以将一逻辑地址转换为用以指示上述二维存储器阵列的一位置的一对应的实体地址,其中上述地址转换单元是根据一转换函数、储存在上述金钥储存区域的至少一部分的上述金钥以及上述逻辑地址来进行转换;以及
一位混和单元,用以混和一输入数据字符的多个位值以取得一混和字符值,其中上述混和字符值是上述输入数据字符的上述多个位值的一重新排列结果,上述位混和单元是根据一一对一映射函数、至少一部分的上述金钥以及上述输入数据字符的上述逻辑地址来进行混和;
其中上述安全数据储存装置电连接至一主机,以接收上述逻辑地址。
2.如权利要求1所述的安全数据储存装置,其特征在于,上述地址转换单元根据上述金钥的一第一部分将上述逻辑地址转换为上述实体地址,以及上述位混和单元根据上述金钥的一第二部分混和上述多个位值。
3.如权利要求1所述的安全数据储存装置,其特征在于,上述金钥储存区域是上述二维存储器阵列的一预定义部分。
4.如权利要求1所述的安全数据储存装置,其特征在于,上述金钥储存区域是从上述二维存储器阵列所分隔出来的一储存区域。
5.如权利要求1所述的安全数据储存装置,其特征在于,上述二维存储器阵列是一快闪存储器阵列。
6.如权利要求1所述的安全数据储存装置,其特征在于,上述位混和单元包括多个多工器,每一上述多工器具有一预定义数量的输入线以及输出线,每一上述多工器根据从储存在上述金钥储存区域的上述金钥取得的控制参数,决定哪一输入线对应到哪一输出线。
7.如权利要求6所述的安全数据储存装置,其特征在于,上述控制参数更是根据上述逻辑地址或上述对应的实体地址所产生。
8.如权利要求1所述的安全数据储存装置,其特征在于,上述金钥是为了每一特定安全数据储存装置所制订的一唯一金钥。
9.如权利要求1所述的安全数据储存装置,其特征在于,上述主机是在上述安全数据储存装置的外部,且上述安全数据储存装置自上述主机接收上述逻辑地址、一读取指令或一写入指令。
10.一种写入数据至一安全数据储存装置的方法,其特征在于,上述安全数据储存装置包括一存储器阵列以及一金钥,且上述安全数据储存装置可电连接至一主机,上述方法包括:
从电连接至上述安全数据储存装置的上述主机接收一写入指令,上述写入指令包括一数据字符的一逻辑地址以及一输入数据字符;
根据上述逻辑地址以及根据至少一部分的上述金钥,转换上述逻辑地址至上述存储器阵列的一对应的实体地址,其中上述转换的操作是根据一预定义转换函数来执行;
根据上述逻辑地址以及根据至少一部分的上述金钥,计算一混和字符值,其中上述计算的操作更包括重新排列上述输入数据字符中的多个位值;以及
写入上述混和字符值至上述存储器阵列中对应上述实体地址的一位置。
11.如权利要求10所述的方法,其特征在于,计算上述混和数据字符是通过多个多工器来执行,每一上述多工器具有一预定义数量的输入线以及输出线,其中上述方法更包括:根据储存在上述安全数据储存装置的一金钥储存区域的上述金钥所产生的控制参数,决定哪一输入线对应到哪一输出线。
12.如权利要求11所述的方法,其特征在于,上述方法根据上述逻辑地址或上述对应的实体地址计算上述控制参数。
13.如权利要求10所述的方法,其特征在于,上述方法更包括:
在每一特定数据储存装置储存所制订的一唯一金钥。
14.一种从一安全数据储存装置读取数据的方法,其特征在于,上述安全数据储存装置包括一存储器阵列以及一金钥,且上述安全数据储存装置可电连接至一主机,上述方法包括:
从电连接至上述安全数据储存装置的上述主机接收一读取指令,上述读取指令包括一数据字符的一逻辑地址;
根据上述逻辑地址以及根据至少一部分的上述金钥,转换上述逻辑地址至上述存储器阵列的一对应的实体地址,其中上述转换的操作是根据一预定义转换函数来执行;
从上述存储器阵列中对应上述实体地址的一位置读取一混和字符值;
根据上述逻辑地址以及根据至少一部分的上述金钥,产生一输出字符值,其中上述产生的操作更包括,重新排列上述混和字符值的多个位值,以取得还原的数据字符值;以及
提供上述输出字符值至上述主机。
15.一种数据储存系统,其特征在于,上述数据储存系统包括:
一主机,上述主机传送一输入数据字符的一逻辑地址与一指令,其中上述指令是选自一读取指令、一写入指令或一抹除指令;以及
至少一安全数据储存装置,上述安全数据储存装置电连接至上述主机以接收上述逻辑地址与上述指令,上述安全数据储存装置包括:
一二维存储器阵列,用以储存数据,其中上述二维存储器阵列包括一预定义数目的数据字符,每一上述数据字符包括一位集合,每一上述数据字符分别对应到上述二维存储器阵列的一单一实体地址;
一金钥储存区域,用以储存上述安全数据储存装置的一金钥;
一地址转换单元,用以转换上述逻辑地址至用以指示上述二维存储器阵列的一位置的一对应的实体地址,其中上述地址转换单元是根据一转换函数、储存在上述金钥储存区域的至少一部分的上述金钥以及上述逻辑地址来进行转换;以及
一位混和单元,用以混和一输入数据字符的位值以取得一混和字符数据,其中上述混和字符数据是上述输入数据字符的上述位值的一重新排列,上述位混和单元是根据一一对一映射函数、至少一部分的上述金钥以及上述输入数据字符的上述逻辑地址来进行混和。
16.如权利要求15所述的数据储存系统,其特征在于,上述数据储存系统更包括多个上述安全数据储存装置与多个上述金钥,其中各金钥是为了每一特定安全数据储存装置所制订的一唯一金钥。
CN201510753816.6A 2014-11-17 2015-11-09 安全数据储存装置、系统及其数据写入与读取方法 Active CN105607865B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IL235729 2014-11-17
IL235729A IL235729A (en) 2014-11-17 2014-11-17 A device and method for securely storing information

Publications (2)

Publication Number Publication Date
CN105607865A true CN105607865A (zh) 2016-05-25
CN105607865B CN105607865B (zh) 2019-04-23

Family

ID=52594880

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510753816.6A Active CN105607865B (zh) 2014-11-17 2015-11-09 安全数据储存装置、系统及其数据写入与读取方法

Country Status (5)

Country Link
US (1) US9626529B2 (zh)
EP (1) EP3021226A1 (zh)
CN (1) CN105607865B (zh)
IL (1) IL235729A (zh)
TW (1) TWI552017B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109979519A (zh) * 2017-12-27 2019-07-05 华邦电子股份有限公司 存储器完整性的检验方法、非易失性存储器以及电子装置

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298647B2 (en) * 2014-08-25 2016-03-29 HGST Netherlands B.V. Method and apparatus to generate zero content over garbage data when encryption parameters are changed
TWI536197B (zh) * 2015-08-28 2016-06-01 匿名性身分識別方法與系統
US10482036B2 (en) * 2016-09-18 2019-11-19 Winbond Electronics Corporation Securely binding between memory chip and host
US10296741B2 (en) * 2017-07-27 2019-05-21 International Business Machines Corporation Secure memory implementation for secure execution of virtual machines
US11036651B2 (en) * 2018-06-29 2021-06-15 Micron Technology, Inc. Host side caching security for flash memory
US11341052B2 (en) * 2018-10-15 2022-05-24 Texas Instruments Incorporated Multi-processor, multi-domain, multi-protocol, cache coherent, speculation aware shared memory and interconnect
US10951403B2 (en) * 2018-12-03 2021-03-16 Winbond Electronics Corporation Updating cryptographic keys stored in non-volatile memory
US11481336B2 (en) 2019-08-19 2022-10-25 Micron Technology, Inc. Host assisted operations in managed memory devices
TWI745784B (zh) * 2019-11-08 2021-11-11 精品科技股份有限公司 磁碟資安系統
US11227046B2 (en) 2019-12-24 2022-01-18 Stmicroelectronics International N.V. Dynamic randomization of password challenge
US11281795B2 (en) * 2019-12-24 2022-03-22 Stmicroelectronics International N.V. Hierarchical random scrambling of secure data storage resulting in randomness across chips and on power on resets of individual chips

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276738A (en) * 1992-12-17 1994-01-04 Bull Hn Information Systems Inc. Software data protection mechanism
US6345359B1 (en) * 1997-11-14 2002-02-05 Raytheon Company In-line decryption for protecting embedded software
US5943283A (en) * 1997-12-05 1999-08-24 Invox Technology Address scrambling in a semiconductor memory
US7003106B2 (en) * 2000-08-04 2006-02-21 Innomedia, Pte, Ltd Efficient method for multiplication over galois fields
US6977927B1 (en) * 2000-09-18 2005-12-20 Hewlett-Packard Development Company, L.P. Method and system of allocating storage resources in a storage area network
US7631025B2 (en) * 2001-10-29 2009-12-08 Intel Corporation Method and apparatus for rearranging data between multiple registers
JP4777651B2 (ja) * 2002-08-23 2011-09-21 イグジット−キューブ,インク. コンピュータシステム及びデータ保存方法
CN1689106A (zh) * 2002-08-29 2005-10-26 皇家飞利浦电子股份有限公司 具有数据存储装置的电子装置
US7873161B2 (en) * 2002-12-13 2011-01-18 Nxp B.V. Small hardware implementation of the subbyte function of rijndael
DE10345385B4 (de) * 2003-09-30 2005-10-06 Infineon Technologies Ag Entschlüsselung bzw. Verschlüsselung bei Schreibzugriffen auf einen Speicher
TWI272816B (en) * 2005-06-06 2007-02-01 Winbond Electronics Corp Apparatus and method for protecting data
US9336160B2 (en) * 2008-10-30 2016-05-10 Qualcomm Incorporated Low latency block cipher
WO2012047200A1 (en) * 2010-10-05 2012-04-12 Hewlett-Packard Development Company, L. P. Scrambling an address and encrypting write data for storing in a storage device
WO2012138969A2 (en) * 2011-04-06 2012-10-11 Tufts University Sudoku arrays
CN103309818B (zh) * 2012-03-09 2015-07-29 腾讯科技(深圳)有限公司 存储数据的方法及装置
TWI509457B (zh) * 2012-05-11 2015-11-21 Silicon Motion Inc 資料儲存裝置以及其資料保護方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109979519A (zh) * 2017-12-27 2019-07-05 华邦电子股份有限公司 存储器完整性的检验方法、非易失性存储器以及电子装置
CN109979519B (zh) * 2017-12-27 2021-03-16 华邦电子股份有限公司 存储器完整性的检验方法、非易失性存储器以及电子装置

Also Published As

Publication number Publication date
US9626529B2 (en) 2017-04-18
US20160140356A1 (en) 2016-05-19
CN105607865B (zh) 2019-04-23
IL235729A (en) 2017-06-29
TW201619867A (zh) 2016-06-01
EP3021226A1 (en) 2016-05-18
TWI552017B (zh) 2016-10-01
IL235729A0 (en) 2015-02-26

Similar Documents

Publication Publication Date Title
CN105607865A (zh) 安全数据储存装置、系统及其数据写入与读取方法
CN106599735B (zh) 数据保护装置、方法以及存储控制器
US20170046281A1 (en) Address dependent data encryption
KR101534370B1 (ko) 비휘발성 메모리에 데이터를 기록하고 이로부터 데이터를 판독하기 위한 데이터 화이트닝
US7876894B2 (en) Method and system to provide security implementation for storage devices
KR100876041B1 (ko) 반도체 장치
JP3904432B2 (ja) 情報処理装置
WO2004077300A1 (ja) Icメモリカード及びそのデータ保護方法
US20140032935A1 (en) Memory system and encryption method in memory system
JP2003198534A (ja) データ暗号化装置及びその方法
CN104063672B (zh) 数据安全存储方法
TWI648741B (zh) 資料儲存裝置之控制器以及進階資料抹除的方法
TW201918923A (zh) 安全邏輯系統及操作安全邏輯系統的方法
TW201939267A (zh) 用來對微控制器芯片進行韌體編程之方法與裝置、以及對應的微控制器芯片
CN111914309A (zh) 密码保护的数据储存装置以及非挥发式存储器控制方法
RU2014134714A (ru) Способ записи и считывания данных
CN103154967A (zh) 修改元素的长度以形成加密密钥
US20080109661A1 (en) System, method, and computer security device having virtual memory cells
CN114153376A (zh) 安全闪存控制器
CN108370310A (zh) 生命周期状态的加密管理
CN109471809A (zh) 一种芯片的flash加密保护方法、装置、flash控制器及芯片
US10785031B2 (en) Data encryption of a storage area
JP2677342B2 (ja) 携帯形半導体記憶装置システム
US20240111451A1 (en) Method and apparatus for performing access management of memory device in host performance booster architecture with aid of device side table information encoding and decoding
US11994985B2 (en) Method and apparatus for performing access management of memory device in host performance booster architecture with aid of device side table information encoding and decoding

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant