CN115391844A - 安全密钥存储装置 - Google Patents

安全密钥存储装置 Download PDF

Info

Publication number
CN115391844A
CN115391844A CN202210505518.5A CN202210505518A CN115391844A CN 115391844 A CN115391844 A CN 115391844A CN 202210505518 A CN202210505518 A CN 202210505518A CN 115391844 A CN115391844 A CN 115391844A
Authority
CN
China
Prior art keywords
cryptographic key
memory device
key
memory
command
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.)
Withdrawn
Application number
CN202210505518.5A
Other languages
English (en)
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.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
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 Micron Technology Inc filed Critical Micron Technology Inc
Publication of CN115391844A publication Critical patent/CN115391844A/zh
Withdrawn legal-status Critical Current

Links

Images

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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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/3242Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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 digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2133Verifying human interaction, e.g., Captcha

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请案涉及安全密钥存储装置。使用具有主机***的存储器装置与远程计算机建立安全通信通道的***、设备及方法。所述存储器装置存储表示所述主机***的标识的第一密码密钥及可用于验证所述远程计算机的标识的第二密码密钥。所述存储器装置基于密码术且独立于所述文件***来控制对所述第一密码密钥及所述第二密码密钥的存取。为了建立所述安全通道,在所述主机***中运行的应用程序与所述存储器装置通信以使用所述第一密码密钥生成用于所述远程计算机的第一消息的第一验证码,而不会向所述主机***透露所述第一密码密钥,且使用所述第二密码密钥验证由所述远程计算机为来自所述应用程序的第二消息生成的第二验证码。

Description

