CN111913908A - 具有重放攻击对抗措施的存储系统及其操作方法 - Google Patents
具有重放攻击对抗措施的存储系统及其操作方法 Download PDFInfo
- Publication number
- CN111913908A CN111913908A CN202010336704.1A CN202010336704A CN111913908A CN 111913908 A CN111913908 A CN 111913908A CN 202010336704 A CN202010336704 A CN 202010336704A CN 111913908 A CN111913908 A CN 111913908A
- Authority
- CN
- China
- Prior art keywords
- timestamp
- host device
- storage area
- security data
- secure
- 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
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3242—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2151—Time stamp
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Power Engineering (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
在操作存储系统的方法中,第一安全数据和用于防止重放攻击的第一时间戳由主机设备写入到作为外部存储区域的第一存储区域中。主机设备基于第一时间戳来更新第二时间戳。与第一时间戳相对应的第二时间戳存储在与第一存储区域不同的第二存储区域中。主机设备接收表示第二时间戳的更新结果的第一通知信号。当主机设备基于第一通知信号确定第二时间戳成功更新时,完成第一安全数据的写操作。
Description
相关申请的交叉引用
本申请要求于2019年5月10日在韩国知识产权局(KIPO)递交的韩国专利申请No.10-2019-0054677的优先权,其全部内容通过引用合并于此。
技术领域
根据本公开的方法、系统、装置和物品总体上涉及半导体集成电路,并且更具体地涉及具有重放攻击的对抗措施的存储系统的操作方法以及执行该方法的存储系统。
背景技术
通常,片上系统(SoC)用来指在单个或少量半导体集成电路(IC)中集成各种功能块(例如,中央处理单元(CPU)、存储器、接口单元、数字信号处理单元、模拟信号处理单元等)的处理装置,以使用有限数量的IC来实现电子系统,例如计算机系统。SoC已发展为复杂的系统,包括各种功能,例如多媒体、图形、接口、安全性等。在SoC中处理的数据被提供给外部存储器设备,当SoC与存储器设备交换安全数据时,可能会发生探测和重用先前通信内容的重放攻击。因此,需要针对这种重放攻击的对抗措施或防御。
发明内容
一方面提供了一种操作存储系统的方法,包括能够提高安全性能的针对重放攻击的对抗措施。
另一方面提供了一种执行该方法的存储系统。
根据一个或多个示例实施例的一方面,提供了一种操作存储系统的方法,该方法包括:主机设备将第一安全数据和用于防止重放攻击的第一时间戳写入作为外部存储区域的第一存储区域;主机设备基于第一时间戳来更新第二时间戳,第二时间戳对应于第一时间戳并存储在与第一存储区域不同的第二存储区域中;主机设备接收表示更新结果的第一通知信号;以及当所述主机设备基于所述第一通知信号确定第二时间戳成功更新时,完成第一安全数据的写操作。
根据一个或多个示例实施例的另一方面,提供了一种存储系统,包括主机设备、非易失性存储器设备以及安全非易失性存储器设备。主机设备处理第一安全数据和用于防止重放攻击的第一时间戳。非易失性存储器设备由所述主机设备控制,设置在主机设备外部,并且包括其中写入所述第一安全数据和第一时间戳的第一存储区域。安全非易失性存储器设备由主机设备控制,与非易失性存储器设备分开形成,并且包括第二存储区域,在所述第二存储区域中写入与第一时间戳相对应的第二时间戳。主机设备将第一安全数据和第一时间戳写入第一存储区域,并基于第一时间戳来更新第二时间戳。安全非易失性存储器设备生成表示更新第二时间戳的结果的第一通知信号。当主机设备基于第一通知信号确定第二时间戳成功更新时,完成第一安全数据的写操作。
根据一个或多个示例实施例的又一方面,提供了一种存储系统,包括主机设备和非易失性存储器设备。主机设备处理第一安全数据和用于防止重放攻击的第一时间戳。非易失性存储器设备由主机设备控制,设置在主机设备外部,包括其中写入第一安全数据和第一时间戳的第一存储区域,并且包括其中写入与第一时间戳相对应的第二时间戳的第二存储区域。第二存储区域与第一存储区域不同。主机设备将第一安全数据和所述第一时间戳写入第一存储区域,并基于第一时间戳来更新第二时间戳。非易失性存储器设备生成表示更新第二时间戳的结果的第一通知信号。当主机设备基于第一通知信号确定第二时间戳成功更新时,完成第一安全数据的写操作。
附图说明
根据结合附图的以下详细描述,将更清楚地理解说明性的非限制性示例实施例,其中:
图1是示出根据示例实施例的操作存储系统的方法的流程图;
图2是示出根据示例实施例的存储系统的框图;
图3是示出根据示例实施例的由图2存储系统执行图1方法的示例的图;
图4是根据示例实施例的详细示出图3操作的图;
图5是示出根据示例实施例的将第一安全数据和第一时间戳写入图1中的第一存储区域的示例的流程图;
图6是示出根据示例实施例的更新图1中的第二时间戳的示例的流程图;
图7是示出根据示例实施例的操作存储系统的方法的流程图;
图8是示出根据示例实施例的由图2存储系统执行图7方法的示例的图;
图9是根据示例实施例的详细示出图8操作的图;
图10是示出根据示例实施例的在图7中设置第一时间戳的示例的流程图;
图11是示出根据示例实施例的操作存储系统的方法的流程图;
图12是示出根据示例实施例的由图2存储系统执行图11方法的示例的图;
图13是示出根据示例实施例的图11中检查是否发生了重放攻击的示例的流程图;
图14是示出根据示例实施例的操作存储系统的方法的流程图;
图15是示出根据示例实施例的由图2存储系统执行根据示例实施例的方法的示例的图;
图16和图17是示出根据示例实施例的存储系统的框图;
图18是示出根据示例实施例的包括在存储系统中的非易失性存储器的示例的框图;
图19是示出根据示例实施例的包括在存储系统中的储存装置的示例的框图;以及
图20是示出根据示例实施例的电子系统的框图。
具体实施方式
将参考附图更全面地描述各种示例实施例,在附图中示出了实施例。然而,本公开可以以许多不同的形式来体现,并且不应被解释为受限于本文所阐述的实施例。在本申请中,相同的附图标记表示相同的元件。
在根据示例实施例的存储系统和操作该存储系统的方法中,用作针对重放攻击的对抗措施的时间戳可以存储在与常规存储空间分离的安全存储空间中,并且可以基于存储在安全存储空间中的时间戳来实施主机设备和常规存储空间之间的数据保护协议,从而有效地防止重放攻击。另外,用于将安全数据存储在常规存储空间中的写操作与用于将时间戳存储在安全存储空间中的安全更新操作可以彼此紧密耦合,并且可以确定仅在成功完成安全更新操作时才完成写操作,从而确保存储系统的操作的稳定性和可靠性。
此外,当存储系统通电时,可以基于存储在安全存储空间中的时间戳来可靠且安全地初始化主机设备中的时间戳,并且可以仅在成功完成设置第一时间戳之后才执行后续操作,从而更好地确保存储系统的操作的稳定性和可靠性。
图1是示出根据示例实施例的操作存储系统的方法的流程图。
根据示例实施例的存储系统包括主机设备,并且包括彼此分离地形成(例如,彼此分开、相区分和/或不同)的第一存储区域和第二存储区域。将参考图2描述存储系统的配置。
参考图1,在根据示例实施例的操作存储系统的方法中,当期望执行第一安全数据的数据写事件时,主机设备写入第一安全数据和用于防止对第一存储区域的重放攻击的第一时间戳(步骤S100)。例如,第一安全数据可以是各种安全数据中的至少一种,例如密码密钥、敏感数据、敏感码等。第一存储区域可以布置在主机设备的外部,并且可以是常规或通用数据储存空间。
重放攻击表示如下攻击:通过选择协议上的有效消息,然后复制该有效消息并稍后重新传输该有效消息,来伪装成合法用户。换句话说,重放攻击表示一种安全黑客方法,该方法存储在主机设备和第一存储区域之间通信的先前代码和/或数据,然后将先前代码和/或数据重新传输给主机设备。第一时间戳可以用作用于检测重放攻击的标签。换句话说,第一时间戳可以是用于防止对第一安全数据的重放攻击的抗重放对策数据和/或信息。
主机设备基于第一时间戳来更新第二时间戳(步骤S200)。第二时间戳存储在第二存储区域中并且对应于第一时间戳。如上所述,第二存储区域与第一存储区域分开、相区分和/或不同。与第一存储区域不同,第二存储区域可以是安全的数据存储空间。例如,第二时间戳可以被更新为具有与第一时间戳的值基本相同的值。
生成表示更新存储在第二存储区域中的第二时间戳的结果的第一通知信号,并且主机设备接收第一通知信号(步骤S300)。例如,第一通知信号可以从包括第二存储区域的存储器设备提供,并且可以指示对第二时间戳的更新操作是成功还是失败。
主机设备确定更新操作是否成功(步骤S400)。例如,主机设备可以基于第一通知信号来确定对第二时间戳的更新操作是成功还是失败。当确定更新操作成功时(例如,第二时间戳被成功更新)(步骤S400:是),则完成第一安全数据的写操作(步骤S410)。当确定更新操作未成功时(例如,第二时间戳未成功更新)(步骤S400:否),可以确定第一安全数据的写操作失败(步骤S420)。
在根据示例实施例的操作存储系统的方法中,用作针对重放攻击的对抗措施的时间戳可以存储在与常规存储空间(例如,第一存储区域)分离的安全存储空间(例如,第二存储区域)中,并且可以基于存储在安全存储空间中的时间戳来实施主机设备和常规存储空间之间的数据保护协议。另外,用于将安全数据存储在常规存储空间中的写操作与用于将时间戳存储在安全存储空间中的安全更新操作可以彼此紧密耦合(即,在将安全数据存储在常规存储空间中时,在安全存储空间中安全地更新时间戳),并且可以确定仅在安全更新操作成功完成时才完成写操作。因此,可以有效地防止重放攻击,并且可以确保存储系统的操作的稳定性和可靠性。
图2是示出根据示例实施例的存储系统的框图。
参照图2,存储系统100包括主机设备200、非易失性存储器(NVM)设备300和安全非易失性存储器(NVM)设备400。
主机设备200控制存储系统100的整体操作。主机设备200包括主机处理器210和安全元件(SE)220。主机设备200还可以包括主机存储器(未示出)。
主机处理器210控制主机设备200的操作。例如,主机处理器210可以执行操作系统(OS)以驱动存储系统100,并且可以执行各种应用,例如提供因特网浏览器,执行游戏,显示视频文件,控制相机模块等。由主机处理器210执行的操作系统可以包括在操作系统级别用于文件管理的文件系统以及用于控制包括非易失性存储器设备300和安全非易失性存储器设备400在内的外围设备的设备驱动器。
在一些示例实施例中,主机处理器210可以是中央处理单元(CPU)、微处理器、应用处理器(AP)等。在一些示例实施例中,主机处理器210可以包括单个处理器核。在一些实施例中,主机处理器210可以包括多个处理器核。
安全元件220不同于主机处理器210,并且与主机处理器210分离地形成(例如,与主机处理器210分开、相区别和/或不同)。安全元件220独立于主机处理器210以安全模式控制主机设备200的操作。换句话说,安全元件220可以用于实现独立的安全执行环境。例如,安全元件220可以抵抗篡改攻击,例如重放攻击、微探测、软件攻击、窃听、故障产生攻击等。安全元件220可以被称为安全硬件、安全组件或安全模块。
安全元件220处理和/或存储第一安全数据X和与第一安全数据X相对应的第一时间戳TS。换句话说,根据示例实施例的操作存储系统的方法可以由主机设备200中包括的安全元件220执行和/或运行。尽管在图2中未示出,但是安全元件220可以包括:处理第一安全数据X和第一时间戳TS的安全处理器;存储第一安全数据X和第一时间戳TS的安全存储器;存储用于加密第一安全数据X和第一时间戳TS的密钥的一次性可编程(OTP)存储器等。
在一些示例实施例中,安全元件220可以是集成到主机设备200中的集成安全元件(iSE)和/或嵌入式安全元件(eSE)。换句话说,主机设备200可以以包括安全元件220在内的单个半导体封装的形式实现。在该示例中,安全元件220中包括的安全存储器和OTP存储器可以分别以集成随机存取存储器(iRAM)和集成OTP(iOTP)的形式实现。
主机存储器(未示出)可以存储由主机处理器210和/或安全元件220执行和/或处理的指令和/或数据。例如,主机存储器可以存储引导映像、文件系统、设备驱动程序和/或应用。
在一些示例实施例中,主机设备200可以以片上系统(SoC)的形式实现。
非易失性存储器设备300由主机设备200访问和控制,并且被布置在主机设备200的外部。在安全元件220集成在主机设备200中的情况下,用于存储由安全元件220使用的安全内容的非易失性存储器应该一起集成在主机设备200中。然而,由于制造工艺问题,难以将非易失性存储器集成在主机设备200中,因此可以使用外部非易失性存储器(例如,非易失性存储器设备300)来存储安全内容。外部非易失性存储器设备300中存储的数据可以由安全元件220加密,并且可以包括诸如消息认证码(MAC)之类的标签以用于完整性检查。
非易失性存储器设备300包括第一存储区域(存储区域1)310,由主机设备200(例如,由主机设备200中包括的安全元件220)处理的第一安全数据X和第一时间戳TS写入第一存储区域310。例如,可以将与第一安全数据X相对应的加密的第一安全数据X’、和包括与第一时间戳TS相关联的信息在内的第一消息认证码MAC(TS)存储在第一存储区域310中。
主机设备200可以控制对非易失性存储器设备300的数据写/读操作。例如,当期望将特定数据写入非易失性存储器设备300中时,主机设备200可以提供写命令、写地址和要写入非易失性存储器设备300的数据。另外,当期望从非易失性存储器设备300读取特定数据时,主机设备200可以向非易失性存储器设备300提供读命令和读地址,并且可以接收从非易失性存储器设备300获取的数据。
非易失性存储器设备300可以由主机处理器210和安全元件220两者访问。在这种情况下,第一存储区域310可以仅由安全元件220访问。尽管在图2中未示出,但是非易失性存储器设备300还可以包括:可以仅由主机处理器210访问的存储区域、和/或可以由主机处理器210和安全元件220两者访问的存储区域。
在一些示例实施例中,非易失性存储器设备300可以以常规或通用数据存储空间的形式实现。例如,非易失性存储器设备300可以包括闪速存储器(例如,NAND闪速存储器)。对于另一示例,非易失性存储器设备300可以包括相变随机存取存储器(PRAM)、电阻随机存取存储器(RRAM)、纳米浮栅存储器(NFGM)、聚合物随机存取存储器(PoRAM)、磁随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)等。
在一些示例实施例中,如将参考图18描述的,非易失性存储器设备300可以包括一个非易失性存储器。在其他示例实施例中,如将参考图19描述的,非易失性存储器设备300可以以包括多个非易失性存储器的储存装置的形式实现。
安全非易失性存储器设备400由主机设备200访问和控制,并且与非易失性存储器设备300分离形成(例如,与非易失性存储器设备300分开、相区别和/或不同)。在图2的示例中,安全非易失性存储器设备400可以设置在主机设备200的外部。换句话说,主机设备200和安全非易失性存储器设备400可以形成在分离的半导体封装中或被配置为分离的半导体封装。
安全非易失性存储器设备400包括:第二存储区域410(存储区域2),其中存储与第一时间戳TS相对应的第二时间戳NV_TS。例如,第一时间戳TS和第二时间戳NV_TS可以具有基本相同的值。
主机设备200可以控制对安全非易失性存储器设备400的数据写/读操作。与非易失性存储器设备300不同,安全非易失性存储器设备400可以仅由安全元件220访问。
在一些示例实施例中,与非易失性存储器设备300不同,安全非易失性存储器设备400可以以安全数据存储空间的形式实现。
存储系统100还可以包括设置或形成在主机设备200与非易失性存储器设备300之间的第一接口、以及设置或形成在主机设备200与安全非易失性存储器设备400之间的第二接口。在图2中,在主机设备200与非易失性存储器设备300之间示出的双向箭头可以表示第一接口,并且在主机设备200与安全非易失性存储器设备400之间示出的另一双向箭头可以表示第二接口。
第一接口和第二接口中的每一个可以表示双向数字接口,该双向数字接口可以传输数字流,例如比特序列。例如,可以实现单条配线或多条配线作为电传输线,例如,使用印刷电路板(PCB)技术制造的微带,但是本发明构思不限于此。
在一些示例实施例中,第一接口和第二接口可以符合不同的协议,并且可以基于不同的协议交换信号。例如,第一接口可以包括常规或通用通信接口(例如,块可访问接口),诸如通用闪速存储装置(UFS)、嵌入式多媒体卡(eMMC)、串行高级技术附件(SATA)总线、小型计算机系统接口(SCSI)总线、非易失性存储器快速(NVMe)总线、串行连接的SCSI(SAS)总线等。第二接口可以不同于第一接口,并且可以包括用于安全通信的专用安全接口(或专用安全协议)。换句话说,安全元件220和安全非易失性存储器设备400可以使用安全协议和安全信道彼此通信。
在一些示例实施例中,存储系统100可以是任何移动系统,比如移动电话、智能电话、平板电脑、膝上型计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、数码相机、便携式游戏机、音乐播放器、摄像机、视频播放器、导航设备、可穿戴设备、物联网(IoT)设备、万联网(IoE)设备、电子书阅读器、虚拟现实(VR)设备、增强现实(AR)设备、机器人设备。在其他示例实施例中,存储系统100可以是任何计算系统,比如个人计算机(PC)、服务器计算机、工作站、数字电视、机顶盒、导航系统等。
图3是示出根据示例实施例的由图2存储系统执行图1方法的示例的图。
参照图1、图2和图3,主机设备200(例如,主机设备200中包括的安全元件220)将第一安全数据X(0)和与第一安全数据X(0)相对应的第一时间戳TS(X)写入非易失性存储器设备300(例如,包括在非易失性存储器设备300中的第一存储区域310)(步骤S100)。可以将与第一安全数据X(0)相对应的加密的第一安全数据X’(0)、和包括与第一时间戳TS(X)相关联的信息在内的第一消息认证码MAC[TS(X)]存储在非易失性存储器设备300中。
主机设备200基于第一时间戳TS(X)更新(安全更新)存储在安全非易失性存储器设备400(例如,安全非易失性存储器设备400中包括的第二存储区域410)中的对应于第一时间戳TS(X)的第二时间戳NV_TS(X+1)(步骤S200)。例如,第二时间戳在初始操作时间可以是NV_TS(X),然后可以被更新为NV_TS(X+1)。
安全非易失性存储器设备400生成表示第二时间戳NV_TS(X+1)的更新结果的第一通知信号(确认),并且主机设备200接收第一通知信号(步骤S300)。
主机设备200基于第一通知信号检查或确定第二时间戳NV_TS(X+1)的更新操作是成功还是失败(步骤S400)。基于这种确定操作的结果,完成第一安全数据X(0)的写操作,或者确定第一安全数据X(0)的写操作失败。
图4是根据示例实施例的详细示出图3操作的图。图4详细示出了图3操作中的步骤S100和S200。图5是示出将第一安全数据和第一时间戳写入图1中的第一存储区域的示例的流程图。图6是示出更新图1中的第二时间戳的示例的流程图。
参照图1、图2、图4和图5,当将第一安全数据和第一时间戳写入第一存储区域时(步骤S100),主机设备200(例如,主机设备200中包括的安全元件220)可以加密第一安全数据X(0)以生成加密的第一安全数据X′(0)(步骤S110)。例如,加密的第一安全数据X′(0)可以表示为“Enc(Data(X))”,其中省略了用于加密的密钥的描述。
主机设备200可以生成针对加密的第一安全数据X′(0)和第一时间戳TS(X)的第一消息认证码MAC[TS(X)](步骤S120)。例如,第一消息认证码MAC[TS(X)]可以表示为“MAC(Enc(Data(X))+TS(X))”,其中也省略了用于加密的密钥的描述。
主机设备200可以将加密的第一安全数据X′(0)和第一消息认证码MAC[TS(X)]发送给非易失性存储器设备300(例如,包括在非易失性存储器设备300中的第一存储区域310))(步骤S130)。加密的第一安全数据X′(0)和第一消息认证码MAC[TS(X)]可以存储在第一存储区域310中。
参照图1、图2、图4和图6,当更新第二时间戳时(步骤S200),主机设备200(例如,主机设备200中包括的安全元件220)可以基于第一时间戳TS(X)和会话密钥来生成时间戳更新命令CMD_SU[TS(X)](步骤S210)。例如,时间戳更新命令CMD_SU[TS(X)]可以包括表示为“Enc(TS(X),Skey)”的加密的第一时间戳、和表示为“MAC(TS(X))”的相应消息认证码,并且“Skey”可以代表会话密钥。将参考图9描述会话密钥。
安全非易失性存储器设备400可以基于时间戳更新命令CMD_SU[TS(X)]来更新第二时间戳NV_TS(X+1),使得第二时间戳NV_TS(X+1)的值等于第一时间戳TS(X)的值。例如,安全非易失性存储器设备400可以包括能够执行和/或运行下述操作的处理单元。
安全非易失性存储器设备400可以基于时间戳更新命令CMD_SU[TS(X)]获得第一时间戳TS(X)(步骤S220)。例如,可以检查包括在时间戳更新命令CMD_SU[TS(X)]中的消息认证码,可以使用会话密钥解密包括在时间戳更新命令CMD_SU[TS(X)]中的加密的第一时间戳,并且因此可以获得第一时间戳TS(X)。
安全非易失性存储器设备400可以将第二时间戳NV_TS(X+1)更新为具有与第一时间戳TS(X)的值相同的值(步骤S230)。例如,可以存储通过解密操作获得的第一时间戳TS(X)作为第二时间戳NV_TS(X+1)。
然后,安全非易失性存储器设备400可以生成第一通知信号RSP_SU[TS(X)]。主机设备200可以接收第一通知信号RSP_SU[TS(X)],并且可以基于第一通知信号RSP_SU[TS(X)]来确定第二时间戳NV_TS(X+1)的更新操作是成功还是失败。
在根据示例实施例的存储系统和操作该存储系统的方法中,当存储安全数据时可以使用时间戳,因此可以有效地防止重放攻击。另外,可以将时间戳存储在单独的安全存储空间中,可以确定仅当安全存储空间中的时间戳的安全更新操作成功完成时,才完成安全数据的写操作,并且因此可以确保存储系统的操作的稳定性和可靠性。
图7是示出根据示例实施例的操作存储系统的方法的流程图。为了简洁,将省略与图1重复的描述。
参照图7,在根据示例实施例的操作存储系统的方法中,当存储系统通电时,主机设备基于存储在第二存储区域中的第二时间戳来设置(或初始化,重置)第一时间戳(步骤S500)。可以每次或无论何时存储系统通电时都执行步骤S500。
在步骤S500之后执行的图7中的步骤S100、S200、S300、S400、S410和S420可以与参考图1描述的基本相同。
在一些示例实施例中,可以仅在第一时间戳的设置成功完成之后或仅当第一时间戳的设置成功完成时,才执行第一安全数据的写操作。换句话说,可以仅在成功完成步骤S500之后,才执行步骤S100、S200、S300、S400、S410和S420。
在根据示例实施例的操作存储系统的方法中,当存储系统通电时,可以基于存储在安全存储空间(例如,第二存储区域)中的第二时间戳来可靠且安全地初始化主机设备中的第一时间戳。另外,可以仅在第一时间戳的设置成功完成之后才执行后续操作。因此,可以进一步确保存储系统的操作的稳定性和可靠性。
图8是示出根据示例实施例的由图2存储系统执行图7方法的示例的图。为了简洁,将省略与图3重复的描述。
参照图2、图7和图8,当包括主机设备200、非易失性存储器设备300和安全非易失性存储器设备400在内的存储系统100通电时,主机设备200(例如,包括在主机设备200中的安全元件220)基于存储在安全非易失性存储器设备400(例如,在安全非易失性存储器设备400中包括的第二存储区域410)中的第二时间戳NV_TS(X)来设置(安全设置)第一时间戳TS(X))(步骤S500)。
在步骤S500之后执行的图8中的步骤S100、S200、S300和S400可以与参考图3所描述的基本相同。
图9是根据示例实施例的详细示出图8操作的图。图9详细示出了图8的操作中的步骤S500。图10是示出图7中设置第一时间戳的示例的流程图。
参照图2、图7、图9和图10,当基于第二时间戳设置第一时间戳时(步骤S500),主机设备200(例如,在主机设备200中包括的安全元件220)可以基于第一随机数RAND1来生成时间戳设置命令CMD_STS(步骤S510)。
例如,主机设备200可以生成第一随机数RAND1,可以对第一随机数RAND1进行加密以生成加密的第一随机数,并且可以基于加密的第一随机数来生成时间戳设置命令CMD_STS。例如,加密的第一随机数可以表示为“Enc(RAND1,Ekey)”,并且“‘Ekey”可以表示用于加密的密钥。时间戳设置命令CMD_STS可以包括加密的第一随机数“Enc(RAND1,Ekey)”和表示为“MAC(Enc(RAND1,Ekey),Mkey)”的相应消息认证码,并且“Mkey”可以代表用于消息认证码的密钥。
安全非易失性存储器设备400可以基于时间戳设置命令CMD_STS和第二随机数RAND2来生成设置响应信号RSP_STS(步骤S520)。例如,安全非易失性存储器设备400可以包括能够执行和/或运行下述操作的处理单元。
安全非易失性存储器设备400可以生成第二随机数RAND2,可以检查在时间戳设置命令CMD_STS中包括的消息认证码,可以解密在时间戳设置命令CMD_STS中包括的加密的第一随机数以获得第一随机数RAND1,并且可以基于第一随机数RAND1、第二随机数RAND2和第二时间戳NV_TS来生成设置响应信号RSP_STS。例如,解密操作可以表示为“Dec(RAND1,Ekey)”,并且设置响应信号RSP_STS可以包括表示为“Enc(RAND1+RAND2+NV_TS,Ekey)”的加密数据以及表示为“MAC(Enc(RAND1+RAND2+NV_TS,Ekey),Mkey)”的相应消息认证码。
主机设备200可以基于设置响应信号RSP_STS来设置第一时间戳TS(X),使得第一时间戳TS(X)的值等于第二时间戳NV_TS(X)的值(步骤S530)。
例如,主机设备200可以检查在设置响应信号RSP_STS中包括的消息认证码,可以解密在设置响应信号RSP_STS中包括的加密数据以获得第一随机数RAND1、第二随机数RAND2和第二时间戳NV_TS,并且可以将第一时间戳TS(X)设置为具有与第二时间戳NV_TS(X)的值相同的值。例如,解密操作可以表示为“Dec(RAND1+RAND2+NV_TS,Ekey)”。
在设置第一时间戳TS(X)之后,主机设备200和安全非易失性存储器设备400可以基于第一随机数RAND1和第二随机数RAND2来生成会话密钥SKEY(步骤S540)。例如,会话密钥SKEY可以表示为“Skey=(RAND1+RAND2,Ekey)”。会话密钥SKEY可以用在安全更新操作中,并且可以用于生成时间戳更新命令CMD_SU[TS(X)],如参考图6中的步骤S210所描述的。
在根据示例实施例的存储系统和操作该存储系统的方法中,可以在通电时基于存储在单独的安全存储空间中的时间戳来可靠且安全地设置和/或初始化主机设备中的时间戳。另外,可以仅在成功完成主机设备中的时间戳的设置之后才执行后续操作,因此可以更加确保存储系统的操作的稳定性和可靠性。
图11是示出根据示例实施例的操作存储系统的方法的流程图。将省略与图1重复的描述。
参考图11,在根据示例实施例的操作存储系统的方法中,图11中的步骤S100、S200、S300、S400、S410和S420可以与参考图1描述的基本相同。
当期望在第一安全数据的写操作完成之后执行第一安全数据的数据读事件时,主机设备从第一存储区域读取第一安全数据和第一时间戳(步骤S600)。如上所述,与第一安全数据相对应的加密的第一安全数据和与第一时间戳相对应的第一消息认证码可以存储在第一存储区域中,因此可以从第一存储区域读取加密的第一安全数据和第一消息认证码。
主机设备基于第一时间戳检查对于第一安全数据是否发生了重放攻击(步骤S700)。例如,可以将主机设备中的第一时间戳与第一消息认证码中的第一时间戳进行比较,从而可以有效地检查是否发生了重放攻击。如果尚未发生重放攻击,则主机设备可以继续处理数据。如果已发生了重放攻击,则主机设备可以忽略数据或者提供发生了重放攻击的通知。
图12是示出根据示例实施例的由图2存储系统执行图11方法的示例的图。为了简洁,将省略与图3重复的描述。
参照图2、图11和图12,图12中的步骤S100、S200、S300和S400可以与参考图3所描述的基本相同。
主机设备200(例如,在主机设备200中包括的安全元件220)从非易失性存储器设备300(例如,在非易失性存储器设备300中包括的第一存储区域310)读取加密的第一安全数据X′(0)和第一消息认证码MAC[TS(X)](步骤S600)。
主机设备200基于第一时间戳TS(X)检查是否发生了重放攻击(步骤S700)。例如,主机设备200可以对加密的第一安全数据X′(0)进行解码以获得第一安全数据X(0),并且可以基于作为内部时间戳的第一时间戳TS(X)来验证第一消息认证码MAC[TS(X)]。
图13是示出根据示例实施例的图11中检查是否发生了重放攻击的示例的流程图。
参照图2、图11、图12和图13,当基于第一时间戳检查对于第一安全数据是否发生了重放攻击时(步骤S700),可以将主机设备200中的第一时间戳TS(X)和第一消息认证码MAC[TS(X)]中的第一时间戳TS(X)彼此进行比较,并且可以确定主机设备200中的第一时间戳TS(X)是否等于第一消息认证码MAC[TS(X)]中的第一时间戳TS(X)(步骤S710)。
当主机设备200中的第一时间戳TS(X)和第一消息认证码MAC[TS(X)]中的第一时间戳TS(X)具有相同的值时(步骤S710:是),可以确定尚未发生重放攻击(步骤S720)。主机设备200可以基于通过解密操作获得的第一安全数据X(0)来执行期望的操作、任务等。
当主机设备200中的第一时间戳TS(X)和第一消息认证码MAC[TS(X)]中的第一时间戳TS(X)具有不同的值时(步骤S710:否),可以确定发生了重放攻击(步骤S730)。主机设备200可以采取适当的对抗措施(例如,丢弃通过解密操作获得的第一安全数据X(0)、警告、断电等)。
图14是示出根据示例实施例的操作存储系统的方法的流程图。将省略与图1、图7和图11重复的描述。
参照图14,在根据示例实施例的操作存储系统的方法中,每次或无论何时第一安全数据被写入第一存储区域时,都在第二存储区域中改变和更新第一时间戳。换句话说,可以针对对于第一安全数据的每次写操作来重复执行参考图1描述的步骤S100、S200、S300、S400、S410和S420。
例如,依次执行第一安全数据和第一时间戳的写操作、第二时间戳的更新操作、接收更新结果的操作、以及检查更新操作是否成功的操作(步骤S1100)。例如,步骤S1100可以包括图1中的步骤S100、S200、S300、S400、S410和S420。
此后,当第一安全数据和第一时间戳改变时,依次执行第一安全数据和第一时间戳的重写操作、第二时间戳的重新更新操作、接收重新更新结果的操作、以及检查重新更新操作是否成功的操作(步骤S1200)。
例如,当期望改变(或修改,调整)第一安全数据或者存在改变第一安全数据的请求时,主机设备可以改变第一安全数据,并且可以由主机设备一起改变第一时间戳。此后,如在图1中的步骤S100、S200、S300、S400、S410和S420那样,主机设备可以将改变后的第一安全数据和改变后的第一时间戳重新写入第一存储区域,主机设备可以基于改变后的第一时间戳来重新更新存储在第二存储区域中的第二时间戳,可以生成表示重新更新存储在第二存储区域中的第二时间戳的结果的第二通知信号,主机设备可以接收第二通知信号,当基于第二通知信号确定第二时间戳成功更新时可以完成针对改变后的第一安全数据的重写操作,并且当基于第二通知信号确定第二时间戳未成功更新时可以确定针对改变后的第一安全数据的重写操作失败。
尽管未详细示出,但是当在步骤S1200之后期望进一步改变第一安全数据时,可以顺序地重复与步骤S1200基本相同的操作。另外,当在操作存储系统期间发生断电和通电事件时,可以进一步执行参考图7中的步骤S500描述的设置第一时间戳的操作,以及当发生第一安全数据的数据读事件时,可以进一步执行参考图11中的步骤S600和S700描述的读取第一安全数据的操作以及检查是否发生了重放攻击的操作。
图15是示出由图2的存储系统执行根据示例实施例的方法的示例的图。为了简洁,将省略与图3、图8和图12重复的描述。
参照图1、图2、图7、图11和图15,当存储系统100通电时,主机设备200可以基于存储在安全非易失性存储器设备400中的第二时间戳NV_TS(X)来设置第一时间戳TS(X)。当期望写入第一安全数据X(0)时,主机设备200可以生成与第一安全数据X(0)对应的加密的第一安全数据X′(0)、和与第一时间戳TS(X)对应的第一消息认证码MAC[TS(X)],并且可以将加密的第一安全数据X′(0)和第一消息认证码MAC[TS(X)]发送并写入到非易失性存储器设备300。主机设备200可以基于第一时间戳TS(X)将第二时间戳从NV_TS(X)更新为NV_TS(X+1),并且可以顺序地执行接收更新结果的操作和检查更新操作是否成功的操作。
此后,主机设备200可以将第一安全数据从X(0)改变为X(1),并且可以将第一时间戳从TS(X)改变为TS(X+1)。主机设备200可以生成与改变后的第一安全数据X(1)相对应的加密的安全数据X′(1)、和与改变后的第一时间戳TS(X+1)相对应的消息认证码MAC[TS(X+1)],并且可以将加密的安全数据X′(1)和消息认证码MAC[TS(X+1)]发送并重新写入到非易失性存储器设备300。主机设备200可以基于改变后的第一时间戳TS(X+1)将第二时间戳从NV_TS(X+1)重新更新为NV_TS(X+2),并且可以顺序地执行接收重新更新结果的操作和检查重新更新操作是否成功的操作。
类似地,主机设备200可以将第一安全数据从X(1)改变为X(2),并且可以将第一时间戳从TS(X)改变为TS(X+2)。主机设备200可以生成与改变后的第一安全数据X(2)相对应的加密的安全数据X′(2)、和与改变后的第一时间戳TS(X+2)相对应的消息认证码MAC[TS(X+2)],并且可以将加密的安全数据X′(2)和消息认证码MAC[TS(X+2)]发送并重新写入到非易失性存储器设备300。主机设备200可以基于改变后的第一时间戳TS(X+2)将第二时间戳从NV_TS(X+2)重新更新为NV_TS(X+3),并且可以顺序地执行接收重新更新结果的操作、和检查重新更新操作是否成功的操作。
此后,存储系统100可以断电,然后再次通电。当存储系统100通电时,主机设备200可以基于最后存储在安全非易失性存储器设备400中的第二时间戳NV_TS(X+3)来将第一时间戳设置为TS(X+3)。
之后,主机设备200可以从非易失性存储器设备300读取与第一安全数据相对应的加密的第一安全数据、和与第一时间戳相对应的第一消息认证码。当接收到X′(2)和MAC[TS(X+2)]分别作为加密的第一安全数据和第一消息认证码时,第一消息认证码中的第一时间戳TS(X+2)和作为主机设备200中的第一时间戳的TS(X+3-1)可以彼此相同,因此可以确定尚未发生重放攻击。当接收到X′(1)和MAC[TS(X+1)]分别作为加密的第一安全数据和第一消息认证码时,第一消息认证码中的第一时间戳TS(X+1)和作为主机设备200中的第一时间戳的TS(X+3-1)可以彼此不同,因此可以确定已发生重放攻击。
在根据示例实施例的操作存储系统的方法中,当存储安全元件220所需的用于抗重放对策的时间戳时,可以使用外部安全非易失性存储器设备400和安全信道来可靠且安全地存储该时间戳,而无需在安全元件220中集成非易失性存储器。可以在安全元件220和安全非易失性存储器设备400之间设置时间戳变量,安全元件220可以利用在每次写操作时更新的时间戳来执行通信,因此安全元件220可以有效地检测重放攻击。另外,即使在失去电力的环境中也可以安全地存储时间戳。例如,即使在任何电力不稳定(例如突然断电、缓慢降低电力等)的条件下,也可以安全地存储时间戳。此外,可以使用安全协议来实施向/从安全非易失性存储器设备400写入/读取时间戳的操作,为了成功的写/读操作,可以需要在安全元件220和安全非易失性存储器设备400两者之间的确认,因此可以保证存储系统的操作的稳定性和可靠性。
图16和图17是示出根据示例实施例的存储系统的框图。为了简洁,将省略与图2重复的描述。
参照图16,存储系统100a包括主机设备200a和非易失性存储器(NVM)设备300。
除了安全非易失性存储器(NVM)设备400a包括在主机设备200a中之外,图16的存储系统100a可以与图2的存储系统100基本相同。图16的存储系统100a可以如参考图1和图3至图15所描述的那样操作。
在图16的示例中,安全非易失性存储器设备400a可以设置在主机设备200a的内部。换句话说,主机设备200a和安全非易失性存储器设备400a可以形成在单个半导体封装中。然而,尽管主机设备200a和安全非易失性存储器设备400a可以仅由一个半导体封装形成,但是安全非易失性存储器设备400a可以不集成在主机设备200a中。换句话说,安全元件220可以与主机设备200a的其他组件(例如,主机处理器210)形成在同一半导体管芯上,并且可以集成在主机设备200a中;然而,安全非易失性存储器设备400a可以形成在与其上形成有主机设备200a的其他组件(例如,主机处理器210和安全元件220)的半导体管芯不同的半导体管芯上。
参照图17,存储系统100b包括主机设备200和非易失性存储器(NVM)设备300b。
除了省略了安全非易失性存储器(NVM)设备400,并且在非易失性存储器设备300b中除了第一存储区域(存储区域1)310之外还包括第二存储区域(存储区域2)410之外,图17的存储系统100b可以与图2的存储系统100基本相同。图17的存储系统100b可以如参考图1和图3至图15所描述的那样操作。
在图17的示例中,非易失性存储器设备300b包括其中写入第一安全数据X和第一时间戳TS的第一存储区域310、以及其中存储第二时间戳NV_TS的第二存储区域410。换句话说,第一存储区域310和第二存储区域410可以被包括在同一非易失性存储器设备300b中。
在一些示例实施例中,尽管在图17中未示出,但是在主机设备200和第一存储区域310之间执行通信所通过的第一接口可以与在主机设备200和第二存储区域410之间执行通信所通过的第二接口相分离和区别。
如本领域技术人员将认识到的,本发明构思可以体现为一个或多个计算机可读介质中的系统、方法、计算机程序产品和/或计算机程序产品,所述计算机可读介质具有其上体现的计算机可读程序代码。计算机可读程序代码可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是可以包含或存储由指令执行系统、装置或设备使用或与指令执行系统、装置或设备相关的程序的任何有形介质。例如,计算机可读介质可以是非暂时性计算机可读介质。
图18是示出根据示例实施例的包括在存储系统中的非易失性存储器的示例的框图。
参考图18,非易失性存储器500包括存储单元阵列510、行解码器520、页缓冲电路530、数据输入/输出(I/O)电路540、电压发生器550和控制电路560。非易失性存储器500可以表示包括在图2的非易失性存储器(NVM)设备300中的一个非易失性存储器。
存储单元阵列510经由多条串选择线SSL、多条字线WL和多条地选择线GSL连接到行解码器520。存储单元阵列510还经由多条位线BL连接到页缓冲电路530。存储单元阵列510可以包括连接到多条字线WL和多条位线BL的多个存储单元(例如,多个非易失性存储单元)。可以将存储单元阵列510划分为多个存储块BLK1、BLK2、…、BLKz,每一个存储块包括存储单元。在一些示例实施例中,多个存储单元可以布置成二维(2D)阵列结构或三维(3D)竖直阵列结构。
三维竖直阵列结构可以包括竖直定向的竖直单元串,使得至少一个存储单元位于另一存储单元上方。该至少一个存储单元可以包括电荷捕获层。以下专利文献(通过引用全部并入本文)描述了用于包括3D竖直阵列结构的存储单元阵列的适当构造,其中3D存储阵列被配置为多个层级,并在层级之间共享字线和/或位线:美国专利No.7,679,133、8,553,466、8,654,587、8,559,235;以及美国专利申请公开No.2011/0233648。
控制电路560从外部设备(例如,图2中的主机设备200)接收命令CMD和地址ADDR,并基于命令CMD和地址ADDR来控制非易失性存储器500的擦除操作、编程操作和读取操作。擦除操作可以包括执行一系列擦除循环,并且编程操作可以包括执行一系列编程循环。每一个编程循环可以包括编程操作和编程验证操作。每一个擦除循环可以包括擦除操作和擦除验证操作。读取操作可以包括常规读取操作和数据恢复读取操作。
例如,控制电路560可以生成用于控制电压发生器550的控制信号CON,可以基于命令CMD生成用于控制页缓冲电路530的控制信号PBC,并且可以基于地址ADDR生成行地址R_ADDR和列地址C_ADDR。控制电路560可以将行地址R_ADDR提供给行解码器520并将列地址C_ADDR提供给数据I/O电路540。
行解码器520可以经由多条串选择线SSL、多条字线WL和多条地选择线GSL连接到存储单元阵列510。
例如,在数据擦除/写/读操作中,基于行地址R_ADDR,行解码器520可以将多条字线WL中的至少一条确定为选定的字线,并且可以将多条字线WL中的除选定的字线之外的其余字线或剩余字线确定为未选择的字线。
另外,在数据擦除/写/读操作中,基于行地址R_ADDR,行解码器520可以将多条串选择线SSL中的至少一条确定为选定的串选择线,并且可以将多条串选择线SSL中的除选定的串选择线之外的其余串选择线或剩余串选择线确定为未选择的串选择线。
另外,在数据擦除/写/读操作中,基于行地址R_ADDR,行解码器520可以将多条地选择线SSL中的至少一条确定为选定的地选择线,并且可以将多条地选择线SSL中的除选定的地选择线之外的其余地选择线或剩余地选择线确定为未选择的地选择线。
电压发生器550可以基于电力PWR和控制信号CON生成非易失性存储器500的操作所需的电压VS。可以通过行解码器520将电压VS施加到多条串选择线SSL、多条字线WL和多条地选择线GSL。此外,电压发生器550可以基于电力PWR和控制信号CON生成数据擦除操作所需的擦除电压VERS。擦除电压VERS可以直接地或经由位线BL而施加到存储单元阵列510。
例如,在擦除操作期间,电压发生器550可以将擦除电压VERS施加到存储块(例如,选定的存储块)的公共源极线和/或位线BL,并且可以经由行解码器520将擦除许可电压(例如,接地电压)施加到存储块的所有字线或一部分字线。另外,在擦除验证操作期间,电压发生器550可以将擦除验证电压同时施加到存储块的所有字线,或者逐条顺序地施加到字线。
例如,在编程操作期间,电压发生器550可以经由行解码器520将编程电压施加到选定的字线,并且可以将编程免除电压施加到未选择的字线。此外,在编程验证操作期间,电压发生器550可以经由行解码器520将编程验证电压施加到选定的字线,并且可以将验证免除电压施加到未选择的字线。
此外,在常规读操作期间,电压发生器550可以经由行解码器520将读电压施加到选定的字线,并且可以将读免除电压施加到未选择的字线。在数据恢复读操作期间,电压发生器550可以经由行解码器520将读电压施加到与选定的字线相邻的字线,并且可以将恢复读电压施加到选定的字线。
页缓冲电路530可以经由多条位线BL连接到存储单元阵列510。页缓冲电路530可以包括多个页缓冲器。在一些示例实施例中,每一个页缓冲器可以连接到一条位线。在其他示例实施例中,每一个页缓冲器可以连接到两条或更多条位线。
页缓冲电路530可以存储要被编程到存储单元阵列510中的数据DAT,或者可以读取从存储单元阵列510感测到的数据DAT。换言之,页缓冲电路530可以根据非易失性存储器500的操作模式,作为写入驱动器或读出放大器来进行操作。
数据I/O电路540可以经由数据线DL连接到页缓冲电路530。基于列地址C_ADDR,数据I/O电路540可以经由页缓冲电路330将来自非易失性存储器500外部的数据DAT提供给存储单元阵列310,或可以将来自存储单元阵列510的数据DAT提供到非易失性存储器500外部。
图19是示出根据示例实施例的包括在存储系统中的储存装置的示例的框图。
参照图19,储存装置700包括储存控制器710、多个非易失性存储器(NVM)720a、720b和720c以及缓冲存储器730。储存装置700可以包括多个非易失性存储器,每个非易失性存储器是图18的非易失性存储器500,并且可以被包括在图2的非易失性存储器(NVM)设备300中。
储存控制器710可以基于从外部设备(例如,图2中的主机设备200)接收的命令、地址和数据来控制储存装置700的操作,例如,数据写/读操作。
多个非易失性存储器720a、720b和720c可以存储多个数据。例如,多个非易失性存储器720a、720b和720c可以存储元数据、安全数据、用户数据等。多个非易失性存储器720a、720b和720c中的每一个可以是图18的非易失性存储器500。
缓冲存储器730可以存储由储存控制器710执行和/或处理的指令和/或数据,并且可以临时存储存储在或要存储到多个非易失性存储器720a、720b和720c中的数据。例如,缓冲存储器730可以包括各种易失性存储器(例如,动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)等)中的至少一种。
在一些示例实施例中,储存装置700可以是嵌入式多媒体卡(eMMC)或通用闪速存储装置(UFS)中的至少一种。在其他示例实施例中,储存装置700可以是任何储存装置,例如固态驱动器(SSD)、多媒体卡(MMC)、安全数字(SD)卡、微型SD卡、记忆棒、芯片卡、通用串行总线(USB)卡、智能卡、紧凑式闪存(CF)卡等。
图20是示出根据示例实施例的电子系统的框图。
参考图20,电子系统4000包括至少一个处理器4100、通信模块4200、显示/触摸模块4300、储存装置4400和存储器设备4500。例如,电子系统4000可以是任何移动系统或任何计算系统。
处理器4100控制电子系统4000的操作。处理器4100可以执行操作系统和至少一个应用来提供互联网浏览器、游戏、视频等。通信模块4200被实现为执行与外部设备的无线或有线通信。显示/触摸模块4300被实现为显示由处理器4100处理的数据和/或通过触摸面板接收数据。储存装置4400可以存储用户数据。存储器设备4500临时存储用于电子系统4000的处理操作的数据。
处理器4100可以对应于包括在根据示例实施例的存储系统中的主机设备。在根据示例实施例的存储系统中包括的第一存储区域可以包括在储存装置4400和存储器设备4500中的至少一个中。在根据示例实施例的存储系统中包括的第二存储区域可以包括在处理器4100、储存装置4400和存储器设备4500中的至少一个中。
本发明构思可以应用于包括存储系统的各种电子设备和系统。例如,本发明构思可以应用于诸如以下各项的系统:移动电话、智能电话、平板电脑、膝上型计算机,个人数字助理(PDA)、便携式多媒体播放器(PMP)、数码相机、便携式游戏机、音乐播放器、摄像机、视频播放器、导航设备、可穿戴设备、物联网(IoT)设备、万物联网(IoE)设备、电子书阅读器、虚拟现实(VR)设备、增强现实(AR)设备、机器人设备等。
前述内容是对示例实施例的说明,而不应被解释为对其的限制。尽管已经描述了一些示例性实施例,然而本领域技术人员将容易理解,在不实质上脱离示例性实施例的新颖教义和优点的前提下,可以在示例性实施例中进行多种修改。因此,所有这种修改旨在被包括在如在权利要求中限定的示例性实施例的范围内。因此,应理解,前述内容是对各种示例实施例的说明,而不应被解释成限制于所公开的具体示例实施例,并且对所公开的示例实施例的修改以及其他示例实施例旨在被包括在所附权利要求的范围内。
Claims (20)
1.一种操作存储系统的方法,所述方法包括:
主机设备将第一安全数据和用于防止重放攻击的第一时间戳写入作为外部存储区域的第一存储区域;
所述主机设备基于所述第一时间戳来更新第二时间戳,所述第二时间戳对应于所述第一时间戳并存储在与所述第一存储区域不同的第二存储区域中;
所述主机设备接收表示更新结果的第一通知信号;以及
当所述主机设备基于所述第一通知信号确定所述第二时间戳成功更新时,完成所述第一安全数据的写操作。
2.根据权利要求1所述的方法,还包括:
当所述存储系统通电时,所述主机设备基于存储在所述第二存储区域中的所述第二时间戳来设置所述第一时间戳。
3.根据权利要求2所述的方法,其中,设置所述第一时间戳包括:
所述主机设备基于第一随机数来生成时间戳设置命令;
所述第二存储区域基于所述时间戳设置命令和第二随机数来生成设置响应信号;以及
所述主机设备基于所述设置响应信号来设置所述第一时间戳,使得所述第一时间戳的值等于所述第二时间戳的值。
4.根据权利要求3所述的方法,其中,设置所述第一时间戳还包括:
所述主机设备和所述第二存储区域基于所述第一随机数和所述第二随机数来生成会话密钥。
5.根据权利要求2所述的方法,其中,仅在所述第一时间戳的设置成功完成之后,才执行所述第一安全数据的写操作。
6.根据权利要求1所述的方法,其中,将所述第一安全数据和所述第一时间戳写入所述第一存储区域包括:
所述主机设备对所述第一安全数据进行加密;
所述主机设备针对加密的第一安全数据和所述第一时间戳生成第一消息认证码;以及
所述主机设备将所述加密的第一安全数据和所述第一消息认证码发送给所述第一存储区域,所述加密的第一安全数据和所述第一消息认证码存储在所述第一存储区域中。
7.根据权利要求6所述的方法,还包括:
所述主机设备从所述第一存储区域读取所述加密的第一安全数据和所述第一消息认证码;以及
所述主机设备基于所述第一时间戳来检查对于所述第一安全数据是否发生了重放攻击。
8.根据权利要求7所述的方法,其中,检查是否发生了重放攻击包括:
当所述主机设备中的第一时间戳和所述第一消息认证码中的第一时间戳具有相同的值时,确定尚未发生重放攻击;以及
当所述主机设备中的第一时间戳和所述第一消息认证码中的第一时间戳具有不同的值时,确定已发生重放攻击。
9.根据权利要求1所述的方法,其中,更新所述第二时间戳包括:
所述主机设备基于所述第一时间戳和会话密钥来生成时间戳更新命令;以及
所述第二存储区域基于所述时间戳更新命令来更新所述第二时间戳,使得所述第二时间戳的值等于所述第一时间戳的值。
10.根据权利要求1所述的方法,还包括:
当所述主机设备基于所述第一通知信号确定所述第二时间戳没有成功更新时,确定所述第一安全数据的写操作失败。
11.根据权利要求1所述的方法,其中,无论何时将所述第一安全数据写入所述第一存储区域,都在所述第二存储区域中改变并更新所述第一时间戳。
12.根据权利要求11所述的方法,还包括:
所述主机设备改变所述第一安全数据和所述第一时间戳;
所述主机设备将改变后的第一安全数据和改变后的第一时间戳重新写入所述第一存储区域;
所述主机设备基于改变后的第一时间戳来重新更新所述第二时间戳;
所述主机设备接收第二通知信号,所述第二通知信号表示重新更新所述第二时间戳的结果;以及
当所述主机设备基于所述第二通知信号确定所述第二时间戳成功地重新更新时,完成改变后的第一安全数据的重写操作。
13.根据权利要求1所述的方法,其中:
所述第一存储区域包括在布置在所述主机设备外部的非易失性存储器设备中,以及
所述第二存储区域包括在与所述非易失性存储器设备分开形成的安全非易失性存储器设备中。
14.根据权利要求1所述的方法,其中,所述第一存储区域和所述第二存储区域包括在布置在所述主机设备外部的非易失性存储器设备中。
15.一种存储系统,包括:
主机设备,被配置为处理第一安全数据和用于防止重放攻击的第一时间戳;
非易失性存储器设备,由所述主机设备控制,布置在所述主机设备外部,并且包括其中写入所述第一安全数据和所述第一时间戳的第一存储区域;以及
安全非易失性存储器设备,由所述主机设备控制,与所述非易失性存储器设备分开形成,并且包括其中写入与所述第一时间戳相对应的第二时间戳的第二存储区域,
其中,所述主机设备被配置为将所述第一安全数据和所述第一时间戳写入所述第一存储区域,并基于所述第一时间戳来更新所述第二时间戳,
其中,所述安全非易失性存储器设备被配置为生成表示所述第二时间戳的更新结果的第一通知信号,以及
其中,所述主机设备被配置为当基于所述第一通知信号确定所述第二时间戳成功更新时,完成所述第一安全数据的写操作。
16.根据权利要求15所述的存储系统,还包括:
安全元件,集成在所述主机设备中,
其中,所述第一安全数据和所述第一时间戳由所述安全元件处理。
17.根据权利要求16所述的存储系统,其中,所述安全元件和所述安全非易失性存储器设备使用安全协议来彼此通信。
18.根据权利要求15所述的存储系统,其中,所述主机设备和所述安全非易失性存储器设备形成在单个半导体封装中。
19.根据权利要求15所述的存储系统,其中,所述主机设备和所述安全非易失性存储器设备形成在分离的半导体封装中。
20.一种存储系统,包括:
主机设备,被配置为处理第一安全数据和用于防止重放攻击的第一时间戳;以及
非易失性存储器设备,由所述主机设备控制,布置在所述主机设备外部,包括其中写入所述第一安全数据和所述第一时间戳的第一存储区域,并且包括其中写入与所述第一时间戳相对应的第二时间戳的第二存储区域,所述第二存储区域与所述第一存储区域不同,
其中,所述主机设备被配置为将所述第一安全数据和所述第一时间戳写入所述第一存储区域,并基于所述第一时间戳来更新所述第二时间戳,
其中,所述非易失性存储器设备被配置为生成表示所述第二时间戳的更新结果的第一通知信号,以及
其中,所述主机设备被配置为当基于所述第一通知信号确定所述第二时间戳成功更新时,完成所述第一安全数据的写操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2019-0054677 | 2019-05-10 | ||
KR1020190054677A KR20200129776A (ko) | 2019-05-10 | 2019-05-10 | 재전송 공격에 대한 방어책을 포함하는 메모리 시스템의 구동 방법 및 이를 수행하는 메모리 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111913908A true CN111913908A (zh) | 2020-11-10 |
Family
ID=72943399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010336704.1A Pending CN111913908A (zh) | 2019-05-10 | 2020-04-24 | 具有重放攻击对抗措施的存储系统及其操作方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11552801B2 (zh) |
KR (1) | KR20200129776A (zh) |
CN (1) | CN111913908A (zh) |
DE (1) | DE102020103846A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113505363A (zh) * | 2021-08-04 | 2021-10-15 | 上海瓶钵信息科技有限公司 | 通过软件方式实现存储空间防重放的方法和系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20240004803A1 (en) * | 2022-06-29 | 2024-01-04 | Samsung Electronics Co., Ltd. | Secure element and electronic device including the same |
Family Cites Families (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4040034A (en) * | 1975-12-04 | 1977-08-02 | International Business Machines Corporation | Data security system employing automatic time stamping mechanism |
FI115098B (fi) * | 2000-12-27 | 2005-02-28 | Nokia Corp | Todentaminen dataviestinnässä |
US7774597B2 (en) * | 2003-06-27 | 2010-08-10 | Ram Gopal Lakshmi Narayanan | System and method for nodes communicating in a shared network segment |
US8200826B1 (en) * | 2004-09-09 | 2012-06-12 | Openwave Systems Inc. | Communal memory |
US7468981B2 (en) * | 2005-02-15 | 2008-12-23 | Cisco Technology, Inc. | Clock-based replay protection |
JP4150037B2 (ja) * | 2005-09-30 | 2008-09-17 | 株式会社東芝 | タイムスタンプ取得システム、タイムスタンプ取得装置、タイムスタンプ取得プログラム及びタイムスタンプ取得方法 |
JP5343071B2 (ja) * | 2007-06-08 | 2013-11-13 | サンディスク テクノロジィース インコーポレイテッド | エンティティの認証に用いる時間推定の精度を向上させるための回路を備えるメモリ装置とその装置で使用する方法 |
US20080307507A1 (en) * | 2007-06-08 | 2008-12-11 | Conley Kevin M | Memory device using time from a trusted host device |
US8533474B2 (en) * | 2008-02-27 | 2013-09-10 | Red Hat, Inc. | Generating session keys |
US8543091B2 (en) * | 2008-06-06 | 2013-09-24 | Ebay Inc. | Secure short message service (SMS) communications |
US20100138917A1 (en) * | 2008-12-01 | 2010-06-03 | Xia Zhanhong | Refresh mechanism for rate-based statistics |
US9342691B2 (en) * | 2013-03-14 | 2016-05-17 | Bandura, Llc | Internet protocol threat prevention |
US8448009B2 (en) * | 2009-08-17 | 2013-05-21 | Sandisk Il Ltd. | Method and memory device for generating a time estimate |
DE102009058516A1 (de) * | 2009-12-16 | 2011-06-22 | Siemens Aktiengesellschaft, 80333 | Vorrichtung und Verfahren zum Gewähren von Zugriffsrechten auf eine Wartungsfunktionalität |
CN102110200A (zh) * | 2009-12-25 | 2011-06-29 | 凹凸电子(武汉)有限公司 | 计算机可执行的认证方法 |
CN101789864B (zh) * | 2010-02-05 | 2012-10-10 | 中国工商银行股份有限公司 | 一种网上银行后台身份认证方法、装置及系统 |
US8417966B1 (en) * | 2010-05-28 | 2013-04-09 | Adobe Systems Incorporated | System and method for measuring and reporting consumption of rights-protected media content |
US8468365B2 (en) * | 2010-09-24 | 2013-06-18 | Intel Corporation | Tweakable encryption mode for memory encryption with protection against replay attacks |
US20120110343A1 (en) * | 2010-10-29 | 2012-05-03 | Bandic Zvonimir Z | Trustworthy timestamps on data storage devices |
JP5617709B2 (ja) * | 2011-03-16 | 2014-11-05 | 富士通株式会社 | プログラム、制御装置および方法 |
KR101577886B1 (ko) * | 2011-06-29 | 2015-12-15 | 인텔 코포레이션 | 무결성 검사 및 리플레이 공격들에 대한 보호를 이용하는 메모리 암호화를 위한 방법 및 장치 |
CN103814359B (zh) * | 2011-07-01 | 2017-12-12 | 华为技术有限公司 | 用于制作存储装置快照的系统和方法 |
US8645967B2 (en) * | 2011-08-30 | 2014-02-04 | Microsoft Corporation | Efficient secure data marshaling through at least one untrusted intermediate process |
US20130077641A1 (en) * | 2011-09-22 | 2013-03-28 | Harley F. Burger, Jr. | Systems, Circuits and Methods for Time Stamp Based One-Way Communications |
US9449169B2 (en) * | 2012-03-26 | 2016-09-20 | Vmware, Inc. | Block storage virtualization on commodity secure digital cards |
KR101975027B1 (ko) | 2012-05-04 | 2019-05-03 | 삼성전자주식회사 | 시스템 온 칩, 이의 동작 방법, 이를 포함하는 장치들 |
US9471793B2 (en) | 2013-01-07 | 2016-10-18 | Infineon Technologies Ag | System on chip with embedded security module |
US9071581B2 (en) | 2013-09-23 | 2015-06-30 | Nvidia Corporation | Secure storage with SCSI storage devices |
US9686077B2 (en) * | 2014-03-06 | 2017-06-20 | Microsoft Technology Licensing, Llc | Secure hardware for cross-device trusted applications |
KR20160005264A (ko) * | 2014-07-04 | 2016-01-14 | 삼성전자주식회사 | 저장 장치 및 그것의 읽기 방법들 |
US9621549B2 (en) | 2014-07-25 | 2017-04-11 | Qualcomm Incorporated | Integrated circuit for determining whether data stored in external nonvolative memory is valid |
US9658793B2 (en) * | 2015-02-20 | 2017-05-23 | Qualcomm Incorporated | Adaptive mode translation lookaside buffer search and access fault |
KR101737520B1 (ko) * | 2015-04-30 | 2017-05-18 | 성균관대학교산학협력단 | 기기간 인터랙션 기반의 차량 사고 정보 전송 방법 및 장치, 차량 사고 정보 수집 방법 및 장치 |
JP6473674B2 (ja) | 2015-07-28 | 2019-02-20 | ルネサスエレクトロニクス株式会社 | 通信端末およびプログラム |
US10127405B2 (en) | 2016-05-10 | 2018-11-13 | Qualcomm Incorporated | Techniques for determining an anti-replay counter for preventing replay attacks |
US20170329995A1 (en) | 2016-05-10 | 2017-11-16 | Qualcomm Incorporated | Anti-replay techniques using secure external non-volatile memory |
US10764066B2 (en) * | 2016-05-18 | 2020-09-01 | Apple Inc. | EUICC secure timing and certificate revocation |
CN107515724B (zh) * | 2016-06-16 | 2021-04-02 | 伊姆西Ip控股有限责任公司 | 用于再现存储系统的输入输出的方法和设备 |
US10678924B2 (en) | 2016-08-10 | 2020-06-09 | Qualcomm Incorporated | Hardware-based software-resilient user privacy exploiting ephemeral data retention of volatile memory |
CN106330452B (zh) * | 2016-08-13 | 2020-02-18 | 广东中云智安科技有限公司 | 一种用于区块链的安全网络附加装置及方法 |
US10615973B2 (en) * | 2016-12-27 | 2020-04-07 | Fotonation Limited | Systems and methods for detecting data insertions in biometric authentication systems using encryption |
US11405185B2 (en) * | 2017-09-28 | 2022-08-02 | Apple Inc. | Methods and architectures for secure ranging |
KR102488636B1 (ko) * | 2017-11-23 | 2023-01-17 | 삼성전자주식회사 | 데이터 및 타임스탬프를 암호화하는 암호화 장치, 이를 포함하는 시스템 온 칩, 및 전자 장치 |
US10594671B2 (en) * | 2018-02-08 | 2020-03-17 | Dell Products L.P. | System and method for preventing well behaving clients from causing account lockouts in a group |
CN108683501B (zh) * | 2018-03-01 | 2021-01-05 | 如般量子科技有限公司 | 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法 |
CN111161448B (zh) * | 2018-11-07 | 2022-10-04 | 北京燧昀科技有限公司 | 数据存储方法、数据校验方法、装置、设备及存储介质 |
US11128609B1 (en) * | 2018-12-13 | 2021-09-21 | Secure Channels, Inc. | System and method to improve user authentication for enhanced security of cryptographically protected communication sessions |
KR102226258B1 (ko) * | 2018-12-29 | 2021-03-12 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 재전송 공격을 검출하기 위한 시스템 및 방법 |
US11120167B2 (en) * | 2019-03-25 | 2021-09-14 | Micron Technology, Inc. | Block chain based validation of memory commands |
WO2021110288A1 (en) * | 2019-12-04 | 2021-06-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Authentication of an entity |
-
2019
- 2019-05-10 KR KR1020190054677A patent/KR20200129776A/ko not_active Application Discontinuation
-
2020
- 2020-02-13 US US16/790,243 patent/US11552801B2/en active Active
- 2020-02-14 DE DE102020103846.1A patent/DE102020103846A1/de active Pending
- 2020-04-24 CN CN202010336704.1A patent/CN111913908A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113505363A (zh) * | 2021-08-04 | 2021-10-15 | 上海瓶钵信息科技有限公司 | 通过软件方式实现存储空间防重放的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
US11552801B2 (en) | 2023-01-10 |
KR20200129776A (ko) | 2020-11-18 |
DE102020103846A1 (de) | 2020-11-12 |
US20200358620A1 (en) | 2020-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111090388B (zh) | 使用主机存储器缓冲器的数据存储设备及其操作方法 | |
CN106462509B (zh) | 用于保全存取保护方案的设备及方法 | |
US11714578B2 (en) | Method of operating storage device, storage device performing the same and method of operating storage system using the same | |
CN111539043B (zh) | 提供对受保护存储器的存取的系统 | |
KR102188062B1 (ko) | 데이터 저장 장치의 동작 방법과 상기 데이터 저장 장치를 포함하는 시스템의 동작 방법 | |
US11726672B2 (en) | Operating method of storage device setting secure mode of command, and operating method of storage system including the storage device | |
CN109800187B (zh) | 被配置为更新现场可编程门阵列的存储设备及其操作方法 | |
KR102558901B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
CN110046506A (zh) | 存储设备和包括存储设备的存储系统及使用其进行操作的方法 | |
US20210223961A1 (en) | Storage device and host for the same | |
US11928192B2 (en) | Vendor unique command authentication system, and a host device, storage device, and method employing the same | |
US11552801B2 (en) | Method of operating memory system with replay attack countermeasure and memory system performing the same | |
US20230004320A1 (en) | Method of managing debugging log in storage device | |
KR20200089939A (ko) | 메모리 시스템 및 그 동작 방법 | |
EP4180977A1 (en) | Parameter change command for storage device interface tuning | |
KR20220020636A (ko) | 메모리 컨트롤러, 상기 메모리 컨트롤러를 포함하는 메모리 장치 및 상기 메모리 컨트롤러의 동작 방법 | |
US11550906B2 (en) | Storage system with separated RPMB sub-systems and method of operating the same | |
KR20210060867A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR20210032629A (ko) | 지문 인식 센서를 포함하는 스토리지 장치의 구동 방법 및 이를 수행하는 스토리지 장치 | |
KR20220087297A (ko) | 처리 코드를 실행하는 스토리지 장치 및 이의 동작 방법 | |
KR102509646B1 (ko) | 스토리지 장치 | |
US20230289071A1 (en) | Electronic device and method of operating the same | |
KR20220026079A (ko) | 스토리지 장치 | |
KR20220092770A (ko) | 커맨드의 보안 모드를 설정하는 스토리지 장치의 동작 방법, 및 스토리지 장치를 포함하는 스토리지 시스템의 동작 방법 | |
KR20180127594A (ko) | 데이터 저장 장치 및 그것의 동작 방법 |
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 |