CN112948793A - 存储控制器、包括其的存储设备及存储控制器的操作方法 - Google Patents
存储控制器、包括其的存储设备及存储控制器的操作方法 Download PDFInfo
- Publication number
- CN112948793A CN112948793A CN202011156305.3A CN202011156305A CN112948793A CN 112948793 A CN112948793 A CN 112948793A CN 202011156305 A CN202011156305 A CN 202011156305A CN 112948793 A CN112948793 A CN 112948793A
- Authority
- CN
- China
- Prior art keywords
- unique value
- security key
- biometric
- data
- storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 18
- 238000012545 processing Methods 0.000 claims abstract description 52
- 230000004044 response Effects 0.000 claims description 11
- 238000013500 data storage Methods 0.000 claims 2
- 238000011017 operating method Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 18
- 230000002093 peripheral effect Effects 0.000 description 9
- 101100041821 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) AI4 gene Proteins 0.000 description 4
- 101100225893 Saccharomyces cerevisiae ENS2 gene Proteins 0.000 description 4
- 101150074417 SSC1 gene Proteins 0.000 description 3
- 101000882406 Staphylococcus aureus Enterotoxin type C-1 Proteins 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 102100040837 Galactoside alpha-(1,2)-fucosyltransferase 2 Human genes 0.000 description 2
- 101000893710 Homo sapiens Galactoside alpha-(1,2)-fucosyltransferase 2 Proteins 0.000 description 2
- 101000882403 Staphylococcus aureus Enterotoxin type C-2 Proteins 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 101100041823 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) AI3 gene Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 150000003839 salts Chemical class 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000003462 vein Anatomy 0.000 description 1
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/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1466—Key-lock mechanism
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1483—Protection against unauthorised use of memory or access to memory by checking the subject access rights using an access-table, e.g. matrix or list
-
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/13—Sensors therefor
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/107—License processing; Key processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1052—Security improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7208—Multiple device management, e.g. distributing data over multiple flash devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Storage Device Security (AREA)
Abstract
提供存储控制器、包括其的存储设备及存储控制器的操作方法。一种用于控制非易失性存储装置的存储控制器包括:密钥管理单元,所述密钥管理单元被配置为基于从外部设备接收到的生物特征认证消息和独特值来控制对安全密钥的访问权限;以及数据处理单元,所述数据处理单元被配置为基于所述安全密钥对从主机接收到的数据进行加密并且对存储在所述非易失性存储装置中的数据进行解密。
Description
相关申请的交叉引用
本申请要求于2019年11月26日在韩国知识产权局提交的韩国专利申请No.10-2019-0153549的优先权的权益,其全部公开内容通过引用合并于此。
技术领域
发明构思涉及一种存储设备,并且更具体地,涉及一种支持自加密的存储控制器、包括该存储控制器的存储设备以及该存储控制器的操作方法。
背景技术
作为非易失性存储器,闪存即使被切断供电也可以保持存储在其中的数据。诸如固态硬盘(SSD)以及存储卡的包括闪存的存储设备已被广泛使用。近来,随着对数据安全性的需求增长,使用了支持自加密的存储设备,以安全地存储数据(例如,需要安全性的重要数据)并且即使在存储设备丢失或被盗之后也可以防止和/或降低数据泄漏的可能性。存储设备还可以支持基于生物特征认证的自加密。
发明内容
发明构思提供了一种存储控制器、包括该存储控制器的存储设备和/或该存储控制器的操作方法,该存储控制器能够基于从生物特征模块/电路提供的生物特征信息来加密和解密存储在存储装置中的用户数据。
根据发明构思的一方面,提供了一种包括处理电路的存储控制器,所述处理电路被配置为基于生物特征认证消息和独特值来控制对安全密钥的访问权限,所述生物认证消息和所述独特值是从外部设备接收的,并且基于所述安全密钥对数据进行加密,所述数据是从主机接收的并且被存储在所述非易失性存储装置的安全区域中,所述处理电路还被配置为基于所述安全密钥对加密数据进行解密,所述加密数据被存储在所述非易失性存储装置的安全密钥中。
根据发明构思的另一方面,提供了提供一种存储设备,所述存储设备包括:非易失性存储装置,所述非易失性存储装置包括第一区域和第二区域;以及处理电路,所述处理电路被配置为接收第一独特值和生物特征认证结果,所述第一独特值对应于用户的生物特征信息,并且基于所述第一独特值对第一数据进行加密和对第二数据进行解密,所述第一数据存储在所述第一区域中,所述第二数据是从加密得到的并且是从所述第一区域读取的。
根据发明构思的又一方面,提供了一种控制非易失性存储装置的存储控制器的操作方法,所述操作方法包括:从外部设备接收独特值和生物特征认证成功消息,所述独特值对应于用户的生物特征信息;基于所述独特值对加密安全密钥进行解密,所述加密安全密钥被存储在所述处理电路中;基于解密的安全密钥对数据进行加密,所述数据是从主机接收的;以及向所述非易失性存储装置发送加密数据。
附图说明
通过以下结合附图的详细描述,将更清楚地理解发明构思的示例实施例,其中:
图1是根据一些示例实施例的存储系统的框图;
图2A和图2B分别是根据示例实施例的存储控制器和生物特征模块的操作方法的流程图;
图3是根据一些示例实施例的存储控制器的示例的框图;
图4是根据一些示例实施例的生物特征模块的示例的框图;
图5是根据一些示例实施例的存储系统的操作方法的流程图;
图6是非易失性存储装置的框图;
图7A和图7B是用于描述根据示例实施例的存储设备的操作方法的示例的示图;
图8是用于描述根据一些示例实施例的存储设备的操作方法的示例的示图;
图9A至图9C是根据一些示例实施例的存储系统的框图;
图10示出了根据一些示例实施例的计算系统;以及
图11是根据一些示例实施例的固态硬盘(SSD)系统的框图。
具体实施方式
在下文中,将参照附图详细描述实施例。
图1是根据一些示例实施例的存储系统的框图。
参照图1,存储系统10可以包括存储设备100、主机200和生物特征模块300。存储设备100可以包括存储控制器110和非易失性存储装置(NVM)120。
例如,存储系统10可以实现为个人计算机(PC)、数据服务器、网络附接存储(network-attached storage)、物联网(IoT)设备或便携式电子设备中的至少一种。便携式电子设备可以包括膝上型计算机、移动电话、智能电话、平板PC、个人数字助理(PDA)、企业数字助理(EDA)、数字静态照相机、数字摄像机、音频设备、便携式多媒体播放器(PMP)、个人导航设备(PND)、MP3播放器、手持游戏机、电子书、可穿戴设备等。
在一些示例实施例中,存储设备100可以包括嵌入在电子设备中的内部存储器。例如,存储设备100可以包括SSD、嵌入式通用闪存(UFS)存储装置或嵌入式多媒体卡(eMMC)。在一些示例实施例中,存储设备100可以包括以可拆卸的方式安装在电子设备上的外部存储器。例如,存储设备100可以包括便携式SSD、UFS存储卡、紧凑型闪存(CF)卡、安全数字(SD)卡、微型SD卡、超微型SD卡、极限数字(xD)卡或存储棒。
主机200可以将命令CMD和/或数据发送到存储设备100以存储在非易失性存储装置120中,并且可以从存储设备100接收从非易失性存储装置120读取到的响应RES和/或数据。例如,主机200可以实现为和/或包括应用处理器(AP)和/或片上系统(SoC)。例如,主机200可以实现为和/或包括但不限于集成电路、主板和/或数据库服务器。
主机200可以通过各种接口与存储设备100通信。在一些示例实施例中,主机200使用电缆经由可热插拔的接口电连接到存储设备100。
存储控制器110可以控制存储设备100的所有操作。存储控制器110可以响应于来自主机200的命令CMD,将数据写入非易失性存储装置120和/或从非易失性存储装置120读取数据。在下文中,从主机200接收并写入非易失性存储装置120和/或从非易失性存储装置120读取并提供给主机200的数据被称为用户数据。
非易失性存储装置120可以指和/或包括其特征在于在掉电/断电之后保留存储在其中的数据的存储器或存储装置。因此,即使在中断向存储设备100的供电时,也可以保留存储在非易失性存储装置120中的用户数据。在一些示例实施例中,非易失性存储装置120可以包括闪存装置,例如,NAND闪存装置。在一些示例实施例中,非易失性存储装置120可以包括具有三维(3D)阵列结构的垂直NAND(VNAND)闪存装置,但不限于此。例如,非易失性存储装置120可以包括诸如电阻随机存取存储器(ReRAM)、相变RAM(PRAM)和/或磁性RAM(MRAM)的电阻存储装置。非易失性存储装置120可以包括除了半导体存储装置之外的磁盘装置。为了以下描述的方便,假设非易失性存储装置120包括NAND闪存装置,但是示例实施例不限于此。在一些示例实施例中,非易失性存储装置120可以包括多个NVM芯片,其可以通过多个通道与存储控制器110通信。
考虑到即使在断电之后非易失性存储装置120的非易失性仍保持数据,有必要和/或期望保持存储在非易失性存储装置120中的用户数据是安全的。例如,当存储设备100被重新使用和/或被丢弃和/或被未授权用户使用时,有必要/期望防止或降低存储在存储设备100(例如,非易失性存储装置120)中的需要安全性的用户数据被公开的可能性。为了防止/降低用户数据被公开的可能性,存储设备100可以支持自加密。存储设备100可以加密用户数据并将其存储在非易失性存储装置120中。存储在非易失性存储装置120中的用户数据保持加密,因此,即使在中断向存储设备100的供电时,用户数据也可以保持安全。如上所述的支持自加密的存储设备100可以被称为自加密设备或自加密驱动器(SED)。
存储控制器110可以基于从生物特征模块300接收到的独特值UNQV来加密和/或解密用户数据。在一些示例实施例中,存储控制器110可以基于从主机200接收到的用户密码(和/或主机密钥)加密和解密用户数据,并且即使在未从主机200接收到用户密码的情况下,也可以基于在成功的生物特征认证的情况下从生物特征模块300接收到的独特值UNQV加密和解密用户数据。
详细地,存储控制器110可以基于安全密钥KEY_SEC(和/或加密和解密密钥)实时地加密和/或解密用户数据。此时,为了防止/降低未授权用户访问安全密钥KEY_SEC的机会,存储控制器110可以基于独特值UNQV来加密和/或解密安全密钥KEY_SEC。
例如,在注册用户的生物特征信息阶段,存储控制器110可以从生物特征模块300接收生物特征信息注册消息以及基于注册的生物特征信息产生的独特值UNQV,可以基于独特值UNQV对安全密钥KEY_SEC进行加密,并可以存储加密的安全密钥(以下简称为加密安全密钥)KEY_ENS。此后,例如,当在存储设备100与主机200断开连接和/或断电或与另一主机连接之后,存储设备100重新连接到主机200时,例如,当请求对非易失性存储装置120的写入和/或读取权限时,存储控制器110可以从生物特征模块300接收消息MSG和独特值UNQV,并且当消息MSG指示成功的生物特征认证时,基于独特值UNQV执行用户认证。当用户认证成功时,存储控制器110可以通过基于独特值UNQV对加密安全密钥KEY_ENS进行解密来获得对安全密钥KEY_SEC的访问权限,并且可以将非易失性存储装置120设置为解锁状态。当非易失性存储装置120处于解锁状态时,可以对非易失性存储装置120的安全区域执行访问(例如,写入和/或读取访问)。存储控制器110可以通过基于安全密钥KEY_SEC对用户数据进行加密和/或解密来访问非易失性存储装置120。存储控制器110可以包括数据处理单元111和安全密钥管理单元112。数据处理单元111可以加密和/或解密用户数据。数据处理单元111可以基于安全密钥KEY_SEC对从主机200接收到的数据进行加密,并将加密数据存储在非易失性存储装置120中。数据处理单元111可以基于安全密钥KEY_SEC对从非易失性存储装置120读取的加密数据进行解密,并且可以将解密数据发送到主机200。可以基于由存储设备100的硬件逻辑产生的随机属性密钥和/或基于随机属性密钥和从外部设备(例如,主机200)提供的独特密钥的组合来产生安全密钥KEY_SEC。在一些示例实施例中,可以为非易失性存储装置120的整个安全区域产生一个安全密钥KEY_SEC,或者,可选择地,可以为非易失性存储装置120的安全区域的多个部分分别产生不同的安全密钥KEY_SEC。
安全密钥管理单元112可以控制对安全密钥KEY_SEC的访问。当存储控制器110获得对安全密钥KEY_SEC的访问时,非易失性存储装置120可以被设置为解锁状态。
安全密钥管理单元112可以基于从生物特征模块300接收到的消息MSG和独特值UNQV设置安全密钥KEY_SEC的访问权限(可以称为用户权限)和/或执行访问权限认证(或称为用户认证)。在一些示例实施例中,安全密钥管理单元112可以基于独特值UNQV或从主机200提供的用户密码来控制对安全密钥KEY_SEC的访问。
在一些示例实施例中,可以在生物特征模块300中注册多项生物特征信息。安全密钥管理单元112可以从生物特征模块300接收与各项生物特征信息相对应的多个独特值UNQV。安全密钥管理单元112可以基于独特值UNQV来加密安全密钥(例如,一个安全密钥KEY_SEC),并且可以产生并存储多个加密安全密钥KEY_ENS。此后,在用户认证期间,安全密钥管理单元112可以通过对加密安全密钥KEY_ENS当中的与接收到的独特值UNQV相对应的加密安全密钥KEY_ENS进行解密来获得对安全密钥KEY_SEC的访问权限,并且可以将非易失性存储装置120设置成解锁状态。
此时,安全密钥管理单元112可以从生物特征模块300接收消息MSG,该消息MSG指示成功的生物特征认证并且包括独特值UNQV的索引(或由独特值UNQV表示的生物特征信息),在加密安全密钥KEY_ENS当中找到与独特值UNQV相对应的加密安全密钥KEY_ENS,并基于独特值UNQV对加密安全密钥KEY_ENS进行解密。可选择地,当存储每个加密安全密钥KEY_ENS时,安全密钥管理单元112可以将编码值和对应于编码值的加密安全密钥KEY_ENS一起存储,该编码值是通过对独特值UNQV和随机值(例如,“盐”值)进行编码(或散列)而产生的。此后,当在用户认证期间接收到指示生物特征认证成功的消息MSG和独特值UNQV时,安全密钥管理单元112可以通过对独特值UNQV和随机值进行编码来产生认证编码值,并且可以通过将认证编码值与存储在其中的编码值进行比较,在加密安全密钥KEY_ENS当中找到与独特值UNQV对应的加密安全密钥KEY_ENS。
生物特征模块300可以通过感测用户的身体来获得生物特征数据,基于预定的(或者,可变的)数据格式将生物特征数据转换成生物特征信息,并且存储和管理生物特征信息。生物特征模块300可以将已经注册为被授权的多个用户中的每个用户的生物特征信息存储在包括在其中的NVM中。生物特征模块300可以根据生物特征信息产生独特值UNQV,并将消息MSG和独特值UNQV发送给存储控制器110。在生物特征信息注册期间,生物特征模块300可以向存储控制器110发送指示生物特征信息注册的消息MSG和独特值UNQV。当存储控制器110接收到消息MSG,并且消息MSG指示生物特征信息注册时,存储控制器110可以基于独特值UNQV设置用户权限。
此后,当基于获得的生物特征数据的生物特征信息与预先存储在生物特征模块300中的生物特征信息匹配时,生物特征模块300可以基于生物特征信息产生独特值UNQV,并且可以向存储控制器110发送指示成功的生物特征认证的消息MSG和独特值UNQV。存储控制器110可以响应于指示成功的生物特征认证的消息MSG,基于独特值UNQV执行用户认证。
如上所述,生物特征模块300可以通过感测用户的身体来获得生物特征信息或执行生物特征认证,存储和管理生物特征信息,并且产生与生物特征信息相对应的独特值UNQV并将其与生物特征认证消息一起提供给存储控制器110。生物特征模块300可以与存储设备100分开并且不同。例如,生物特征模块300可以与存储设备100位于不同的芯片上、和/或位于不同的SSD组件上、和/或位于不同的PCB上。
生物特征模块300可以包括可以获得用户的生物特征数据的识别模块,例如,指纹识别模块、虹膜识别模块、人脸识别模块、静脉识别模块和/或语音识别模块。
例如,指纹识别模块可以通过扫描用户的指纹来获得指纹图像作为生物特征数据,并且可以基于预定格式将指纹图像转换成指纹信息。在生物特征信息注册期间,指纹识别模块可以将指纹信息存储在其内部NVM中。指纹识别模块可以存储多个用户中的每个用户的指纹信息。指纹识别模块可以基于指纹信息产生独特值UNQV,并向存储控制器110发送独特值UNQV和指纹信息注册消息。
此后,在用户认证期间,指纹识别模块可以通过扫描用户的指纹来获得指纹图像,并且可以将指纹图像转换成指纹信息。指纹识别模块可以将指纹信息与存储在其中的指纹信息进行比较,并且可以在其中存在相同的指纹信息时,例如,当指纹信息与存储在其中的指纹信息匹配时,基于指纹信息产生独特值UNQV。指纹识别模块可以向存储控制器110发送指示成功的生物特征认证的消息MSG和独特值UNQV。
在一些示例实施例中,存储控制器110和包括存储控制器的存储设备100可以从生物特征模块300接收与用户的生物特征信息相对应的独特值UNQV和生物特征认证结果,并且可以基于独特值UNQV对安全密钥KEY_SEC执行认证。换句话说,存储控制器110可以基于从生物特征模块300接收的独特值UNQV来加密和解密用户数据。
当存储控制器110在基于用户的生物特征信息执行用户权限设置和用户认证的情况下,执行生物特征认证或者存储并管理生物特征信息时,存储控制器110的负载会增加。然而,在根据上述实施例的存储系统10中,生物特征模块300可以存储和管理生物特征信息,并且产生与生物特征信息相对应的独特值UNQV并将其提供给存储控制器110,使得存储控制器110可以基于与生物特征信息相对应的独特值执行用户权限设置和用户认证。因此,存储控制器110可以具有较小的负载,和/或安全地存储和/或管理用户数据。
图2A和图2B是根据示例实施例的操作存储控制器和生物特征模块的方法的流程图。图2A示出了注册生物特征信息的方法,图2B示出了基于生物特征信息认证用户的方法。可以在包括存储控制器的存储设备(例如,图1中的存储设备100)物理地连接到主机(例如,图1中的主机200)的状态下执行图2A和图2B的方法。
参照图2A,在操作S111中,存储控制器110可以向生物特征模块300发送生物特征信息注册触发信号。在一些示例实施例中,存储控制器110可以响应于从主机200(在图1中)接收到的请求(例如,生物特征信息注册请求命令),而向生物特征模块300发送生物特征信息注册触发信号。
在操作S121中,生物特征模块300可以获得生物特征数据。生物特征模块300可以通过感测用户的身体来获得生物特征数据。例如,当生物特征模块300包括指纹识别模块时,指纹识别模块可以感测用户的指纹并获得指纹图像。
在操作S122中,生物特征模块300可以将生物特征数据转换成生物特征信息,并且可以存储生物特征信息。例如,指纹识别模块可以基于预定的(或者,可选择地,可变的)数据格式将指纹图像转换成指纹信息。例如,指纹信息可以包括用户指纹的特征。指纹信息可以包括关于特征点之间的距离和/或特征点的位置、指纹的脊与谷之间的距离、或者脊或谷的延伸方向的信息。然而,示例实施例不限于此,并且可以完整地存储指纹图像(例如,指纹图像的一部分和/或全部)作为指纹信息。
在操作S123中,生物特征模块300可以基于生物特征信息产生独特值。例如,指纹识别模块可以基于用户的指纹信息产生指示用户的独特值。
此后,在操作S124中,生物特征模块300可以向存储控制器110发送生物特征信息注册消息和独特值。
在操作S112中,当存储控制器110接收到生物特征信息注册消息时,存储控制器110可以基于与生物特征信息注册消息一起接收到的独特值来加密安全密钥,并存储加密安全密钥。换句话说,存储控制器110可以基于独特值来执行用户权限设置。存储控制器110可以将独特值设置为用户权限的凭证值(例如,用户密码)。存储控制器110可以基于独特值对安全密钥进行加密,并将加密安全密钥存储在包括在其中的内部NVM中。
当存储了加密安全密钥时,在操作S113中,存储控制器110可以将非易失性存储装置120(在图1中)设置为锁定状态。非易失性存储装置120可以包括存储有加密用户数据的安全区域和非安全区域(例如,预定义的和/或可变的保留区域)。当非易失性存储装置120处于锁定状态时,可以限制对安全区域的访问,即,限制对安全区域的读取和/或写入。然而,对非安全区域的访问可以不受限制。例如,主机200可以从非安全区域读取数据。存储控制器110可以将非易失性存储装置120维持在锁定状态,直到用户认证成功为止。
参照图2B,在操作S211中,存储控制器110可以向生物特征模块300发送生物特征认证触发信号。在一些示例实施例中,当存储控制器110电连接到主机200或另一主机时,或者当存储控制器110通信地重新链接到主机200时,存储控制器110可以向生物特征模块300发送生物特征认证触发信号。可选择地,存储控制器110可以响应于主机200的请求(例如,生物特征认证请求命令)向生物特征模块300发送生物特征认证触发信号。
在操作S221中,生物特征模块300可以通过感测用户的身体来获得生物特征数据,并且在操作S222中,可以将生物特征数据转换成生物特征信息。操作S221和S222可以与操作S121和122相同或相似。
在操作S223中,生物特征模块300可以确定生物特征信息是否与存储在其中的生物特征信息(例如,在图2A的操作S122中存储的生物特征信息)匹配。生物特征模块300可以通过将生物特征信息与预先存储在其中的生物特征信息进行比较来执行生物特征认证。当生物特征模块300中已经存储了多项生物特征信息时,生物特征模块300可以确定多项生物特征信息中是否存在与生物特征信息匹配的任何(例如,至少一项)生物特征信息。
当生物特征信息与生物特征模块300中存储的生物特征信息不匹配时,生物特征模块300可以向存储控制器110发送生物特征认证失败消息。
当生物特征信息与生物特征模块300中存储的一个或至少一个生物特征信息匹配时,在操作S225中,生物特征模块300可以基于生物特征信息产生独特值,并且在操作S226中,可以向存储控制器110发送生物特征认证成功消息和独特值。
当存储控制器110接收到生物认证失败消息时,在操作S212中,存储控制器110可以确定用户认证失败并且可以维持非易失性存储装置120的锁定状态。
当存储控制器110接收到生物认证成功消息时,在操作S213中,存储控制器110可以基于独特值解密安全密钥。换句话说,存储控制器110基于当前接收到的独特值,对在图2A的操作S112中已经基于独特值加密的安全密钥进行解密。
在操作S214中,存储控制器110可以将非易失性存储装置120设置为解锁状态,并且在操作S215中,可以基于安全密钥对用户数据进行加密和/或解密。例如,存储控制器110可以响应于来自主机200的命令访问非易失性存储装置120的安全区域。
当存储设备100与主机200断开连接或断电时,存储控制器110可以将非易失性存储装置120设置为锁定状态。
图3是根据一些示例实施例的存储控制器的示例的框图。
参照图3,存储控制器110a可以包括处理电路(例如,处理器11)、存储器12、安全密钥存储单元13、主机接口14、外围接口15、数据处理单元16和非易失性存储器接口17(在下文中称为NVM接口17)。在一些示例实施例中,存储控制器110a的组件(例如,处理器11、存储器12、安全密钥存储单元13、主机接口14、外围接口15、数据处理单元16和NVM接口17)可以通过系统总线18彼此通信。在一些示例实施例中,存储控制器110a还可以包括其他组件,例如,只读存储器(ROM)、纠错电路和缓冲器。在一些示例实施例中,存储控制器110a的组件可以彼此完全集成,和/或组件之一的一些或全部功能可以由其他组件执行。
处理器11可以包括中央处理单元(CPU)和/或微处理器,并且可以控制存储控制器110a的所有操作。在一些示例实施例中,处理器11可以包括多核处理器,例如,双核处理器或四核处理器。
存储器12可以包括诸如动态RAM(DRAM)或静态RAM(SRAM)的易失性存储器、或非易失性存储器,并且可以装载有固件FW。固件FW可以包括实现为操作算法(例如,上面已经参照图2A和图2B描述的存储控制器110的安全密钥管理算法)的程序代码。固件FW可以存储在存储控制器110a内部或外部的非易失性存储器(例如,ROM、电可擦除可编程ROM(EEPROM)、PRAM或闪存)中,和/或可以存储在非易失性存储装置120中,并且当存储设备100(图1中)通电时,可以被加载到存储器12。
处理器11和固件FW的组合可以实现为或对应于安全密钥管理单元112。例如,当处理器11执行固件FW时,可以执行已经参照图1描述的安全密钥管理单元112的功能。处理器11可以根据安全密钥管理算法基于从生物特征模块300接收到的独特值来对安全密钥进行加密,并将加密安全密钥存储在安全密钥存储单元13中,和/或可以基于独特值对加密安全密钥进行解密。然而,实施例不限于此。安全密钥管理单元112可以由硬件模块和/或软件来实现。
安全密钥存储单元13可以存储加密安全密钥。安全密钥存储单元13可以存储基于多个独特值分别加密的多个安全密钥。安全密钥存储单元13可以包括诸如寄存器、PRAM和/或闪存的非易失性存储器。
主机接口14可以提供主机200与存储控制器110a之间的接口。例如,主机接口14可以提供根据通用串行总线(USB)、多媒体卡(MMC)、快速外围组件互连(PCI Express)、高级技术附件(ATA)、串行ATA(SATA)、并行ATA(PATA)、小型计算机系统接口(SCSI)、串行连接的SCSI(SAS)、增强型小型设备接口(ESDI)、集成驱动电子设备(IDE)等的接口。
外围接口15可以提供存储控制器110a与生物特征模块300之间的接口。例如,外围接口15可以提供诸如通用异步接收器发送器(UART)接口、内部集成电路(I2C)接口、串行外围设备接口(SPI)、移动工业处理器接口(MIPI)或嵌入式显示端口(eDP)接口的通信接口。
外围接口15可以向生物特征模块300发送生物特征信息注册触发信号或生物特征认证触发信号。外围接口15可以从生物特征模块300接收生物特征认证消息和独特值。可以接收生物特征信息注册消息或生物特征认证结果消息(例如,生物特征认证失败消息或生物特征认证成功消息)作为生物特征认证消息。
数据处理单元16可以加密和/或解密用户数据。参照图1描述的数据处理单元111可以应用于图3中的数据处理单元16。数据处理单元16可以基于安全密钥对用户数据执行加密或解密。数据处理单元16可以基于安全密钥对从主机200接收到的用户数据执行加密。例如,数据处理单元16可以基于安全密钥对用户数据进行加扰。加密用户数据可以被发送到非易失性存储装置120并被存储在其中。数据处理单元16可以基于安全密钥对从非易失性存储装置120读取的加密用户数据执行解密。例如,数据处理单元16可以基于安全密钥对加密用户数据进行解扰。解密用户数据可以被发送到主机200。
NVM接口17可以提供存储控制器110a与非易失性存储装置120之间的接口。可以通过NVM接口17在存储控制器110a与非易失性存储装置120之间发送和/或接收加密用户数据。在一些示例实施例中,NVM接口17的数目可以对应于存储设备100中包括的非易失性存储器芯片的数目或者存储控制器110a与非易失性存储装置120之间的通道的数目。
图4是根据示例实施例的生物特征模块的示例的框图。
参照图4,生物特征模块300a可以包括传感器310、控制器320、存储单元330和接口340。
传感器310可以通过感测用户的身体来获得生物特征数据。例如,当传感器310包括指纹传感器时,指纹传感器可以通过感测用户的指纹来产生或获得指纹图像。
控制器320可以产生、存储和管理生物特征信息AUIF并且可以执行生物特征认证。控制器320可以基于预定的数据格式将生物特征数据转换成模板数据,即,生物特征信息AUIF。在生物特征信息注册期间,控制器320可以将生物特征信息AUIF存储在存储单元330中。存储单元330可以包括非易失性存储器,并且即使在供应给生物特征模块300a的电力被切断时也可以保留生物特征信息AUIF。当针对多个用户执行生物特征信息注册时,存储单元330可以存储多项生物特征信息AUIF。生物特征模块300a的各个组件可以彼此集成。由一个或更多个生物特征模块300a执行的一个或更多个功能可以由生物特征模块300a的其他组件执行。
在生物特征认证期间,控制器320可以将当前通过感测用户的身体获得的生物特征信息(称为当前生物特征信息)与存储在存储单元330中的生物特征信息AUIF进行比较,并且可以确定匹配或不匹配。当存储单元330中的至少一项生物特征信息AUIF与当前生物特征信息匹配时,控制器320可以确定生物特征认证成功。控制器320可以包括额外的处理电路,例如,额外的第二处理器。
控制器320还可以基于生物特征信息产生独特值UNQV。例如,控制器320可以对生物特征信息AUIF进行编码并产生独特值UNQV。独特值UNQV可以具有可以由生物特征模块300a和存储控制器110识别的数据格式。例如,独特值UNQV可以包括几十个字节(例如,32个字节)的散列数据。
控制器320可以基于在生物特征信息注册期间存储在存储单元330中的生物特征信息(例如,注册生物特征信息)产生独特值UNQV。控制器320可以通过接口340向存储控制器110发送指示生物特征信息的注册的消息MSG以及基于注册生物特征信息产生的独特值UNQV。
在生物特征认证期间,当基于从传感器310接收到的生物特征数据而获得的生物特征信息与存储在存储单元330中的注册生物特征信息匹配时,控制器320可以基于所获得的生物特征信息产生独特值UNQV。控制器320可以通过接口340向存储控制器110发送指示成功的生物特征认证的消息MSG以及基于所获得的生物特征信息产生的独特值UNQV。在一些示例实施例中,当注册了多项生物特征信息AUIF时,例如,当基于多个用户的指纹和/或基于用户的不同指纹产生多项指纹信息并将其存储在存储单元330中时,控制器320可以将包括多项生物特征信息AUIF之中的由独特值UNQV表示的一项生物特征信息AUIF的索引(或该项生物特征信息AUIF的对象)的消息MSG与独特值UNQV一起发送给存储控制器110。在生物特征信息注册期间,控制器320可以产生包括生物特征信息注册信号以及指示与独特值UNQV相对应的生物特征信息AUIF(例如,注册生物特征信息)的索引的消息,并且可以向存储控制器110发送独特值UNQV和消息MSG。在生物特征认证期间,控制器320可以向存储控制器110发送独特值UNQV和消息MSG,该消息MSG包括生物特征认证成功信号以及指示多项注册生物特征信息AUIF之中的与所获得的生物特征信息匹配的一项生物特征信息AUIF的索引IDX。
当在生物特征模块300a中注册了多项生物特征信息AUIF时,基于多项生物特征信息AUIF的多个独特值UNQV可以被发送到存储控制器110,并且存储控制器110可以存储分别基于独特值UNQV产生的多个加密安全密钥。此时,存储控制器110可以基于索引IDX,在加密安全密钥之中识别与从生物特征模块300a和索引IDX一起接收到的独特值UNQV相对应的加密安全密钥。
控制器320可以由处理电路/处理器(例如,微控制器单元(MCU)或CPU)和固件的组合来实现,或者通过硬件逻辑(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)或复杂的可编程逻辑设备(CPLD))来实现。
接口340可以从存储控制器110接收触发信号(例如,生物特征信息注册触发信号或生物特征认证触发信号),并且可以向存储控制器110发送与生物特征认证有关的消息MSG和独特值UNQV。例如,接口340可以提供诸如UART接口、I2C接口、SPI、MIPI或eDP接口的通信接口。
图5是根据一些示例实施例的存储系统的操作方法的流程图。图6是非易失性存储装置的框图。图5的操作方法可以由图1的存储系统10执行。因此,在下面的描述中也参照图1。
参照图1和图5,在操作S10中,主机200可以连接到存储设备100。主机200可以物理地和/或无线地连接到存储设备100。例如,主机200可以通过通信电缆电连接到存储设备100,并且可以通过电源线向存储设备100提供电力。
在操作S20中,主机200可以访问非易失性存储装置120的非安全区域。参照图6,非易失性存储装置120可以包括安全区域SA和非安全区域NSA。作为预定的特定区域,非安全区域NSA可以称为保留区域。安全区域SA是存储有加密用户数据的区域。安全区域SA可以被称为用户区域,并且被划分为多个用户区域(例如,多个分区或卷(volume)),例如,第一至第三区域A1、A2和A3。
不管用户权限如何,主机200都可以访问非安全区域NSA。当用户认证成功时,主机200可以访问安全区域SA。因为在存储设备100与主机200之间的连接的初始状态下不执行用户认证,所以非易失性存储装置120可以处于锁定状态。
可以将存储在非安全区域NSA中的影子主引导记录(shadow master bootrecord,SMBR)加载到存储控制器110。主机200可以基于SMBR中包括的信息从非安全区域NSA读取数据。例如,支持用户配置的软件可以存储在非安全区域NSA中。在一些示例实施例中,该软件可以支持自加密。当主机200读取并执行软件时,可以在主机200与存储设备100之间执行用户配置。
在操作S30中,根据用户配置,可以执行用户认证。如以上参照图2B所描述的,在操作S31中,生物特征模块300可以响应于来自存储控制器110的生物特征认证触发信号来执行生物特征认证。在操作S32中,生物特征模块300可以向存储控制器110发送生物特征认证结果和独特值UNQV。当生物特征认证成功时,生物特征模块300可以产生独特值UNQV,并且可以向存储控制器110发送生物特征认证成功消息和独特值UNQV。
当存储控制器110接收到生物特征认证成功消息时,在操作S33中,存储控制器110可以基于独特值UNQV获得对安全密钥的访问权限。例如,存储控制器110可以基于独特值UNQV对加密安全密钥进行解密。存储控制器110还可以将非易失性存储装置120设置为解锁状态。
当非易失性存储装置120处于解锁状态时,可以改变非易失性存储装置120的主机200可以识别的区域。例如,存储在安全区域SA中的主引导记录(MBR)可以加载到存储控制器110。MBR可以包括关于安全区域SA的用户区域(即,第一至第三区域A1、A2和A3)的信息(例如,分区信息)。
在操作S40中,主机200可以重新链接到存储设备100。在操作S50中,主机200可以访问非易失性存储装置120的由主机200识别出的安全区域SA。换句话说,主机200可以向存储控制器110发送请求对经过用户认证的安全区域进行写入和/或读取的命令。存储控制器110可以基于安全密钥对要存储在安全区域中的数据进行加密并存储加密数据,和/或可以基于安全密钥对从安全区域读取的用户数据进行解密,并将解密用户数据发送到主机200。
图7A和图7B是用于描述根据示例实施例的存储设备的操作方法的示例的示图。图7A和图7B示出了在为多个用户中的每个用户(或者注册在生物特征模块300中的多项生物特征信息中的每项生物特征信息)设置对非易失性存储装置120的用户权限的情况下,非易失性存储装置120的每个区域根据用户认证的状态。
参照图7A,可以针对第一至第三用户(或第一生物特征信息、第二生物特征信息和第三生物特征信息)执行生物特征信息注册。生物特征模块300可以为第一用户产生第一独特值UNQV1,为第二用户产生第二独特值UNQV2,为第三用户产生第三独特值UNQV3,并且可以将第一至第三独特值UNQV1、UNQV2和UNQV3发送到存储控制器110。当从存储设备100a接收到指示权限注册请求或权限添加请求的命令时,可以不同时对第一至第三用户执行生物特征信息注册,而是可以对第一至第三用户中的每个用户执行生物特征信息注册。
存储控制器110可以分别基于第一至第三独特值UNQV1、UNQV2和UNQV3分别为第一至第三用户设置用户权限(和/或访问权限)。为了便于描述,假设第一用户对第一区域A1具有用户权限,第二用户对第二区域A2具有用户权限,第三用户对第三区域A3具有用户权限。
然而,示例实施例不限于此。第一用户可以对第一至第三区域A1、A2和A3具有用户权限,第二用户可以对第二区域A2具有用户权限,第三用户可以对第三区域A3具有用户权限。可选择地,第一用户和第二用户可以对非易失性存储装置120的安全区域SA具有用户权限。这时,第一用户可以对第一区域A1和第二区域A2具有用户权限,第二用户可以对第二区域A2和第三区域A3具有用户权限。如上所述,多个用户中的每个用户对非易失性存储装置120的多个区域的用户权限可以变化。
当安全密钥管理单元112接收到针对第一用户的第一独特值UNQV1时,安全密钥管理单元112可以基于第一独特值UNQV1对安全密钥KEY_SEC进行加密,并且可以将第一加密安全密钥KEY_ENS1存储在安全密钥存储单元113中。类似地,当安全密钥管理单元112接收到针对第二用户的第二独特值UNQV2和针对第三用户的第三独特值UNQV3时,安全密钥管理单元112可以基于第二独特值UNQV2和第三独特值UNQV3中的每一者对安全密钥KEY_SEC进行加密,并且可以将通过加密产生的第二加密安全密钥KEY_ENS2和第三加密安全密钥KEY_ENS3存储在安全密钥存储单元113中。第一至第三区域A1、A2和A3可以被设置为锁定状态。参照图7B,当存储控制器110从生物特征模块300接收到指示成功的生物特征认证的消息MSG和第二独特值UNQV2时,存储控制器110可以根据第二用户的用户权限将第二区域A2改变为解锁状态,并且可以基于第二独特值UNQV2对第二加密安全密钥KEY_ENS2进行解密。主机200(在图1中)可以访问第二区域A2。数据处理单元111可以根据来自主机200的命令,基于安全密钥KEY_SEC对将要写入第二区域A2的用户数据进行加密和/或对从第二区域A2读取的用户数据进行解密。
图8是用于描述根据一些示例实施例的存储设备的操作方法的示例的示图。
参照图8,可以对第一用户(或第一生物特征信息)和第二用户(或第二生物特征信息)执行生物特征信息注册。生物特征模块300可以为第一用户产生第一独特值UNQV1,为第二用户产生第二独特值UNQV2,并且可以将第一独特值UNQV1和第二独特值UNQV2发送给存储控制器110。
存储控制器110可以基于第一独特值UNQV1和第二独特值UNQV2中的每一者来设置用户权限(例如,访问权限)。在一些示例实施例中,非易失性存储装置120的安全区域SA可以包括第一区域A1和第二区域A2,第一区域A1和第二区域A2可以分别对应于第一安全密钥KEY_SEC1和第二安全密钥KEY_SEC2。换句话说,数据处理单元111可以基于第一安全密钥KEY_SEC1对第一区域A1中的数据进行加密和解密,并且可以基于第二安全密钥KEY_SEC2对第二区域A2中的数据进行加密和解密。第一用户可以对第一区域A1具有用户权限,第二用户可以对第二区域A2具有用户权限。
当安全密钥管理单元112接收到第一独特值UNQV1时,安全密钥管理单元112可以基于第一独特值UNQV1对第一安全密钥KEY_SEC1进行加密,并将第一加密安全密钥KEY_ENS1存储在安全密钥存储器113中。类似地,当安全密钥管理单元112接收到第二独特值UNQV2时,安全密钥管理单元112可以基于第二独特值UNQV2对第二安全密钥KEY_SEC2进行加密,并将第二加密安全密钥KEY_ENS2存储在安全密钥存储器113中。第一区域A1和第二区域A2可以被设置为锁定状态。此后,在用户认证期间,当接收到第一独特值UNQV1时,可以基于第一独特值UNQV1对第一加密安全密钥KEY_ENS1进行解密,从而第一区域A1可以被设置为解锁状态。当接收到第二独特值UNQV2时,可以基于第二独特值UNQV2对第二加密安全密钥KEY_ENS2进行解密,从而第二区域A2可以被设置为解锁状态。
图9A至图9C是根据一些示例实施例的存储系统的框图。
参照图9A,存储系统10b可以包括主机200b和存储设备100b。生物特征模块300可以被包括在存储设备100b中。生物特征模块300可以包括与存储控制器110中包括的(第一)处理器不同的第二处理器。生物特征模块300可以与存储设备100b中的存储控制器110通信。如上所述,生物特征模块300可以感测用户的生物特征数据,并且将针对该用户的独特值和生物特征认证消息发送到存储控制器110。存储控制器110可以基于来自生物特征模块300的独特值来加密或解密用户数据。
参照图9B,存储系统10c可以包括主机200c、存储设备100c和生物特征模块300c。生物特征模块300c可以通过主机200c与存储设备100c通信。生物特征模块300c可以通过主机200c将生物特征认证消息和独特值发送到存储设备100c。在一些示例实施例中,生物特征模块300c可以被实现为主机200c的一部分。
参照图9C,存储系统10d可以包括主机200d、存储设备100d和生物特征模块300d。生物特征模块300d可以直接与存储设备100d通信,并且主机200d可以通过生物特征模块300d与存储设备100d通信。例如,生物特征模块300d可以用作中继器。
图10示出了根据示例实施例的计算系统。
参照图10,计算系统1000可以包括存储系统1100、处理器1200、RAM1300、输入/输出(I/O)设备1400、电源1500和生物特征模块1600。尽管未示出,但是计算系统1000还可以包括可以与视频卡、声卡、存储卡、USB设备等通信或者可以与其他电子设备通信的端口。计算系统1000可以包括PC或诸如笔记本计算机、移动电话、PDA或相机的便携式电子设备。
处理器1200可以执行特定的计算或任务。根据一些示例实施例,处理器1200可以包括微处理器或CPU。处理器1200可以通过包括地址总线、控制总线和数据总线的总线1700与RAM 1300、I/O设备1400和存储系统1100通信。处理器1200可以连接到诸如外围组件互连(PCI)总线的扩展总线。
存储系统1100和生物特征模块1600可以使用已经在图1至图9C中示出的存储设备100、100a、100b、100c或100d以及生物特征模块300、300a、300c或300d来实现。存储系统1100可以包括支持自加密的存储设备,并且可以基于从生物特征模块1600接收到的独特值来加密和/或解密用户数据。
RAM 1300可以存储计算系统1000的操作所需的数据。例如,RAM 1300可以包括DRAM、移动RAM、SRAM、PRAM、铁电RAM(FRAM)、电阻RAM(RRAM)和/或MRAM。I/O设备1400可以包括诸如键盘、小键盘或鼠标的输入单元以及诸如打印机或显示器的输出单元。电源1500可以供应操作计算系统1000所需的工作电压。
图11是根据示例实施例的SSD系统的框图。
参照图11,SSD系统2000可以包括主机2100、SSD 2200和生物特征模块2300。在一些示例实施例中,生物特征模块2300可以嵌入在SSD 2200中。
SSD 2200可以通过信号连接器SC与主机2100交换信号SGL,并且可以通过电源连接器PC从主机2100接收电力PWR。
SSD 2200可以包括SSD控制器2210和多个非易失性存储装置(NVM1、NVM2和NVMn)2220、2230和2240。图1至图9C的存储设备100、100a、100b、100c和100d可以应用于SSD2200。SSD控制器2210可以分别通过多个通道CH1、CH2和CHn与非易失性存储装置2220、2230和2240通信。SSD控制器2210可以基于与用户的生物特征数据相对应的独特值,对写入非易失性存储装置2220、2230和2240的用户数据进行加密,以及对从非易失性存储装置2220、2230和2240读取的用户数据进行解密,其中,独特值是从生物特征模块2300接收的。
如本文中所使用的,通过使用术语“控制器”、“电路”、“电路系统”、“单元”,或者“模块”、“处理器”、“处理电路”、“设备”,来命名并在附图中示出一些或所有组件。使用这些术语命名的组件可以利用各种硬件设备(例如,集成电路(IC)、专用IC(ASCI)、现场可编程门阵列(FPGA)或复杂的可编程逻辑设备(CPLD))、、在硬件设备上驱动的固件、诸如在硬件上执行的应用的软件、或者硬件设备和软件的组合来实现,或者可以包括利用IC中的半导体元件实现的电路和/或知识产权(IP)。术语“控制器”、“电路”、“电路系统”、“处理电路”和“设备”、“模块”等可以是可互换的和/或可以用于表达这种物理组件。诸如“控制器”、“电路”、“电路系统”、“处理电路”、“设备”、“模块”等术语可以指诸如能够运行非暂时性机器可读指令的处理器的硬件,当执行所述指令时,使控制器/电路/电路系统/处理电路/设备/模块等执行特定功能。
除了SSD系统2000之外,根据一些示例实施例的存储系统还可以安装在或应用于存储卡系统、计算系统、UFS等上。
尽管已经参考本发明构思的示例实施例具体示出和描述了发明构思,但是将理解,在不脱离所附权利要求的精神和范围的情况下,可以在形式和细节上进行各种改变。
Claims (20)
1.一种存储控制器,被配置为控制非易失性存储装置,所述存储控制器包括:
第一处理电路,所述第一处理电路被配置为:
基于生物特征认证消息和独特值控制对安全密钥的访问权限,所述生物特征认证消息和所述独特值是从外部设备接收的,并且
基于所述安全密钥对数据进行加密,所述数据是从主机接收并被存储在所述非易失性存储装置的安全区域中的,所述第一处理电路还被配置为基于所述安全密钥对加密数据进行解密,所述加密数据被存储在所述非易失性存储装置的所述安全区域中。
2.根据权利要求1所述的存储控制器,其中,所述第一处理电路还被配置为:
在用户生物特征信息注册期间,通过基于从所述外部设备接收到的所述独特值对所述安全密钥进行加密来产生加密安全密钥,并且
在用户认证期间,响应于指示生物特征认证成功的所述生物特征认证消息,通过基于所述独特值认证对所述安全密钥的所述访问权限,来对所述加密安全密钥进行解密。
3.根据权利要求2所述的存储控制器,还包括:
安全密钥存储存储器,所述安全密钥存储存储器被配置为存储所述加密安全密钥。
4.根据权利要求3所述的存储控制器,其中,所述第一处理电路还被配置为将多个加密安全密钥存储在所述安全密钥存储存储器中,并且从所述外部设备接收到的所述生物特征认证消息包括指示所述多个加密安全密钥中的一个加密安全密钥的索引。
5.根据权利要求3所述的存储控制器,其中,所述第一处理电路还被配置为将多个加密安全密钥存储在所述安全密钥存储存储器中,并且所述多个加密安全密钥中的每个加密安全密钥与通过对所述独特值和随机值进行编码而产生的编码值一起存储在所述安全密钥存储存储器中,并且
所述第一处理电路还被配置为:在所述用户认证期间,通过对所述独特值和所述随机值进行编码来产生认证编码值,并且通过将所述认证编码值与存储在所述安全密钥存储存储器中的所述编码值进行比较,在所述多个加密安全密钥之中找到与所述独特值相对应的加密安全密钥。
6.根据权利要求1所述的存储控制器,还包括:
第一接口,所述第一接口被配置为与所述外部设备通信并从所述外部设备接收所述生物特征认证消息和所述独特值。
7.根据权利要求6所述的存储控制器,还包括:
第二接口,所述第二接口被配置为与所述主机通信,以从所述主机接收所述数据和命令,并向所述主机发送解密数据。
8.根据权利要求1所述的存储控制器,其中,所述独特值对应于至少一个用户的生物特征信息。
9.一种数据存储系统,包括:
根据权利要求1所述的存储控制器,以及
第二处理电路,所述第二处理电路被包括在生物特征模块中,
其中,所述存储控制器中包括的所述第一处理电路还被配置为接收所述生物特征认证消息和所述独特值,并且
所述第二处理电路被配置为基于对用户的身体的感测产生所述用户的生物特征信息,并存储和管理所述用户的生物特征信息。
10.根据权利要求9所述的数据存储系统,其中,所述生物特征模块包括:
指纹传感器,其中,所述第二处理电路还被配置为将指纹数据转换成指纹信息并存储和管理所述指纹信息,所述指纹数据是从所述指纹传感器获得的。
11.根据权利要求1所述的存储控制器,其中,所述第一处理电路还被配置为:接收多个独特值,通过基于所述多个独特值对所述安全密钥进行加密产生多个加密安全密钥,并且存储所述多个加密安全密钥。
12.根据权利要求11所述的存储控制器,其中,所述第一处理电路还被配置为:响应于接收到生物特征认证成功消息和所述多个独特值之中的第一独特值,
通过基于所述第一独特值对所述多个加密安全密钥之中的第一加密安全密钥进行解密来恢复所述安全密钥;并且
执行以下操作中的至少一者:
(a)基于所述安全密钥对数据进行解密,所述数据是从所述非易失性存储装置的多个区域之中的至少一个区域读取的,由所述第一独特值表示的生物特征信息对所述至少一个区域具有访问权限,或
(b)基于所述安全密钥对存储在所述至少一个区域中的数据进行加密。
13.根据权利要求11所述的存储控制器,其中,所述非易失性存储装置包括第一安全区域和第二安全区域,
所述第一处理电路还被配置为基于第一安全密钥对所述第一安全区域中的数据进行加密和解密,
所述第一处理电路还被配置为基于第二安全密钥对所述第二安全区域中的数据进行加密和解密,
由第一独特值表示的第一指纹信息使得能够访问所述第一安全密钥,并且
由第二独特值表示的第二指纹信息使得能够访问所述第二安全密钥。
14.一种存储设备,包括:
非易失性存储装置,所述非易失性存储装置包括第一区域和第二区域;以及
第一处理电路,所述第一处理电路被配置为:
从第二处理电路接收第一独特值和生物特征认证结果,所述第一独特值对应于用户的生物特征信息,并且
基于所述第一独特值对第一数据进行加密和对第二数据进行解密,所述第一数据存储在所述第一区域中,所述第二数据是从加密得到的并且是从所述第一区域读取的。
15.根据权利要求14所述的存储设备,其中,所述第一处理电路还被配置为基于所述第一独特值来认证对所述第一区域的权限,并且响应于所述权限被成功认证,将所述第一区域设置成能够进行写入和读取的解锁状态。
16.根据权利要求14所述的存储设备,其中,所述第一处理电路还被配置为通过基于所述第一独特值对加密安全密钥进行解密来产生安全密钥,并且基于所述安全密钥对所述第一数据进行加密和对所述第二数据进行解密。
17.根据权利要求16所述的存储设备,其中,所述第一处理电路还被配置为:在接收到所述第一独特值之前,通过基于从所述第二处理电路与生物特征注册结果一起接收到的第二独特值对所述安全密钥进行加密,来产生所述加密安全密钥;并且
所述第一独特值和所述第二独特值包括相同的值。
18.根据权利要求17所述的存储设备,其中,所述第一处理电路还被配置为:响应于从主机接收到的命令,向所述存储控制器外部的生物特征模块发送生物特征信息注册触发信号,并在发送了所述生物特征信息注册触发信号之后,接收所述生物特征注册果和所述第二独特值。
19.一种控制非易失性存储装置的处理电路的操作方法,所述操作方法包括:
从外部设备接收独特值和生物特征认证成功消息,所述独特值对应于用户的生物特征信息;
基于所述独特值对加密安全密钥进行解密,所述加密安全密钥被存储在所述处理电路中;
基于解密的安全密钥对数据进行加密,所述数据是从主机接收的;以及
向所述非易失性存储装置发送加密数据。
20.根据权利要求19所述的操作方法,还包括:
从所述外部设备接收所述独特值和生物特征信息注册消息;
通过基于所述独特值对安全密钥进行加密产生所述加密安全密钥;以及
将所述加密安全密钥存储在内部存储器中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190153549A KR20210064854A (ko) | 2019-11-26 | 2019-11-26 | 메모리 컨트롤러, 메모리 컨트롤러를 포함하는 스토리지 장치, 및 메모리 컨트롤러의 동작 방법 |
KR10-2019-0153549 | 2019-11-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112948793A true CN112948793A (zh) | 2021-06-11 |
Family
ID=75974851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011156305.3A Pending CN112948793A (zh) | 2019-11-26 | 2020-10-26 | 存储控制器、包括其的存储设备及存储控制器的操作方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11681637B2 (zh) |
KR (1) | KR20210064854A (zh) |
CN (1) | CN112948793A (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220052016A (ko) * | 2020-10-20 | 2022-04-27 | 삼성전자주식회사 | 스토리지 장치에서의 보안 동작을 위한 키 교환 방법 및 이를 이용한 접근 권한 이관 방법 |
KR102430219B1 (ko) * | 2021-09-15 | 2022-08-05 | 삼성전자주식회사 | 스토리지 장치, 스토리지 장치의 키 생성 방법 및 스토리지 장치의 인증 방법 |
KR102482116B1 (ko) * | 2021-11-08 | 2022-12-29 | 삼성전자주식회사 | 연산 스토리지 장치의 메모리 할당 및 보호 방법 및 이를 수행하는 연산 스토리지 장치 |
TWI796058B (zh) * | 2021-12-23 | 2023-03-11 | 宇瞻科技股份有限公司 | 自動調整訊號之儲存裝置 |
US11856105B1 (en) * | 2022-05-22 | 2023-12-26 | Uab 360 It | Secure multi-factor authentication system including identity verification of an authorized user |
US11528144B1 (en) * | 2022-06-09 | 2022-12-13 | Uab 360 It | Optimized access in a service environment |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995016238A1 (en) * | 1993-12-06 | 1995-06-15 | Telequip Corporation | Secure computer memory card |
JPH11187007A (ja) | 1997-12-17 | 1999-07-09 | Casio Comput Co Ltd | 暗号化・復号化装置およびその方法 |
AU2001268102A1 (en) * | 2000-05-30 | 2001-12-11 | Dataplay, Incorporated | Method of decrypting data stored on a storage device using an embedded encryption/decryption means |
WO2003003295A1 (en) * | 2001-06-28 | 2003-01-09 | Trek 2000 International Ltd. | A portable device having biometrics-based authentication capabilities |
TW588243B (en) * | 2002-07-31 | 2004-05-21 | Trek 2000 Int Ltd | System and method for authentication |
US7478248B2 (en) * | 2002-11-27 | 2009-01-13 | M-Systems Flash Disk Pioneers, Ltd. | Apparatus and method for securing data on a portable storage device |
US8745409B2 (en) * | 2002-12-18 | 2014-06-03 | Sandisk Il Ltd. | System and method for securing portable data |
US7370166B1 (en) * | 2004-04-30 | 2008-05-06 | Lexar Media, Inc. | Secure portable storage device |
US8438647B2 (en) * | 2005-07-14 | 2013-05-07 | Imation Corp. | Recovery of encrypted data from a secure storage device |
US20070239994A1 (en) * | 2006-04-05 | 2007-10-11 | Kulkarni Vinod K | Bio-metric encryption key generator |
US8001387B2 (en) * | 2006-04-19 | 2011-08-16 | Dphi, Inc. | Removable storage medium with biometric access |
US7962755B2 (en) * | 2006-04-28 | 2011-06-14 | Ceelox, Inc. | System and method for biometrically secured, transparent encryption and decryption |
US7818395B2 (en) * | 2006-10-13 | 2010-10-19 | Ceelox, Inc. | Method and apparatus for interfacing with a restricted access computer system |
EP2122900A4 (en) * | 2007-01-22 | 2014-07-23 | Spyrus Inc | PORTABLE DATA ENCRYPTION DEVICE WITH CONFIGURABLE SAFETY FUNCTIONS AND METHOD FOR FILING ENCRYPTION |
WO2009070339A1 (en) * | 2007-11-28 | 2009-06-04 | Atrua Technologies, Inc. | System for and method of locking and unlocking a secret using a fingerprint |
JP2009238156A (ja) | 2008-03-28 | 2009-10-15 | Nippon Telegr & Teleph Corp <Ntt> | 認証装置、認証方法およびプログラム |
JP2010226506A (ja) | 2009-03-24 | 2010-10-07 | Chugoku Electric Power Co Inc:The | デジタルカメラ、記憶装置、デジタルカメラの制御方法およびプログラム |
US20110246790A1 (en) * | 2010-03-31 | 2011-10-06 | Gainteam Holdings Limited | Secured removable storage device |
EP2583212B1 (en) * | 2010-06-16 | 2019-08-14 | OneSpan International GmbH | Mass storage device memory encryption methods, systems, and apparatus |
EP2624160B1 (en) * | 2010-09-30 | 2018-12-26 | Panasonic Corporation | Biometric authentication system, communication terminal device, biometric authentication device, and biometric authentication method |
US8683232B2 (en) * | 2011-05-18 | 2014-03-25 | Cpo Technologies Corporation | Secure user/host authentication |
US9141779B2 (en) * | 2011-05-19 | 2015-09-22 | Microsoft Technology Licensing, Llc | Usable security of online password management with sensor-based authentication |
US9639710B2 (en) * | 2013-12-23 | 2017-05-02 | Symantec Corporation | Device-based PIN authentication process to protect encrypted data |
TW201633198A (zh) * | 2015-03-04 | 2016-09-16 | 映智科技股份有限公司 | 具有指紋辨識功能之儲存裝置 |
US10516533B2 (en) * | 2016-02-05 | 2019-12-24 | Mohammad Mannan | Password triggered trusted encryption key deletion |
US10560476B2 (en) * | 2017-02-22 | 2020-02-11 | International Business Machines Corporation | Secure data storage system |
-
2019
- 2019-11-26 KR KR1020190153549A patent/KR20210064854A/ko active Search and Examination
-
2020
- 2020-09-29 US US17/036,386 patent/US11681637B2/en active Active
- 2020-10-26 CN CN202011156305.3A patent/CN112948793A/zh active Pending
-
2023
- 2023-05-09 US US18/314,330 patent/US20230273884A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230273884A1 (en) | 2023-08-31 |
US11681637B2 (en) | 2023-06-20 |
US20210157747A1 (en) | 2021-05-27 |
KR20210064854A (ko) | 2021-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11681637B2 (en) | Memory controller, storage device including the same, and operating method of the memory controller | |
US11651061B2 (en) | Memory controller and storage device including the same | |
US10503934B2 (en) | Secure subsystem | |
TWI454959B (zh) | 儲存裝置保護系統及其儲存裝置上鎖與解鎖方法 | |
JP2022554288A (ja) | メモリサブシステムへの暗号鍵の委任 | |
KR20220128394A (ko) | 다인자 인증 가능 메모리 서브시스템 | |
US20210334416A1 (en) | Storage device providing function of securely discarding data and operating method thereof | |
US20230179418A1 (en) | Storage controller and method of operating electronic system | |
US20150227755A1 (en) | Encryption and decryption methods of a mobile storage on a file-by-file basis | |
CN114144784A (zh) | 对用户数据进行加密的电子装置 | |
KR101255204B1 (ko) | 보안 기능을 갖는 저장 장치 리더기 및 이를 이용한 보안 방법 | |
US12019907B2 (en) | Storage device including memory controller, and non-volatile memory system including the same and operating method thereof | |
US11755705B2 (en) | Storage device with concurrent initialization and fingerprint recognition | |
US11947466B2 (en) | Storage device, nonvolatile memory system including memory controller, and operating method of the storage device | |
CN115904219A (zh) | 电子设备 | |
KR20220052016A (ko) | 스토리지 장치에서의 보안 동작을 위한 키 교환 방법 및 이를 이용한 접근 권한 이관 방법 | |
US9158943B2 (en) | Encryption and decryption device for portable storage device and encryption and decryption method thereof | |
KR20240109066A (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 |