安全密钥存储装置
技术领域
本文中所公开的至少一些实施例大体上涉及存取控制,且更特定来说,但不限于控制对将由在主机***上运行的应用程序所使用的密码密钥的存取。
背景技术
存储器子***可包含存储数据的一或多个存储器装置。存储器装置可为例如非易失性存储器装置及易失性存储器装置。通常,主机***可利用存储器子***来将数据存储在存储器装置处及从存储器装置检索数据。
发明内容
在一个方面中,本申请案提供一种方法,所述方法包括:在连接到主机***的存储器装置中存储表示与远程计算机通信的所述主机***的标识的第一密码密钥;在所述存储器装置中存储可用于验证所述远程计算机的标识的第二密码密钥;通过所述存储器装置基于密码术且独立于由在所述主机***中运行的操作***控制的文件***来控制对所述第一密码密钥及所述第二密码密钥的存取;及在所述主机***中运行的应用程序与所述远程计算机建立安全通道期间,通过所述存储器装置与所述应用程序通信,以使用所述第一密码密钥生成用于所述远程计算机的第一消息的第一验证码,而不会向所述主机***透露所述第一密码密钥;及通过所述存储器装置与所述应用程序通信以使用所述第二密码密钥验证所述远程计算机为来自所述应用程序的第二消息生成的第二验证码。
在另一方面中,本申请案提供一种计算设备,所述计算设备包括:存储器装置,其具有存储器单元及存取控制器;及主机***,其耦合到所述存储器装置,所述主机***经配置以执行控制文件***的操作***的指令及应用程序;其中所述存储器装置经配置以:存储表示与远程计算机通信的所述主机***的标识的第一密码密钥及可用于验证所述远程计算机的标识的第二密码密钥;及基于密码术且独立于由在所述主机***中运行的操作***控制的文件***来控制对所述第一密码密钥及所述第二密码密钥的存取;且其中在所述主机***中运行的应用程序与远程计算机建立安全通道,所述应用程序经配置以与所述存储器装置通信以:使用所述第一密码密钥生成用于所述远程计算机的第一消息的第一验证码而不会向所述主机***透露所述第一密码密钥;及使用所述第二密码密钥验证由所述远程计算机为来自所述应用程序的第二消息生成的第二验证码。
在另一方面中,本申请案提供一种存储器装置,所述存储器装置包括:存储器单元,其形成在一或多个集成电路裸片上;逻辑电路,其实施密码引擎及存取控制器;及通信接口,其可连接到主机***,其中当表示与远程计算机通信的所述主机***的标识的第一密码密钥及可用于验证所述远程计算机的标识的第二密码密钥存储在具有所述存储器单元的部分的存储器区域中时,所述存取控制器经配置以基于密码术且独立于由在所述主机***中运行的操作***控制的文件***来控制对所述第一密码密钥及所述第二密码密钥的存取;其中在所述主机***中运行的应用程序与所述远程计算机通信以建立安全通道期间,所述存储器装置从所述应用程序接收命令以:使用所述第一密码密钥生成用于所述远程计算机的第一消息的第一验证码,而不会向所述主机***透露所述第一密码密钥;及使用所述第二密码密钥验证由所述远程计算机为来自所述应用程序的第二消息生成的第二验证码。
附图说明
在附图的各图中通过实例而非限制的方式说明实施例,在附图中,相同参考编号指示相同元件。
图1根据一个实施例说明具有安全管理器的集成电路存储器装置。
图2根据一个实施例说明集成电路存储器装置中标识数据的生成。
图3根据一个实施例说明用以控制存储器装置中命令的执行的技术。
图4到7根据一个实施例说明用以在存储器装置中保护用于在主机***中运行的应用程序的密码密钥的命令。
图8根据一个实施例说明用以在存储器装置中保护用于与远程计算机通信的应用程序的密码密钥的计算***。
图9根据一个实施例展示保护密码密钥的存储及使用的方法。
图10根据本公开的一些实施例说明具有存储器子***的实例计算***。
图11为本公开的实施例可在其中操作的实例计算机***的框图。
具体实施方式
本公开的至少一些方面是针对一种安全管理器,所述安全管理器经配置以保护密码密钥的存储及使用,所述密码密钥经配置以由在与远程计算机通信的主机***中运行的应用程序使用。密码密钥存储在存储器子***中,所述存储器子***经由密码密钥控制存取。存储器子***使用在存储器子***内受保护的密码密钥代表应用程序签名消息并验证签名消息。应用程序不直接处置密码密钥;且密码密钥不会在主机***中暴露及/或存储在存储器子***之外的文件***中,以降低安全风险。下文结合图10描述作为存储器子***的存储装置及存储器模块的实例。通常,主机***可利用包含一或多个组件(例如,存储数据的存储器装置)的存储器子***。主机***可提供待存储在存储器子***处的数据,且可请求待从存储器子***检索的数据。
安全外壳协议(SSH)可用于在客户端与服务器之间经由不安全的网络建立安全的通信通道。替代使用密码在客户端与服务器之间进行鉴别,SSH使用非对称密码术在客户端与服务器之间进行鉴别。例如,客户端具有一对非对称密码术的密码密钥。所述对中的一个密码密钥作为客户端的秘密私钥保存;且另一个密码密钥可作为客户端的公钥提供给服务器。使用私钥创建的数字签名可经由公钥进行验证,以证明数字签名是由具有私钥的实体创建的。由于私钥是作为客户端的秘密保存,因此可推断出数字签名是由客户端创建。类似地,服务器可具有一对公钥及私钥;且客户端可存储服务器的公钥以验证服务器的数字签名以确认及/或鉴别服务器的标识。
SSH中用于生成数字签名及验证数字签名的密码密钥可存储在文件***中的预定位置处。然而,存在对存储在文件***中的密码密钥的未经授权存取的安全风险。此外,当在主机***中运行的应用程序使用密码密钥来生成数字签名时,在其在主机***中运行的应用程序中使用期间试图存取密码密钥时存在安全攻击的风险。
本公开的至少一些方面通过将密码密钥存储在安全存储器装置中来解决上述及其它缺陷及/或挑战。使用密码密钥在安全存储器装置内执行数字签名的创建及验证,以消除或减少密码密钥在存储器装置外部的暴露或使用。
安全存储器装置可存储表示存储器装置的唯一装置秘密。可至少部分地基于唯一装置秘密来生成密码密钥。使用密码密钥生成的数字签名可用于证明至少部分地由唯一装置秘密表示的存储器装置的标识,如下文结合图2进一步所论述。
安全存储器装置可请求在执行命令以存取安全存储器区域之前使用密码密钥对命令进行签名。密码密钥表示存取安全存储器区域的特权。因此,在无密码密钥的情况下,应用程序或实体无法存取安全存储器区域,如下文结合图3进一步所论述。
安全存储器装置可经配置有用以代表主机***存储、生成及使用密码密钥的命令,如下文结合图4至7所论述。因此,在主机***中运行的应用程序不必依赖于存储器装置外部的文件***来存储密码密钥,且不必在存储器装置外部使用时以明文形式处置密码密钥。
图1根据一个实施例说明具有安全管理器的集成电路存储器装置。例如,可用于在主机***与远程计算机之间建立SSH连接的密码密钥151可存储在图1的存储器装置130中的安全存储器区域133中;且图1的存储器装置130的安全管理器113可经配置以使用存储在安全存储器区域133中的密码密钥151来创建数字签名且验证数字签名,使得在主机***中运行以与远程计算机进行SSH连接的应用程序不必直接处置密码密钥151。
集成电路存储器装置130可封围在单个集成电路封装中。集成电路存储器装置130包含可形成在一或多个集成电路裸片中的多个存储器区域131、...、133。
可分配存储器区域(例如,131或133)以供由主机***用作分区或命名空间。存储器区域(例如,131或133)中的存储器位置可由主机***经由逻辑块寻址(LBA)的地址来规定;且存储器装置130可包含地址映射,所述地址映射规定分区或命名空间中的LBA地址与用于提供分配给分区或命名空间的存储空间的对应存储器单元的物理地址之间的关系。在一些实施方案中,存储器装置130经配置在存储器子***(例如,图10中所说明的110)中;且存储器子***控制器115可经配置以执行存储器装置130的地址映射。
存储器区域(例如,131、……、133)中的典型存储器单元可经编程以存储一或多个位数据。
存储器装置130具有本地媒体控制器150,其可实施安全管理器113的至少一部分。
存储器装置130的安全管理器113可包含存取控制器109及密码引擎107。
密码引擎107可经由逻辑电路及/或指令或微码实施以执行密码计算,例如将密码散列函数应用于数据项以生成散列值,使用密码密钥对数据项进行加密以生成密文,解密密文以使用对应密码密钥恢复数据项,生成对称密码术的密码密钥及/或非对称密码术的一对密码密钥等。
存取控制器109基于表示存取特权的密码密钥来控制对存储器区域131、...、133中的至少一个的存取及/或存储器装置130的其它功能。
例如,安全管理器113可基于基于集成电路存储器装置130的秘密101生成的密码密钥及/或表示存储器装置130的所有者或授权用户的密码密钥来控制对安全存储器区域133的存取。例如,当在集成电路存储器装置130中接收到用以将数据写入到安全存储器区域133中的请求或命令时,安全管理器113验证请求是否来自具有密码密钥的请求者。如果请求并非来自具有密码密钥的请求者,那么安全管理器113可拒绝写入请求。为了证明请求来自授权请求者,请求者可使用密码密钥对请求或质询消息进行数字签名。当安全存储器装置130确定数字签名是使用正确的密码密钥进行时,请求者被视为具有将数据写入到安全存储器区域133中的许可。例如,存储器装置130可存储用于验证签名请求/命令的数字签名的密码密钥151。
存储器装置130可经配置以使用不同的密码密钥151来存取控制不同的命令。例如,一个密码密钥151可表示具有在存储器装置130中执行安全命令的特权;且安全命令用于规定另一密码密钥151表示在安全存储器区域133中读取及/或写入的特权。例如,存储器装置130可具有多个安全存储器区域(例如,133);且可经由单独的密码密钥151控制对每一安全存储器区域(例如,133)的存取。
例如,存储器装置130可具有表示存储器装置130的标识的唯一装置秘密101;且从唯一装置秘密101导出的密码密钥151可表示操作存储器装置130且因此具有在存储器装置中执行的安全命令的所有者特权。
通常,安全存储器区域133对于不同类型的存取(例如,读取、写入、擦除)可具有不同的安全要求。例如,安全存储器区域133可经配置以要求可经由密码密钥151验证的数字签名以在安全存储器区域133中写入或改变数据,但不需要用以从安全存储器区域133读取数据的签名命令。替代地,安全存储器区域133可经配置以要求可经由密码密钥151验证的数字签名来读取、写入及/或改变安全存储器区域133中的数据。替代地,安全存储器区域133可经配置以要求可经由不同密码密钥验证的数字签名用于安全存储器区域133中的不同操作,例如读取、写入、改变、擦除等。
集成电路存储器装置130具有通信接口147以接收具有地址135的命令。响应于地址135识别配置有存取控制的安全存储器区域(例如,133),在使用地址解码器141提供从存储器区域133检索的存储器数据之前,安全管理器113使用密码引擎107来执行密码操作以验证请求来自具有被授权用于存取存储器区域133的密码密钥的请求者。集成电路存储器装置130的地址解码器141将地址135转换为控制信号以选择集成电路存储器装置130中的一组存储器单元;且集成电路存储器装置130的本地媒体控制器150执行操作以确定存储在存储器单元中在地址135处的存储器数据。
图2根据一个实施例说明集成电路存储器装置中标识数据的生成。例如,图2的技术可在图1的存储器装置130中实施。
在图2中,存储器装置130(例如,如在图1中)的密码引擎107用于使用其唯一装置秘密101及装置信息121来生成至少一个秘密密钥137。
例如,当使用非对称密码术时,秘密密钥137是密码密钥对129的私钥。使用密码引擎107与私钥一起生成相关联的公钥139。
替代地,当使用对称密码术时,可在没有公钥139及没有密钥对129的情况下生成及使用秘密密钥137。
在一些实施方案中,生成并使用多个密钥对129。例如,当使用装置标识组合引擎(DICE)及稳健物联网(RIoT)的方法时,第一对非对称密钥被称为装置标识密钥;且第二对非对称密钥被称为别名密钥。私有装置标识密钥可用于认证别名密钥的真实性,且然后立即从存储器装置130删除及清除并保护其机密性,尤其是当私有装置标识密钥的生成或使用至少部分在主机***120中发生。别名密钥可用于进一步事务及/或通信中的鉴别。例如,私有装置标识密钥可在启动时生成并用于对证书(例如别名公钥的证书)进行签名,且然后将其删除。在存储器装置130的标识及公开别名密钥的真实性使用使用私有装置标识密钥作为秘密密钥137签名的证书被验证或确认之后,私有别名密钥然后可在随后的操作中用作存储器装置130的秘密密钥137,直到主机***120重新启动。
例如,存储在存储器单元103中的用于装置信息121的数据123可包含由连接存储器装置130的通信接口147的主机***120的处理装置118执行的指令集(例如,软件、固件、操作***、应用程序)。
例如,数据123可包含指令集的密码散列值。例如,指令集的已知散列值可存储在存储器单元103中;且可计算指令集的当前散列值以与已知散列值进行比较。如果两个散列值彼此一致,那么验证指令集的完整性;且指令集的完整性的散列值可用作装置信息121的一部分来计算秘密密钥137。
替代地,存储在存储器单元103中的指令集的当前散列值可直接用于秘密密钥137的计算。如果指令已改变(例如,由于数据损坏及/或篡改或黑客攻击),安全服务器对秘密密钥137的验证将失败。
任选地,数据123可包含指令集的标识,例如指令的源代码的散列值、指令所表示的软件/固件包的名称、包的版本号及/或发布日期等。
任选地,数据123可包含在构建及/或定制具有主机***120及存储器装置130的计算***的过程期间存储到存储器单元103中的跟踪数据。例如,当存储器装置130被组装到组件装置(例如,存储器子***)中时,表示组件装置的制造商、组件装置的型号及/或组件装置的序列号的一条跟踪数据作为装置信息121的一部分被存储在存储器单元103中。随后,当组件装置被组装到计算***中时,一条跟踪数据作为装置信息121的一部分被添加到存储器单元中。可将其它跟踪数据添加到存储器单元103作为装置信息121的一部分,以反映存储器装置130的历史,用于存储器装置130的标识的个性化。
任选地,装置信息121可进一步包含从连接到存储器装置130的通信接口147的主机***120接收的数据125。
例如,计算***可至少具有主机***120及存储器装置130。主机***120中的一些组件可被移除或替换。在启动主机***120时,存储在存储器单元103中的指令的部分被执行以收集关于在启动时存在于主机***120中的组件的数据125。因此,装置信息121可表示存储器装置130及/或主机***120的软件/数据及硬件组合的特定配置。基于装置信息121及唯一装置秘密101生成的秘密密钥137表示具有特定配置的存储器装置130的标识。
为了证明存储器装置130及/或主机***120的标识,密码引擎107从消息143及秘密密钥137生成验证码153。
秘密密钥137的验证码153及消息143可使用各种技术来构建及/或验证,例如散列摘要、数字签名或基于散列的消息鉴别码、对称密码术及/或非对称密码术。因此,验证码153不限于特定实施方案。
通常,检验消息(例如,143)的发送者是否具有密码密钥(例如,145)涉及验证消息(例如,143)的验证码(例如,153)。验证码可为呈散列摘要、数字签名、基于散列的消息鉴别码(HMAC)、基于密码的消息鉴别码(CMAC)等形式。验证码是使用密码密钥及作为密码操作(例如散列、加密及/或其它计算)的输入的消息生成的,使得在没有密码密钥的情况下生成验证码及从消息的修改版本生成验证码通常是不切实际的。因此,当接收者确认接收到的验证码对接收到的消息及密码密钥有效时,接收者可推断发送者具有对应密码密钥,并且接收到的消息与用于生成接收到的密码密钥的消息相同。
在一些实施方案中,接收者使用与发送者用来生成验证码相同的密码密钥来执行消息的验证码的验证。例如,接收者使用相同的密码密钥来生成接收到的消息的验证码,并将生成的验证码与接收到的验证码进行比较。如果存在匹配,那么接收到的验证码对接收到的消息有效;且可认为发送者具有密码密钥。否则,接收到的验证码对接收到的消息无效;自生成验证码以来接收到的消息已改变,或接收到的验证码是使用不同的密码密钥生成的,或两者。
在一些实施方案中,接收者使用密钥对中的公开密码密钥来执行消息的验证码的验证;且发送者使用密钥对中的私有密码密钥生成验证码。例如,可通过对消息应用散列函数以生成消息的散列值来生成验证码。通过使用加密密钥对散列值执行加密获得的散列值的密文可用作为验证码。消息及验证码的接收者使用对应的解密密钥执行验证,所述解密密钥在使用对称密码术时与加密密钥相同,在使用非对称密码术时是密钥对中的不同密钥。在使用解密密钥从密文恢复散列值之后,可将恢复的散列值与接收到的消息的散列值进行比较;如果存在匹配,那么接收到的验证码对接收到的消息有效;否则,接收到的验证码对接收到的消息无效。替代地,接收者可使用加密密钥来执行验证而不执行解密。接收者可使用加密密钥来生成消息的验证码,用于与接收到的验证码进行比较。
在一些实施方案中,消息及密码密钥被组合以生成散列值作为验证码,如在基于散列的消息鉴别码(HMAC)的技术中。例如,密码密钥可用于生成两个密钥。在将两个密钥中的一个与消息组合以生成由密钥修改的消息之后,可对密钥修改的消息应用密码散列函数以生成散列值,所述散列值进一步与另一密钥组合以生成进一步消息。在将密码散列函数(或另一密码散列函数)应用于其它消息之后,生成基于散列的消息鉴别码。消息的接收者可使用相同的密码密钥来生成接收到的消息的基于散列的消息鉴别码,用于与接收到的基于散列的消息鉴别码进行比较。如果存在匹配,那么验证成功;否则,验证失败。
一般来说,用于为来自发送者的消息生成及验证验证码以及发送者用来生成验证码的密码密钥的任何技术可用于确定发送者是否具有密码密钥。接收者应使用适当的密码密钥来执行验证,所述密码密钥可与用于生成验证码的密码密钥相同,或也可在同一对非对称密码密钥中。因此,本公开不限于散列摘要、数字签名及/或基于散列的消息鉴别码的特定技术。
为方便起见,使用密码密钥(例如,145)为消息(例如,143)生成的验证码(例如,153)以表示消息(例如,143)及密码密钥(例如,145)两者通常被称为使用密码密钥(例如,145)签名的消息(例如,143)的数字签名,应理解验证码可使用各种技术(例如基于散列的消息鉴别码)生成。
任选地,消息143可包含用户标识,例如姓名、电子邮件地址、注册用户名或生成标识数据112的主机***120的所有者或授权用户的另一标识符。
任选地,消息143的一部分可提供呈加密形式的信息。例如,可使用安全服务器的公钥对信息进行加密,使得使第三方无法存取所述信息。
消息143可为呈现存储器装置130及/或主机***120的唯一标识111的证书。消息143可进一步呈现其它数据127,例如在存储器装置130中维持的计数器值、密码随机数及/或与标识数据112的验证相关的其它信息。存储器装置130可单调增加计数器值以使具有较低计数器值的标识数据无效以防止重放攻击。
在一些实施方案中,数据127可包含用于生成秘密密钥137的装置信息121的一部分。
在一些实施方案中,秘密密钥137是一对非对称密钥中的私有别名密钥。数据127包含呈现非对称密钥对中的对应公开别名密钥的证书。呈现公开别名密钥的证书是使用存储器装置130的装置标识密钥进行签名。公开别名密钥可用于验证消息143的验证码153及用作秘密密钥137的私有别名密钥。一旦安全服务器验证了呈现公开别名密钥,使用存储器装置130的装置标识密钥签名并作为数据127的一部分提供的证书,安全服务器可使用公开别名密钥来验证使用私有别名密钥作为秘密密钥137签名的验证码153。在此类实施方案中,安全服务器可使用消息143中提供的公开别名密钥来验证验证码153,而不会必须重新生成别名密钥对;且存储器装置130可使用安全服务器不知道的数据来生成别名密钥对129。
呈现公开别名密钥的证书可以如图2中的方式生成及验证,其中秘密密钥137是使用装置信息121及唯一装置秘密101生成的装置标识密钥。任选地,存储器装置130最初向安全服务器提供具有公开别名密钥的证书。随后,存储器装置130可使用私有别名密钥作为秘密密钥137,而在消息143中不包含公开别名密钥,或在消息143中不包含公开别名密钥的证书。
此外,存储器装置130的标识的验证可包含使用多个秘密密钥及使用秘密密钥签名的验证码。例如,装置标识秘密密钥可用于最初建立别名秘密密钥的真实性及存储器装置130的标识;且随后,别名秘密密钥可用于验证存储器装置130的标识的真实性。一般来说,装置标识秘密密钥及别名秘密密钥可基于非对称密码术或对称密码术,此係因为安全服务器可生成由存储器装置130生成的对应密码密钥。
为了安全性的改进,存储器装置130不使用存储器装置130外部的处理能力来生成其秘密密钥137的副本且不将秘密密钥137传递到存储器装置130外部。秘密密钥137的生成及使用是使用密封在存储器装置130内的密码引擎107的逻辑电路来执行。
替代地,生成及使用秘密密钥137的部分操作可经由存储在存储器单元103中并加载到主机***120的处理装置118中以供执行的指令集来实施。为了安全性的改进,秘密密钥137不横跨通信接口147以明文形式进行通信;且指令可经配置以在生成之后及/或在使用之后从主机***120清除秘密密钥137。
可响应于存储器装置130被加电、响应于在通信接口147中接收到的请求、及/或响应于主机***120启动(例如,通过执行存储在存储器单元103中的启动加载程序)而生成标识数据112。数据127可包含维持在存储器装置130中的计数值。当执行生成标识数据112的操作时计数值增加。因此,具有计数值的标识数据112的版本使具有低于计数值的计数值的标识数据112的先前版本无效。
图3根据一个实施例说明用以控制存储器装置中命令的执行的技术。例如,图3的技术可在图1的存储器装置130中实施。
在图3中,存取控制器109经配置有存取控制密钥149以确定在通信接口147中接收到的签名命令156是否来自具有使命令155在安全存储器装置130中执行的特权的实体。
当主机***120的控制器116向存储器装置130的通信接口147发送指令155时,存取控制器109确定指令155的发送者是否具有请求存储器装置130执行指令155的特权。主机***120可包含一或多个处理装置118,其执行实施操作***及/或应用程序的指令。
密码密钥145经配置以表示待使用存取控制密钥149检查的特权。命令155的发送者可从密码密钥145及含有命令155的消息143生成验证码153。
类似于上文结合图2所论述的验证码153,密码密钥145及消息143的验证码153可使用各种技术来构建及/或验证,例如散列摘要、数字签名或基于散列的消息鉴别码、对称密码术及/或非对称密码术。因此,验证码153不限于特定的实施方案;且验证码153通常可被称为使用密码密钥145签名的消息143的数字签名,应理解验证码153可使用各种技术(例如基于散列的消息鉴别码)生成。
在图3中,存取控制器109使用对应的存取控制密钥149来验证针对命令155提交给通信接口147的验证码153。存取控制器109使用密码引擎107来生成接收到的消息143及接收到的验证码153的验证结果159。基于验证结果159,存取控制器109可选择性地允许命令155在存储器装置130内执行或阻止命令155的执行。
例如,存取控制密钥149可为存储在存储器装置130中的密码密钥151中的一个。可使用不同的存取控制密钥来控制不同的特权,以执行不同的命令及/或执行对存储器单元的不同区段或区域进行操作的命令。
例如,一个密码密钥145可表示在存储器装置130中执行安全命令的特权。当执行安全命令时,在存储器装置130中安装(或卸载)存取控制密钥149,用于验证另一密码密钥的验证码,所述密码密钥表示使读取命令(或写入命令)被执行以存取安全存储器区域133的特权。
任选地,密码密钥145是在基于存储器装置130的唯一装置秘密101验证存储器装置130的标识的过程中生成的;且存储器装置130与存储器装置130的所有者之间已知的秘密允许生成会话密钥作为密码密钥145,以表示使所选择命令在通信会话期间在存储器装置130中被执行的特权。通信会话可具有时间限制及/或经由对存储器装置130的命令来终止。
在一些实施方案中,相同的会话密钥用作表示特权(例如,读取安全存储器区域133中的数据或将数据写入在安全存储器区域中)的密码密钥145且用作用于使用密码密钥145生成的验证码(例如,153)的验证的存取控制密钥149。
在另一实施方案中,可将一对非对称密码术的密码密钥用于会话。所述对中的公钥用作存取控制密钥149;且所述对中的私钥可用作表示对应特权的密码密钥145。
在存储器装置130中安装用于验证使用表示在安全存储器区域133中读取或写入的特权的密码密钥145生成的验证码(例如,153)的存取控制密钥149之后,密码密钥145可由授权实体用来生成签名命令156。签名命令156可由主机***120发射到存储器装置130的通信接口147。在存取控制器109验证签名命令156中的验证码153之后,存取控制器109允许存储器装置130执行命令155。
消息143可包含表示对执行命令155的请求的限制的数据157。
例如,数据157可包含在存储器装置130内维持的执行计数值,使得为较低计数生成的验证码无效。
例如,数据157可包含为执行命令155的请求的特定实例而建立的密码随机数,使得验证码153不能再用于另一实例。
例如,数据157可包含验证码153有效的时间窗。
例如,数据157可包含其中允许执行命令155的存储器区域的标识。
例如,数据157可包含允许在存储器装置130中执行命令155的操作类型。
图4到7根据一个实施例说明用以在存储器装置中保护用于在主机***中运行的应用程序的密码密钥的命令。例如,图4到7的命令可在具有图2及/或3的技术的图1的存储器装置130中实施。
在图4中,可将密钥存储命令161发送到存储器装置130以将密码密钥169存储在安全存储器区域133中。可要求密钥存储命令161具有验证码153,所述验证码使用表示以使此类密钥存储命令161在存储器装置130中被执行的特权的密码密钥进行签名。
安全存储器区域133可为配置有用于在存储器装置130中安装密码密钥151的多个插槽的密码密钥表,包含安装存取控制密钥(例如,149)以控制用以存取安全存储器区域(例如、133)的命令及/或存储器装置130的其它功能。每一插槽均可具有标识号;且密钥存储命令161可识别密码密钥169被存储在安全存储器区域133中的插槽。密码密钥表可由存储器装置130的制造商配置且可比由存储器装置130的所有者或授权用户配置的安全存储器区域更安全。
替代地,安全存储器区域133可为由存储器装置130的所有者或授权用户分配的分区或命名空间。分区或命名空间可从存储器装置130中的存储器单元103的存储容量分配;且可经由分区或命名空间中的LBA地址来识别密码密钥169的存储位置。
在一些实施例中,存储器装置130响应于密钥存储命令161选择密码密钥169的存储位置。存储位置可作为对密钥存储命令161的响应提供作为密码密钥169的标识。替代地,可由密钥存储命令161或存储器装置130为密码密钥169规定唯一密钥标识,使得可在使用密码密钥169时使用密钥标识来引用密码密钥169。例如,可通过引用密钥标识或存储位置将密码密钥169的替换密钥存储到安全存储器区域133中。
密码密钥169可为远程计算机的公钥。将密码密钥169存储在安全存储器区域133中允许存储器装置130验证使用远程计算机的私钥生成的数字签名/验证码。
密码密钥169可为主机***120或主机***120的用户的私钥。将密码密钥169存储在安全存储器区域133中允许存储器装置130创建使用私钥生成的数字签名/验证码。
在一些实施例中,密码密钥169可为在创建及验证数字签名及/或在执行加密/解密时在主机***120与远程计算机之间已知的秘密密钥。
为了安全性的改进,密码密钥169经由密钥存储命令161以加密形式提供给存储器装置130。例如,可使用由安全服务器在验证存储器装置130的标识数据112期间建立的会话密钥来对密码密钥169进行加密。存储器装置130解密密钥存储命令161的一部分以恢复密码密钥169。因此,密码密钥169不以明文形式发射到存储器装置130,尤其是当密码密钥169不是公钥时。
在一些实施例中,密钥存储命令161与用以为存取控制器109安装存取控制密钥149以控制对存储器装置130的方面的存取的命令相同或特殊形式。
例如,安全存储器区域133可被分配为用于与远程计算机通信的分区或名称空间;且密码密钥169可由密钥存储命令161安装作为存取控制密钥149,以控制对安全存储器区域133的读取及/或写入存取;且远程计算机将使用对应密码密钥145来生成签名命令156的验证码153以存取安全存储器区域133。如上文结合图3所论述,密码密钥145及存取控制密钥149在一些实施方案中可为相同的,且在其它实施方案中可为非对称密码术的一对密码密钥。为了质询远程计算机以证明其拥有密码密钥145,质询远程计算机以对用以存取由密码密钥169控制的安全存储器区域133的命令155进行签名可为足够的,所述密码密钥被安装为安全存储器区域133的存取控制密钥149。
图5说明了发送到存储器装置130以确定验证码153是否由消息143及密码密钥(例如,145)生成的签名验证命令163。作为响应,存储器装置130使用存储在装置130中的密码密钥169(例如,使用图4的密钥存储命令161)执行用于验证的密码操作。如果基于消息143及密码密钥169确定验证码153有效,那么可推断验证码153是由拥有对应密码密钥(例如,145)的实体创建;且自创建验证码153以来,消息143未变更。否则,消息143已变更,或验证码153并非使用对应的密码密钥(例如,145)生成的,或两者。存储器装置130可提供验证结果159作为对签名验证命令163的响应。
在一些实施方案中,签名验证命令163可使用密码密钥169的存储位置或存储器装置130中的密码密钥169的唯一密钥标识来识别待用于验证的密码密钥169。
在一些实施方案中,签名验证命令163与用以存取存储器装置130的方面的签名命令156相同或特殊形式。
例如,可将密码密钥169安装为安全存储器区域133的存取控制密钥149,所述安全存储器区域被分配为用于与远程计算机通信的分区或名称空间。签名验证命令163可为用于执行命令155以存取安全存储器区域133的签名命令156。如果验证码153并非使用远程计算机的对应密码密钥145创建的签名,那么拒绝存取,这指示签名或验证码153无效。
图6说明发送到存储器装置130以从消息143及存储在存储器装置130中的密码密钥169生成验证码153的签名生成命令165。
以类似于使用图2中的秘密密钥137在标识数据112中生成验证码153的方式,存储器装置130可使用密码引擎107来为消息143生成数字签名/验证码153。
在一些实施例中,可将密码密钥169指派给主机***120或主机***120的用户以表示主机***120或用户的标识。密码密钥169可以类似于存储表示存储器装置130及/或连接到存储器装置130的主机***120的标识的秘密密钥137的方式存储。消息143可包含来自远程计算机的质询,所述质询将基于针对消息143及远程计算机具有的对应密钥验证验证码153来确定主机***120是否具有密码密钥169。
任选地,存储器装置130可以类似于图2中的秘密密钥137的生成的方式生成密码密钥169作为用于与远程计算机通信的标识。因此,密码密钥169可在存储器装置130内生成且不传送到存储器装置130的外部及/或存储器装置130的***分。
图7说明发送到存储器装置130以生成一对公钥139及秘密密钥137的密钥生成命令167。密钥生成命令167可为命令155,所述命令使用密码密钥145进行签名,表示请求存储器装置130生成表示与存储器装置130相关联的实体的密钥137及139的特权。例如,可使用唯一装置秘密101及/或在密钥生成命令167中提供的其它信息来生成密钥137及139。
当使用非对称密码术时,可提供公钥139作为响应;且对应的秘密密钥137可用于表示主机***120或其与远程计算机通信的用户。
当使用对称密码时,具有存储器装置130的唯一装置秘密101的安全服务器可独立地生成相同的秘密密钥137并将秘密密钥137提供给安全管理器中的远程计算机。
在一个实施例中,秘密密钥137经配置为用于与远程计算机通信的安全存储器区域133的本地标识。使用图6中所说明的签名生成命令165,经由所安装的远程计算机的密码密钥169作为安全存储器区域133的存取控制密钥149来控制对安全存储器区域133的存取。密钥生成命令167可经配置以经签名用于由安全存储器区域133的存取控制密钥149进行验证;且可提供用于使用秘密密钥137生成的签名的验证密钥作为对密钥生成命令167的响应。验证密钥可呈加密格式,使用存取控制密钥149加密以供远程计算机解密。因此,验证密钥不在存储器装置130与远程计算机之间以明文形式发射。当使用非对称加密时,验证密钥可为公钥139,或当使用对称密码术时,验证密钥可为秘密密钥137。
在安装秘密密钥137作为分配用于与远程计算机通信的安全存储器区域133的位置标识之后,存储器装置130可响应于图6中所说明的签名生成命令165使用密钥137对质询消息143进行签名。
图8根据一个实施例说明用以在存储器装置中保护用于与远程计算机通信的应用程序的密码密钥的计算***。例如,实施图4到7的命令的图1的存储器装置130可用于图8的计算***100中。
在图8中,主机***120可运行应用程序171以基于非对称密码术建立安全通道以用于与远程计算机183进行通信。例如,可使用安全外壳协议(SSH)建立安全通道。
为了彼此鉴别,计算***100具有表示计算***100的标识的***私钥175;且远程计算机183具有表示远程计算机183的标识的计算机私钥185。计算***100存储适合于验证使用远程计算机的计算机私钥185创建的数字签名的计算机公钥187;且远程计算机183存储***公钥177,所述***公钥适合于验证使用计算***100的***私钥175创建的数字签名。
代替将***私钥175及计算机公钥187存储在常规文件***中,计算***100将***私钥175及计算机公钥187存储在具有图3中所说明的存取控制器109的存储器装置130中。***私钥175及计算机公钥187可存储在安全存储器区域133中及/或与被分配用于与远程计算机183通信的安全存储器区域133相关联。
装置管理器173可用于配置存储器装置130。例如,装置管理器173可促进存储器装置130与安全服务器181之间的通信以配置存储器装置130。安全服务器181可存储存取特权密钥179以使用图4到7中所说明的命令向存储器装置130发出命令以分配安全存储器区域133、安装计算机公钥187及/或生成或存储***私钥175。
例如,在装置管理器173的用户证明有资格存取/控制存储器装置130之后,安全服务器181可使用存取特权密钥179来生成签名命令156以在存储器装置130中执行。
例如,可发出签名命令156来分配分区或名称空间作为安全存储器区域133,用于存储***私钥175及计算机公钥187,及/或供由远程计算机183存取。
例如,签名命令156可为密钥存储命令161,用以将计算机公钥187存储到安全存储器区域133中及/或将计算机公钥187安装为安全存储器区域133的存取控制密钥149。
例如,签名命令156可为签名验证命令163,所述签名验证命令请求存储器装置130使用计算机公钥187检验数字签名是否使用计算机私钥185进行签名。替代地,应用程序171经配置以质询远程计算机183以使用其计算机私钥185对用以存取由作为存取控制密钥149的计算机公钥187控制的安全存储器区域133的命令155进行签名。
例如,签名命令156可为用以将***私有私钥175存储到存储器装置130中的密钥存储命令161,或用以在存储器装置130中创建***私钥175的密钥生成命令167。存储器装置130可提供***公钥177,所述***公钥呈使用计算机公钥187加密的加密形式,以传输到远程计算机183。替代地,安全服务器181可独立地计算***公钥177并以安全方式发射***公钥177。
例如,签名命令156可为签名生成命令165,所述签名生成命令请求存储器装置130在来自远程计算机183的质询消息143上生成数字签名。
应用程序171经配置以与存储器装置130通信以使用***私钥175及计算机公钥187。
为了验证远程计算机183的标识,应用程序171可请求远程计算机183使用其计算机私钥185对质询消息进行签名,并请求安全服务器181对用以使用存储器装置130中的计算机公钥187验证签名的签名验证命令163进行签名。替代地,应用程序171可质询远程计算机183以使用其计算机私钥185对用以存取由作为存取控制密钥149的计算机公钥187控制的安全存储器区域133的命令155进行签名;且存取控制器109可确定命令155的验证结果159。
为了证明计算***100的标识,应用程序171可请求安全服务器181对签名生成命令165进行签名,所述签名生成命令被发射到存储器装置130以生成验证码153作为来自远程计算机的质询消息183的数字签名。
在一些实施例中,签名生成命令165经配置为写入命令的版本以将消息143存储到安全存储器区域133中。在将消息写入到安全存储器区域133完成时,经配置用于安全存储器区域133的密码密钥169用于生成消息143的验证码153作为对成功存储消息143的确认。此类写入命令可由远程计算机183使用其计算机私钥185进行签名。
在一些实施方案中,来自远程计算机183的用于验证计算***的标识的质询消息还包含来自计算***100的对验证远程计算机183的标识的质询。如果由远程计算机签名的写入命令被存取控制器109接受,那么在使用计算机公钥187进行验证之后,验证计算***的标识;且对写入命令的响应提供验证码153作为质询消息上的数字签名,远程计算机183可使用其***公钥177的副本来验证所述验证码。
任选地,远程计算机183还可将其计算机私钥185及***公钥177以类似于计算***100存储及使用***私钥175及计算机公钥187的方式存储在安全存储器装置中的安全存储器区域中。
任选地,可使用主存储器装置作为替代来执行上文所论述操作以使用存取特权密钥179对命令进行签名。
图9根据一个实施例展示保护密码密钥的存储及使用的方法。图9的方法可通过处理逻辑执行,处理逻辑可包含硬件(例如,处理装置、电路***、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件/固件(例如,在处理装置上运行或执行的指令),或其组合。在一些实施例中,图9的方法可在图8的***中实施且至少部分地由图3中的主机***120的处理装置118或控制器116、图10的存储器子***110的控制器115及/或控制器150或图1的存储器装置130中的处理逻辑执行。尽管以特定的顺序或次序展示,但除非另有所规定,否则可修改过程的次序。因此,所说明的实施例应仅理解为实例,且所说明的过程可以不同次序执行,且一些过程可并行执行。另外,在各种实施例中可省略一或多个过程。因此,并非在每一实施例中需要所有过程。其它过程流程是可能的。
在框301处,连接到主机***120的存储器装置130存储表示与远程计算机183通信的主机***120的标识的第一密码密钥。
在框303处,存储器装置130存储可用于验证远程计算机的标识的第二密码密钥。
在框305处,存储器装置130基于密码术且独立于由在主机***中运行的操作***控制的文件***来控制对第一密码密钥及第二密码密钥的存取。
在框307处,应用程序171在主机***120中运行以与远程计算机183建立安全通道。
在框309处,存储器装置130与应用程序171通信以使用第一密码密钥生成用于远程计算机183的第一消息的第一验证码,而不会向主机***120透露第一密码密钥。
在框311处,存储器装置130与应用程序通信以使用第二密码密钥验证由远程计算机183为来自应用程序171的第二消息生成的第二验证码。
例如,第一密码密钥为表示用于建立安全通道的主机***的私钥;且第二密码密钥为在建立安全通道时表示远程计算机的对应于私钥的公钥。
例如,使用第一密码密钥及第二密码密钥根据安全外壳协议(SSH)建立安全通道。
第一密码密钥及第二密码密钥可存储在存储器装置中的安全存储器区域中;且对安全存储器区域的存取需要使用表示存取安全存储器区域的特权的密码密钥签字的命令。
替代地,第一密码密钥及第二密码密钥存储在由存储器装置130的制造商配置的密码密钥表中。
任选地,应用程序171可在应用程序171通过读取命令向存储器装置130提供密码(password或passcode)之后获得第一密码密钥及/或第二密码密钥的副本。
为了生成第一验证码,应用程序171可向存储器装置130发送识别第一消息的第一命令。作为响应,存储器装置130通过使用存储器装置130内的第一密码密钥生成第一验证码作为对第一命令的响应。
为了验证第二验证码,应用程序171可向存储器装置130发送识别第二消息及第二验证码的第二命令。作为响应,存储器装置130通过使用存储器装置130内的第二密码密钥来验证第二验证码作为对第二命令的响应。
在一些实施方案中,响应于提供第一密码密钥的命令,将第一密码密钥存储在存储器装置130中。在其它实施方案中,响应于请求存储器装置生成第一密码密钥的命令,将第一密码密钥存储在存储器装置130中。
例如,存储器装置130可使用保护在存储器装置130内的唯一装置秘密101及/或在用以生成第一密码密钥的命令中提供的信息来生成一对非对称密码术的密码密钥。所述对密码密钥可包含作为表示主机***的私钥的第一密码密钥及对应于所述第一密码密钥的公钥。存储器装置130可提供对应于第一密码密钥的公钥作为对用以生成第一密码密钥的命令的响应。例如,对应于第一密码的公钥可由存储器装置130以使用第二密码密钥或可由远程计算机183解密的另一密钥加密的密文形式提供。
在一些实施方案中,使用表示操作存储器装置130的特权的存取特权密钥179签名的命令经由装置管理器173发送到存储器装置130。在验证使用命令的存取特权密钥179签名的数字签名之后,存储器装置执行命令以分配用于与远程计算机183通信的安全存储器区域133。为了进一步配置用于与远程计算机183通信的安全存储器区域133,装置管理器173可发送使用存取特权密钥179签名的命令,以致使存储器装置130安装第二密码密钥作为安全存储器区域133的存取控制密钥。例如,用以存取安全存储器区域133的读取或写入命令然后可由远程计算机183的密钥进行签名,以通过第二密码密钥进行验证,以在存储器装置130中执行。
此外,在一些实施方案中,装置管理器173可进一步发送使用存取特权密钥179签名的命令,以安装用于安全存储器区域133的第一密码密钥,使得响应于用以将数据写入到安全存储器区域133中的命令,存储器装置130经配置以使用第一密码密钥来生成数据的验证码作为使用第一密码密钥签名的数字签名。存储器装置130可响应于用以将数据写入到安全存储器区域133中的命令而提供数字签名。任选地,用以将数据写入到安全存储器区域133中的命令可使用可经由第二密码密钥验证的远程计算机的密码密钥进行签名。
例如,验证第二验证码可包含:在存储器装置130中从应用程序171接收由远程计算机183签名的用以存取安全存储器区域133的命令;且生成第一验证码可包含在存储器装置130中从应用程序171接收由远程计算机183签名用以将第一消息写入到安全存储器区域133中的命令。
图10根据本公开的一些实施例说明包含存储器子***110的实例计算***100。存储器子***110可包含媒体,例如一或多个易失性存储器装置(例如,存储器装置140)、一或多个非易失性存储器装置(例如,存储器装置130),或此类组合。
存储器子***110可为存储装置、存储器模块或存储装置及存储器模块的混合。存储装置的实例包含固态驱动器(SSD)、快闪驱动器、通用串行总线(USB)快闪驱动器、嵌入式多媒体控制器(eMMC)驱动器、通用快闪存储(UFS)驱动器、安全数字(SD)卡及硬盘驱动器(HDD)。存储器模块的实例包含双列直插式存储器模块(DIMM)、小型DIMM(SO-DIMM)及各种类型的非易失性双列直插式存储器模块(NVDIMM)。
计算***100可为计算装置,例如台式计算机、膝上型计算机、网络服务器、移动装置、运载工具(例如,飞机、无人机、火车、汽车或其它交通工具)、支持物联网(IoT)的装置、嵌入式计算机(例如,包含在运载工具、工业设备或联网商用装置中的计算机),或包含存储器及处理装置的此类计算装置。
计算***100可包含主机***120,所述主机***耦合到一或多个存储器子***110。图10说明耦合到一个存储器子***110的主机***120的一个实例。如本文中所使用,“耦合到”或“与...耦合”通常是指组件之间的连接,所述连接可为间接通信连接或直接通信连接(例如,无需中间组件),无论有线还是无线的,包含例如电、光学、磁性等连接。
主机***120可包含处理器芯片组(例如,处理装置118)及由处理器芯片组执行的软件堆栈。处理器芯片组可包含一或多个核心、一或多个高速缓冲存储器、存储器控制器(例如,控制器116)(例如,NVDIMM控制器)及存储协议控制器(例如,PCIe控制器、SATA控制器)。主机***120例如使用存储器子***110将数据写入到存储器子***110,并从存储器子***110读取数据。
主机***120可经由物理主机接口耦合到存储器子***110。物理主机接口的实例包含但不限于串行先进技术总线附属(SATA)接口、快速***组件互连(PCIe)接口、通用串行总线(USB)接口、光纤通道、串行连接SCSI(SAS)接口、双数据速率(DDR)存储器总线接口、小计算机***接口(SCSI)、双列直插式存储器模块(DIMM)接口(例如,支持双数据速率(DDR)的DIMM套接字接口)、开放NAND快闪接口(ONFI)、双倍数据速率(DDR)接口、低功耗双数据速率(LPDDR)接口,或任何其它接口。物理主机接口可用于在主机***120与存储器子***110之间发射数据。当存储器子***110通过PCIe接口与主机***120耦合时,主机***120可进一步利用高速NVM(NVMe)接口存取组件(例如,存储器装置130)。物理主机接口可提供用于在存储器子***110与主机***120之间传递控制、地址、数据及其它信号的接口。图10说明存储器子***110作为实例。通常,主机***120可经由同一通信连接、多个单独通信连接及/或通信连接的组合存取多个存储器子***。
主机***120的处理装置118可为例如微处理器、中央处理单元(CPU)、处理器的处理核心、执行单元等。在一些情况下,控制器116可被称为存储器控制器、存储器管理单元及/或启动器。在一个实例中,控制器116控制通过耦合在主机***120与存储器子***110之间的总线的通信。通常,控制器116可向存储器子***110发送命令或请求以便对存储器装置130、140进行期望存取。控制器116可进一步包含与存储器子***110通信的接口电路***。接口电路***可将从存储器子***110接收的响应转换为主机***120的信息。
主机***120的控制器116可与存储器子***110的控制器115通信以执行例如在存储器装置130、140处读取数据、写入数据或擦除数据的操作以及其它此类操作。在一些情况下,控制器116经集成在处理装置118的相同封装内。在其它情况下,控制器116与处理装置118的封装分开。控制器116及/或处理装置118可包含硬件,例如一或多个集成电路(IC)及/或离散组件、缓冲存储器、高速缓冲存储器或其组合。控制器116及/或处理装置118可为微控制器、专用逻辑电路***(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)或其它合适的处理器。
存储器装置130、140可包含不同类型的非易失性存储器组件及/或易失性存储器组件的任一组合。易失性存储器装置(例如,存储器装置140)可为(但不限于)随机存取存储器(RAM),例如动态随机存取存储器(DRAM)及同步动态随机存取存储器(SDRAM)。
非易失性存储器组件的一些实例包含与非(negative-and或NOT AND)(NAND)型快闪存储器及就地写入存储器,例如三维交叉点(“3D交叉点”)存储器。非易失性存储器的交叉点阵列可结合可堆叠的交叉网格化数据存取阵列基于体电阻的改变执行位存储。另外,与许多基于快闪存储器的存储器相比,交叉点非易失性存储器可执行原地写入操作,其中可在不预先擦除非易失性存储器单元的情况下编程非易失性存储器单元。例如,NAND型快闪存储器包含二维NAND(2D NAND)及三维NAND(3D NAND)。
存储器装置130中的每一个可包含一或多个存储器单元阵列。一种类型的存储器单元,例如,单级单元(SLC)可每单元存储一个位。其它类型的存储器单元,例如多层级单元(MLC)、三层级单元(TLC)、四层级单元(QLC)及五层级单元(PLC)可每单元存储多个位。在一些实施例中,存储器装置130中的每一个可包含一或多个存储器单元阵列,例如SLC、MLC、TLC、QLC、PLC或此类的任一组合。在一些实施例中,特定存储器装置可包含存储器单元的SLC部分、MLC部分、TLC部分、QLC部分及/或PLC部分。存储器装置130的存储器单元可经分组为页,所述页可指代用于存储数据的存储器装置的逻辑单元。对于一些类型的存储器(例如,NAND),可将页分组以形成块。
尽管描述例如3D交叉点类型及NAND类型存储器(例如,2D NAND、3D NAND)的非易失性存储器装置,但存储器装置130可基于任何其它类型的非易失性存储器,例如只读存储器(ROM)、相变存储器(PCM)、自选择存储器、其它基于硫属化物的存储器、铁电晶体管随机存取存储器(FeTRAM)、铁电随机存取存储器(FeRAM)、磁随机存取存储器(MRAM)、自旋转移力矩(STT)-MRAM、导电桥接RAM(CBRAM)、电阻式随机存取存储器(RRAM)、基于氧化物的RRAM(OxRAM)、或非(NOR)快闪存储器及电可擦除可编程只读存储器(EEPROM)。
存储器子***控制器115(或为简单起见,控制器115)可与存储器装置130通信以执行例如在存储器装置130处读取数据、写入数据或擦除数据的操作以及其它此类操作(例如,响应于通过控制器116在命令总线上调度的命令)。控制器115可包含硬件,例如一或多个集成电路(IC)及/或离散组件、缓冲存储器或其组合。硬件可包含具有专用(例如,硬编码)逻辑的数字电路***以执行本文中所描述的操作。控制器115可为微控制器、专用逻辑电路***(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)等等)或另一合适处理器。
控制器115可包含经配置以执行存储在本地存储器119中的指令的处理装置117(例如,处理器)。在所说明实例中,控制器115的本地存储器119包含嵌入式存储器,所述嵌入式存储器经配置以存储用于执行控制存储器子***110的操作(包含处置存储器子***110与主机***120之间的通信)的各种过程、操作、逻辑流以及例程的指令。
在一些实施例中,本地存储器119可包含存储存储器指针、提取数据等等的存储器寄存器。本地存储器119还可包含用于存储微码的只读存储器(ROM)。虽然图10中的实例存储器子***110已说明为包含控制器115,但在本公开的另外实施例中,存储器子***110不包含控制器115,且替代地可依赖于外部控制(例如,通过外部主机,或通过与存储器子***分开的处理器或控制器提供)。
通常控制器115可从主机***120接收命令或操作,且可将命令或操作转换为用以实现对存储器装置130的所要存取的指令或适当的命令。控制器115可负责其它操作,例如损耗均衡操作、无用信息收集操作、错误检测与纠错码(ECC)操作、加密操作、高速缓存操作,以及与存储器装置130相关联的逻辑地址(例如,逻辑块地址(LBA)、命名空间)与物理地址(例如,物理块地址)之间的地址转换。控制器115可进一步包含主机接口电路***,以经由物理主机接口与主机***120通信。主机接口电路***可将从主机***接收的命令转换为命令指令以存取存储器装置130,以及将与存储器装置130相关联的响应转换为用于主机***120的信息。
存储器子***110还可包含未说明的额外电路***或组件。在一些实施例中,存储器子***110可包含高速缓冲存储器或缓冲器(例如,DRAM)及地址电路***(例如,行解码器及列解码器),其可自控制器115接收地址并解码所述地址以存取存储器装置130。
在一些实施例中,存储器装置130包含本地媒体控制器150,所述本地媒体控制器结合存储器子***控制器115操作以对存储器装置130的一或多个存储器单元执行操作。外部控制器(例如,存储器子***控制器115)可外部管理存储器装置130(例如,对存储器装置130执行媒体管理操作)。在一些实施例中,存储器装置130为受管理存储器装置,其为与用于媒体管理的本地控制器(例如,本地媒体控制器150)一起组合在同一存储器装置封装内的原始存储器装置。受管理存储器装置的实例为受管理NAND(MNAND)装置。
控制器115及/或存储器装置130可包含上文所论述的安全管理器113。在一些实施例中,存储器子***110中的控制器115及/或本地媒体控制器150可包含安全管理器113的至少一部分。在其它实施例中,或组合地,主机***120中的控制器116及/或处理装置118可包含安全管理器113的至少一部分。例如,控制器115、控制器116及/或处理装置118可包含实施安全管理器113的逻辑电路***。例如,控制器115或主机***120的处理装置118(例如,处理器)可经配置以执行存储在存储器中的指令以执行本文中所描述的安全管理器113的操作。在一些实施例中,安全管理器113在安置在存储器子***110中的集成电路芯片中实施。在其它实施例中,安全管理器113可为存储器子***110的固件、主机***120的操作***、装置驱动程序或应用程序或其任何组合的一部分。
图11说明计算机***400的实例机器,在所述计算机***内可执行用于致使机器执行本文中所论述的方法中的任何一或多个的指令集。在一些实施例中,计算机***400可对应于主机***(例如,图10的主机***120),其包含,耦合到,或利用存储器子***(例如,图10的存储器子***110)或可用于执行安全管理器113的操作(例如,执行指令以执行对应于参考图1到10所描述的安全管理器113的操作)。在替代实施例中,机器可连接(例如,联网)到LAN、内联网、外联网及/或因特网中的其它机器。机器可在客户端-服务器网络环境中以服务器或客户端机器的身份操作,作为对等(或分布式)网络环境中的对等机器操作,或作为云计算基础设施或环境中的服务器或客户端机器操作。
所述机器可为个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、移动电话、网络器具、服务器、网络路由器、交换机或网桥,或能够执行规定由所述机器进行的动作的指令集(顺序或其它方式)的任何机器。此外,虽然说明单个机器,但术语“机器”还应被视为包含单独或联合执行一(或多个)指令集以执行本文所论述的方法中的任何一或多个的任何机器集合。
实例计算机***400包含经由总线430彼此通信的处理装置402、主存储器404(例如,只读存储器(ROM)、快闪存储器、动态随机存取存储器(DRAM),例如同步DRAM(SDRAM)或Rambus DRAM(RDRAM)、静态随机存取存储器(SRAM),等)以及数据存储***418。
处理装置402表示一或多个通用处理装置,例如微处理器、中央处理单元,等等。更特定地,处理装置可为复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器,或实施其它指令集的处理器,或实施指令集组合的处理器。处理装置402还可为一或多个专用处理装置,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器,等等。处理装置402经配置以执行用于执行本文中所论述的操作及步骤的指令426。计算机***400可进一步包含网络接口装置408以通过网络420进行通信。
数据存储***418可包含机器可读媒体424(也被称作为计算机可读媒体),其上存储体现本文中所描述的方法或功能中的任何一或多个的一或多个集合的指令426或软件。指令426还可在计算机***400执行所述指令期间完全或至少部分地驻留在主存储器404内及/或处理装置402内,主存储器404及处理装置402也构成机器可读存储媒体。机器可读媒体424、数据存储***418及/或主存储器404可对应于图10的存储器子***110。
在一个实施例中,指令426包含用于实施对应于安全管理器113(例如,参考图1到10所描述的安全管理器113)的功能性的指令。虽然机器可读媒体424在实例实施例中被展示为单个媒体,但术语“机器可读存储媒体”应被视为包含存储一或多个指令集的单个媒体或多个媒体。术语“机器可读存储媒体”还应被视为包含能够存储或编码指令集以供机器执行且使机器执行本公开的方法中的任何一或多个的任何媒体。因此,术语“机器可读存储媒体”应被视为包含(但不限于)固态存储器、光学媒体及磁媒体。
已在计算机存储器内的算法及数据位的操作的符号表示方面来呈现前面的详细描述的一些部分。这些算法描述及表示为由所属数据处理领域的技术人员用于以向所属领域的其它技术人员传达其工作的本质的方式。算法此处且通常被认为导致所要结果的自洽操作序列。操作为需要物理操纵物理量的操作。通常,但非必需地,这些量可采取能够存储、组合、比较或以其它方式操纵的电或磁信号的形式。将这些信号称作位、值、元素、符号、字符、项、数字等等有时已证明是便利的(主要出于共用的原因)。
然而,应记住,所有这些术语及类似术语均与适当的物理量相关联,且仅作为应用于这些量的方便标签。本公开可是指计算机***或类似电子计算装置的动作及过程,其将表示为计算机***的寄存器及存储器内的物理(电子)量的数据操纵及变换为类似地表示为计算机***存储器或寄存器或其它此类信息存储器***内的物理量的其它数据。
本公开还涉及用于执行本文中操作的设备。此设备可为特定目的而专门构造,或其可包含由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此计算机程序可存储在计算机可读存储媒体中,例如但不限于任何类型的磁盘,包含软盘、光盘、CD-ROM及磁光盘,只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁或光卡,或适用于存储电子指令的任何类型的媒体,每一者都耦合到计算机***总线。
本文中所呈现的算法及显示并不与任何特定计算机或其它设备内在地相关。根据本文中的教示,各种通用***可与程序一起使用,或可证明构造更专用的设备以执行所述方法为方便的。各种这些***的结构将如下文描述中所述。另外,不参考任何特定编程语言描述本公开。应理解,可使用各种编程语言来实施如本文中所描述的本公开的教示。
本公开可经提供作为计算机程序产品或软件,其可包含机器可读媒体,具有存储于其上的指令,所述指令可用于对计算机***(或其它电子装置)进行编程以根据本公开执行处理。机器可读媒体包含用于以机器(例如,计算机)可读的形式存储信息的任何机制。在一些实施例中,机器可读(例如,计算机可读)媒体包含机器(例如,计算机)可读存储媒体,例如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁性磁盘存储媒体、光存储媒体、快闪存储器组件等。
在此描述中,各种功能及操作被描述为由计算机指令执行或由计算机指令引起,以简化描述。然而,所属领域的技术人员将认识到,此类表达的意思为功能是由一或多个控制器或处理器(例如,微处理器)执行计算机指令而产生。替代地或组合地,可使用具有或不具有软件指令的专用电路***来实施功能及操作,例如使用专用集成电路(ASIC)或现场可编程门阵列(FPGA)。可使用没有软件指令的硬连线电路***或结合软件指令来实施实施例。因此,所述技术既不限于硬件电路***与软件的任何特定组合,也不限于由数据处理***执行的指令的任何特定源。
在上述说明书中,本公开的实施例已参考其特定实例实施例进行描述。显而易见的是,在不脱离所附权利要求书中所阐明的本公开的实施例的更广泛的精神及范围的情况下,可对其进行各种修改。因此,说明书及图式应考虑说明性而非限制性。

Claims (20)

1.一种方法,其包括:
在连接到主机***的存储器装置中存储表示与远程计算机通信的所述主机***的标识的第一密码密钥;
在所述存储器装置中存储可用于验证所述远程计算机的标识的第二密码密钥;
通过所述存储器装置基于密码术且独立于由在所述主机***中运行的操作***控制的文件***来控制对所述第一密码密钥及所述第二密码密钥的存取;及
在所述主机***中运行的应用程序与所述远程计算机建立安全通道期间,
通过所述存储器装置与所述应用程序通信以使用所述第一密码密钥生成用于所述远程计算机的第一消息的第一验证码,而不会向所述主机***透露所述第一密码密钥;及
通过所述存储器装置与所述应用程序通信以使用所述第二密码密钥验证由所述远程计算机为来自所述应用程序的第二消息生成的第二验证码。
2.根据权利要求1所述的方法,其中所述第一密码密钥是表示所述主机***的私钥;且所述第二密码密钥是表示所述远程计算机的对应于私钥的公钥。
3.根据权利要求2所述的方法,其中使用所述第一密码密钥及所述第二密码密钥根据安全外壳协议SSH建立所述安全通道。
4.根据权利要求3所述的方法,其中将所述第一密码密钥及所述第二密码密钥存储在所述存储器装置中的安全存储器区域中;且对所述安全存储器区域的存取需要使用表示存取所述安全存储器区域的特权的密码密钥签字的命令。
5.根据权利要求3所述的方法,其中将所述第一密码密钥及所述第二密码密钥存储在由所述存储器装置的制造商配置的密码密钥表中。
6.根据权利要求3所述的方法,其中所述与所述应用程序通信以生成所述第一验证码包含:
在所述存储器装置中接收识别所述第一消息的第一命令;及
在所述存储器装置内使用所述第一密码密钥生成所述第一验证码作为对所述第一命令的响应。
7.根据权利要求6所述的方法,其中所述与所述应用程序通信以验证所述第二验证码包含:
在所述存储器装置中接收识别所述第二消息及所述第二验证码的第二命令;及
在所述存储器装置内使用所述第二密码密钥验证所述第二验证码作为对所述第二命令的响应。
8.根据权利要求3所述的方法,其进一步包括:
在所述存储器装置中接收用以生成所述第一密码密钥的命令;
在所述存储器装置内生成非对称密码术的一对密码密钥,包含作为表示所述主机***的所述私钥的所述第一密码密钥及对应于所述第一密码密钥的公钥;及
提供对应于所述第一密码密钥的所述公钥作为对用以生成所述第一密码密钥的所述命令的响应。
9.根据权利要求8所述的方法,其中对应于所述第一密码的所述公钥以使用所述第二密码密钥加密的密文形式提供。
10.根据权利要求3所述的方法,其进一步包括:
在所述存储器装置中接收用以分配用于与所述远程计算机通信的安全存储器区域的命令;
通过所述存储器装置验证所述命令的验证码是使用表示操作所述存储器装置的特权的密码密钥生成的;及
在所述存储器装置中接收用以将所述第二密码密钥安装为所述安全存储器区域的存取控制密钥的命令。
11.根据权利要求10所述的方法,其进一步包括:
在所述存储器装置中接收用以安装所述安全存储器区域的所述第一密码密钥的命令,其中响应于用以将数据写入到所述安全存储器区域中的命令,所述存储器装置经配置以使用所述第一密码密钥来使用所述第一密码密钥生成所述数据的验证码,并响应于用以写入所述数据的所述命令而提供所述验证码。
12.根据权利要求11所述的方法,其中所述与所述应用程序通信以验证所述第二验证码包含:
在所述存储器装置中接收由所述远程计算机签名的用以存取所述安全存储器区域的命令。
13.根据权利要求11所述的方法,其中所述与所述应用程序通信以生成所述第一验证码包含:
在所述存储器装置中接收由所述远程计算机签名的用以将所述第一消息写入到所述安全存储器区域中的命令。
14.一种计算设备,其包括:
存储器装置,其具有存储器单元及存取控制器;及
主机***,其耦合到所述存储器装置,所述主机***经配置以执行控制文件***的操作***的指令及应用程序;
其中所述存储器装置经配置以:
存储表示与远程计算机通信的所述主机***的标识的第一密码密钥及可用于验证所述远程计算机的标识的第二密码密钥;及
基于密码术且独立于由在所述主机***中运行的操作***控制的文件***来控制对所述第一密码密钥及所述第二密码密钥的存取;且
其中在所述主机***中运行的应用程序与所述远程计算机建立安全通道,所述应用程序经配置以与所述存储器装置通信以:
使用所述第一密码密钥生成用于所述远程计算机的第一消息的第一验证码,而不会向所述主机***透露所述第一密码密钥;及
使用所述第二密码密钥验证由所述远程计算机为来自所述应用程序的第二消息生成的第二验证码。
15.根据权利要求14所述的计算设备,其中为了生成所述第一验证码,所述应用程序经配置以将具有所述第一消息的命令发送到所述存储器装置及接收所述第一验证码作为对所述命令的响应。
16.根据权利要求15所述的计算设备,其中所述命令经配置以将所述第一消息写入到与所述第一密码密钥相关联的存储器区域中;且使用可使用所述第二密码密钥验证的密码密钥对所述命令进行签名。
17.根据权利要求16所述的计算设备,其中所述第二密码密钥安装在所述存储器装置中作为所述存储器区域的存取控制密钥。
18.一种存储器装置,其包括:
存储器单元,其形成在一或多个集成电路裸片上;
逻辑电路,其实施密码引擎及存取控制器;及
通信接口,其可连接到主机***,其中当表示与远程计算机通信的所述主机***的标识的第一密码密钥及可用于验证所述远程计算机的标识的第二密码密钥存储在具有所述存储器单元的部分的存储器区域中时,所述存取控制器经配置以基于密码术且独立于由在所述主机***中运行的操作***控制的文件***来控制对所述第一密码密钥及所述第二密码密钥的存取;
其中在所述主机***中运行的应用程序与所述远程计算机通信以建立安全通道期间,所述存储器装置从所述应用程序接收命令以:
使用所述第一密码密钥生成用于所述远程计算机的第一消息的第一验证码,而不会向所述主机***透露所述第一密码密钥;及
使用所述第二密码密钥验证由所述远程计算机为来自所述应用程序的第二消息生成的第二验证码。
19.根据权利要求18所述的存储器装置,响应于在所述通信接口中接收到的至少一个命令,经配置以:
分配用于与所述远程计算机通信的存储器区域;
安装所述第二密码密钥作为所述存储器区域的存取控制密钥;及
安装所述第一密码密钥,以响应于用以将数据写入到所述存储器区域中的命令,生成使用所述第一密码密钥签名的所述数据的数字签名作为对所述写入命令的响应。
20.根据权利要求19所述的存储器装置,其中所述存取控制器经配置以在允许所述存储器装置执行所述至少一个命令之前,验证已使用表示操作所述存储器装置的特权的密码密钥对所述至少一个命令进行签名。
CN202210505518.5A 2021-05-20 2022-05-10 安全密钥存储装置 Withdrawn CN115391844A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/326,256 2021-05-20
US17/326,256 US11736453B2 (en) 2021-05-20 2021-05-20 Secure key storage devices

Publications (1)

Publication Number Publication Date
CN115391844A true CN115391844A (zh) 2022-11-25

Family

ID=84103426

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210505518.5A Withdrawn CN115391844A (zh) 2021-05-20 2022-05-10 安全密钥存储装置

Country Status (2)

Country Link
US (1) US11736453B2 (zh)
CN (1) CN115391844A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12045504B2 (en) 2021-12-14 2024-07-23 Micron Technology, Inc. Burn-in solid state drives through generation of proof of space plots in a manufacturing facility
US12015706B2 (en) * 2021-12-14 2024-06-18 Micron Technology, Inc. Combined cryptographic key management services for access control and proof of space

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180254909A1 (en) * 2017-03-06 2018-09-06 Lamark Solutions, Inc. Virtual Identity Credential Issuance and Verification Using Physical and Virtual Means
US11836717B2 (en) * 2017-12-04 2023-12-05 Vijay Madisetti System and method for processing payments in fiat currency using blockchain and tethered tokens
US20220132298A1 (en) * 2020-10-26 2022-04-28 Micron Technology, Inc. Cloud-service on-boarding without prior customization of endpoints

Also Published As

Publication number Publication date
US11736453B2 (en) 2023-08-22
US20220377055A1 (en) 2022-11-24

Similar Documents

Publication Publication Date Title
CN114830595B (zh) 将密码密钥委托给存储器子***
US11784827B2 (en) In-memory signing of messages with a personal identifier
US11783044B2 (en) Endpoint authentication based on boot-time binding of multiple components
US12039049B2 (en) Secure identity chaining between components of trusted computing base
US20230057638A1 (en) Session Access to Files in a File System Mounted in a Secure Memory Device
CN115391844A (zh) 安全密钥存储装置
US20230032885A1 (en) Mechanism to Support Writing Files Into a File System Mounted in a Secure Memory Device
US20240146525A1 (en) Batch Transfer of Control of Memory Devices over Computer Networks
CN114764312A (zh) 通过计算机网络控制存储器装置
KR20220128394A (ko) 다인자 인증 가능 메모리 서브시스템
US20220231838A1 (en) Server System to Control Memory Devices over Computer Networks
US11677560B2 (en) Utilization of a memory device as security token
US11968296B2 (en) Utilization of a memory device for per-user encryption
US20220382916A1 (en) Vendor Independent Facilities for Applications to Access a Secure Memory Device

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20221125

WW01 Invention patent application withdrawn after publication