掌桥专利:专业的专利平台
掌桥专利
首页

基于内部非对称密钥的存储器系统多因素认证

文献发布时间:2023-06-19 19:30:30


基于内部非对称密钥的存储器系统多因素认证

交叉引用

本专利申请要求多佛(DOVER)于2022年5月12日提交的标题为“基于内部非对称密钥的存储器系统多因素认证(MULTI-FACTOR AUTHENTICATION FOR A MEMORY SYSTEMBASED ON INTERNAL ASYMMETRIC KEYS)”的第17/663,124号美国专利申请和多佛于2021年10月22日提交的标题为“基于内部非对称密钥的存储器系统多因素认证(MULTI-FACTORAUTHENTICATION FOR A MEMORY SYSTEM BASED ON INTERNAL ASYMMETRIC KEYS)”的第63/270,924号美国临时专利申请的优先权,所述申请中的每一个转让给本受让人且明确地以全文引用的方式并入本文中。

技术领域

技术领域涉及基于内部非对称密钥的存储器系统多因素认证。

背景技术

存储器装置广泛用于在各种电子装置中存储信息,例如计算机、用户装置、无线通信装置、相机、数字显示器等等。信息是通过将存储器装置内的存储器单元编程到各个状态来存储的。例如,二进制存储器单元可编程成两个支持状态中的一个,通常对应于逻辑1或逻辑0。在一些实例中,单个存储器单元可支持超过两个可能状态,其中任一状态可由存储器单元存储。为了存取由存储器装置存储的信息,组件可以读取或感测存储器装置内的一或多个存储器单元的状态。为了存储信息,组件可将存储器装置内的一或多个存储器单元写入或编程到对应状态。

存在各种类型的存储器装置,包含磁性硬盘、随机存取存储器(RAM)、只读存储器(ROM)、动态RAM(DRAM)、同步动态RAM(SDRAM)、静态RAM(SRAM)、铁电RAM(FeRAM)、磁性RAM(MRAM)、电阻性RAM(RRAM)、快闪存储器、相变存储器(PCM)、3维交叉点存储器(3D交叉点)、或非(NOR)和与非(NAND)存储器装置等。存储器装置可以是易失性或非易失性的。易失性存储器单元(例如,DRAM单元)可随时间推移而丢失它们的编程状态,除非它们通过外部电源周期性地刷新。非易失性存储器单元(例如,NAND存储器单元)可将它们的编程状态维持很长一段时间,即使在不存在外部电源的情况下也如此。

发明内容

描述一种设备。所述设备可包含存储器装置和所述存储器装置的控制器。所述控制器可配置成使所述设备:至少部分地基于与所述设备相关联的唯一装置秘密和存储在所述设备处的内容而生成密钥;生成非对称密钥对,其包含至少部分地基于所生成密钥的私用密钥和至少部分地基于所生成密钥的公用密钥;至少部分地基于所生成非对称密钥对而生成证书;以及传输所生成证书。

描述一种存储代码的非暂时性计算机可读媒体。所述代码可包含指令,所述指令在由电子装置的处理器执行时可使所述电子装置:在存储器系统处,至少部分地基于与所述存储器系统相关联的唯一装置秘密和存储在所述存储器系统处的内容而生成密钥;在所述存储器系统处生成非对称密钥对,其包含至少部分地基于所生成密钥的私用密钥和至少部分地基于所生成密钥的公用密钥;在所述存储器系统处,至少部分地基于所生成非对称密钥对而生成用于与主机系统一起操作的证书;以及通过所述存储器系统将所生成证书传输到所述主机系统。

描述一种方法。所述方法可包含:在存储器系统处,至少部分地基于与所述存储器系统相关联的唯一装置秘密和存储在所述存储器系统处的内容而生成密钥;在所述存储器系统处生成非对称密钥对,其包含至少部分地基于所生成密钥的私用密钥和至少部分地基于所生成密钥的公用密钥;在所述存储器系统处,至少部分地基于所生成非对称密钥对而生成用于与主机系统一起操作的证书;以及通过所述存储器系统将所生成证书传输到所述主机系统。

附图说明

图1示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的系统的实例。

图2示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的系统的实例。

图3示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的过程流的实例。

图4示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的系统的实例。

图5示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的存储器系统的框图。

图6示出根据本文所公开的实例的流程图,示出了支持基于内部非对称密钥的存储器系统多因素认证的一或多种方法。

具体实施方式

一些计算平台可能涉及一或多个主机系统,这些主机系统可用于(例如,直接或间接地)与一或多个存储器系统通信。在一些实例中,维护此类计算平台的安全性或完整性可能依赖于互连系统的认证,例如系统身份的认证,以验证此类系统正在交换信令,例如存取命令、请求、数据和其它具有真实性的信令(例如,在已知和经验证的传输系统与接收系统之间)。然而,一些维护系统身份真实性的技术,包含一些密码保护技术,可能容易受到标识信息或认证信息被盗、克隆或以其它方式不安全地实施的攻击,或者可能尚未在主机系统和存储器系统本身之间传信以建立特定装置的真实性(例如,根据唯一硬件或装置身份)的上下文中实施。

根据本文所公开的实例,主机系统和存储器系统可配置成实施各种生成和分发非对称公用密钥的技术,这可支持在响应所交换信令(例如存取命令、请求、数据或其它信令)之前评估介接系统的真实性(例如,系统身份、硬件身份)(例如,评估是否信任接收到的信令,评估是否执行响应性动作,例如存取或配置存储器系统,执行经认证读取命令或经认证写入命令)。在一些实例中,此类技术可包含直接在存储器系统中实施非对称密码安全功能。例如,存储器系统可配置成通过存储器系统的公用非对称密钥以密码方式标识(例如,通过主机系统进行),所述公用非对称密钥可与存储器系统的唯一硬件身份相关联,并且存储器系统的真实性可以通过使用存储器系统的私用非对称密钥对质询签名来证明。在一些实例中,主机系统可以通过用主机系统的私用非对称密钥对命令签名来标识,所述私用非对称密钥可与主机系统的唯一硬件身份相关联,并且签名可由存储器系统使用主机系统的公用非对称密钥来验证。一旦建立,密码信令(例如,命令、请求、数据)和响应就可以通过非对称密钥或对称密钥来实现,这取决于系统的配置(例如,根据主机系统、存储器系统或这两者的命令配置位)。相比于其中不执行密码硬件标识信息的分发或者这种分发可能更容易遭受克隆或窃取的其它技术,例如以可能不安全的方式分发对称密钥的技术,通过在装置级别或系统级别实施此类生成和分发例如非对称公用密钥的非对称装置标识信息的技术,介接硬件装置可以支持更高的安全性(例如,更强的真实性验证)。

本公开的特征首先在参考图1到4的系统和实例过程流的上下文中描述。本公开的这些和其它特征进一步由参考图5和6的涉及基于内部非对称密钥的存储器系统多因素认证的设备图和流程图示出,并且在所述设备图和流程图的上下文中描述。

图1示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的系统100的实例。系统100包含与存储器系统110耦合的主机系统105。

存储器系统110可以是或包含任何装置或装置集合,其中装置或装置集合包含至少一个存储器阵列。例如,存储器系统110可以是或包含通用快闪存储(UFS)装置、嵌入式多媒体控制器(eMMC)装置、快闪装置、通用串行总线(USB)快闪装置、安全数字(SD)卡、固态驱动器(SSD)、硬盘驱动器(HDD)、双列直插式存储器模块(DIMM)、小型DIMM(SO-DIMM)或非易失性DIMM(NVDIMM),以及其它可能性。

系统100可包含在计算装置中,所述计算装置例如台式计算机、膝上型计算机、网络服务器、移动装置、交通工具(例如,飞机、无人机、火车、汽车或其它运输工具)、具有物联网(IoT)功能的装置、嵌入式计算机(例如,交通工具、工业设备或联网商业装置中包含的嵌入式计算机),或包含存储器和处理装置的任何其它计算装置。

系统100可包含可与存储器系统110耦合的主机系统105。在一些实例中,此耦合可包含与主机系统控制器106介接,所述主机系统控制器可以是配置成使主机系统105根据如本文中所描述的实例执行各种操作的控制器或控制组件的实例。主机系统105可包含一或多个装置或实体(例如,硬件实体、固件实体、软件实体)或其各种组合,并且在一些情况下,可包含处理器芯片组和由处理器芯片组执行的软件堆栈。例如,主机系统105可包含配置成与存储器系统110或其中的装置通信的应用程序。处理器芯片组可包含一或多个芯、一或多个高速缓存(例如,在主机系统105本地或包含在主机系统105中的存储器)、存储器控制器(例如,NVDIMM控制器)和存储协议控制器(例如,外围组件互连高速(PCIe)控制器、串行高级技术附件(SATA)控制器)。主机系统105可使用存储器系统110,例如以将数据写入到存储器系统110和从存储器系统110读取数据。尽管在图1中示出单个主机系统105和单个存储器系统110,但是主机系统105可与任何数量的存储器系统110耦合,并且存储器系统110可与任何数量的主机系统105耦合。

主机系统105可经由至少一个物理主机接口与存储器系统110耦合,所述物理主机接口可支持主机系统105和存储器系统110之间的各种传信。在一些情况下,主机系统105和存储器系统110可配置成使用相关联的协议经由物理主机接口通信(例如,在存储器系统110和主机系统105之间交换或以其它方式传送控制、地址、数据和其它信号)。物理主机接口的实例可包含但不限于SATA接口、UFS接口、eMMC接口、PCIe接口、USB接口、光纤通道接口、小型计算机系统接口(SCSI)、串行连接的SCSI(SAS)、双倍数据速率(DDR)接口、DIMM接口(例如,支持DDR的DIMM套接接口)、开放式NAND快闪接口(ONFI),以及低功率双倍数据速率(LPDDR)接口。在一些实例中,一或多个此类接口可包含在主机系统105的主机系统控制器106和存储器系统110的存储器系统控制器115中或以其它方式支持在它们之间。在一些实例中,主机系统105可经由用于包含在存储器系统110中的每个存储器装置130的相应物理主机接口或经由用于包含在存储器系统110中的每个类型的存储器装置130的相应物理主机接口而与存储器系统110耦合(例如,主机系统控制器106可与存储器系统控制器115耦合)。

存储器系统110可包含存储器系统控制器115和一或多个存储器装置130。存储器装置130可包含任一类型的存储器单元(例如,非易失性存储器单元、易失性存储器单元或其任何组合)的一或多个存储器阵列。尽管图1的实例中示出两个存储器装置130-a和130-b,但是存储器系统110可包含任何数量的存储器装置130。此外,如果存储器系统110包含超过一个存储器装置130,那么存储器系统110内的不同存储器装置130可包含相同或不同类型的存储器单元。

存储器系统控制器115可与主机系统105耦合并与其通信(例如,经由物理主机接口),并且可以是配置成使存储器系统110根据如本文中所描述的实例执行各种操作的控制器或控制组件的实例。存储器系统控制器115还可与存储器装置130耦合并与其通信以执行操作,例如在存储器装置130处读取数据、写入数据、擦除数据或刷新数据——及其它这类操作——这些可统称为存取操作。在一些情况下,存储器系统控制器115可从主机系统105接收命令,并与一或多个存储器装置130通信以执行此类命令(例如,在所述一或多个存储器装置130内的存储器阵列处)。例如,存储器系统控制器115可从主机系统105接收命令或操作,并且可将命令或操作转换成指令或适当的命令,以实现存储器装置130的所需存取。在一些情况下,存储器系统控制器115可与主机系统105及一或多个存储器装置130交换数据(例如,响应于来自主机系统105的命令或以其它方式与所述命令相关联)。例如,存储器系统控制器115可将与存储器装置130相关联的响应(例如,数据包或其它信号)转换成用于主机系统105的对应信号。

存储器系统控制器115可配置成用于与存储器装置130相关联的其它操作。例如,存储器系统控制器115可执行或管理操作,例如耗损均衡操作、垃圾收集操作、错误检测操作或错误校正操作等错误控制操作、加密操作、高速缓存操作、媒体管理操作、背景刷新、健康监测,以及与来自主机系统105的命令相关联的逻辑地址(例如,逻辑块地址(LBA))和与存储器装置130内的存储器单元相关联的物理地址(例如,物理块地址)之间的地址转换。

存储器系统控制器115可包含硬件,例如一或多个集成电路或离散组件、缓冲存储器或其组合。硬件可包含具有专用(例如,硬译码)逻辑以执行本文中属于存储器系统控制器115的操作的电路系统。存储器系统控制器115可以是或包含微控制器、专用逻辑电路系统(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理器(DSP)),或任何其它合适的处理器或处理电路系统。

存储器系统控制器115还可包含本地存储器120。在一些情况下,本地存储器120可包含只读存储器(ROM)或其它可存储操作代码(例如,可执行指令)的存储器,所述操作代码可由存储器系统控制器115执行以执行本文中属于存储器系统控制器115的功能。在一些情况下,本地存储器120可另外或替代地包含静态随机存取存储器(SRAM)或其它可供存储器系统控制器115用于内部存储或计算的存储器,例如,与本文中属于存储器系统控制器115的功能有关的内部存储或计算。另外或替代地,本地存储器120可用作存储器系统控制器115的高速缓存。例如,如果从存储器装置130读取或向其写入,那么数据可以存储在本地存储器120中,并且数据可在本地存储器120内供主机系统105(例如,相对于存储器装置130具有减小的时延)用于后续根据高速缓存策略进行检索或操控(例如,更新)。

尽管图1中的存储器系统110的实例已经示出为包含存储器系统控制器115,但在一些情况下,存储器系统110可能不包含存储器系统控制器115。例如,存储器系统110可另外或替代地依赖于外部控制器(例如,由主机系统105实施)或一或多个本地控制器135,它们可分别在存储器装置130内部,以执行本文中属于存储器系统控制器115的功能。一般来说,本文中属于存储器系统控制器115的一或多个功能在一些情况下实际可由主机系统105、本地控制器135或其任何组合执行。在一些情况下,至少部分地受存储器系统控制器115管理的存储器装置130可被称为受管理存储器装置。受管理存储器装置的实例是受管理NAND(MNAND)装置。在一些实例中,存储器系统110的组件可以实施在单个半导体裸片中,例如在芯片上系统(SoC)实施方案中。

存储器装置130可包含一或多个非易失性存储器单元阵列。例如,存储器装置130可包含NAND(例如,NAND快闪)存储器、ROM、相变存储器(PCM)、自选存储器、其它硫族化物基存储器、铁电随机存取存储器(RAM)(FeRAM)、磁性RAM(MRAM)、NOR(例如,NOR快闪)存储器、自旋转移力矩(STT)-MRAM、导电桥接RAM(CBRAM)、电阻性随机存取存储器(RRAM)、氧化物基RRAM(OxRAM)、电可擦除可编程ROM(EEPROM)或其任何组合。另外或替代地,存储器装置130可包含一或多个易失性存储器单元阵列。例如,存储器装置130可包含RAM存储器单元,例如动态RAM(DRAM)存储器单元和同步DRAM(SDRAM)存储器单元。

在一些实例中,存储器装置130可包含(例如,在同一裸片上或在同一封装内)本地控制器135,其可在相应存储器装置130的一或多个存储器单元上执行操作。本地控制器135可结合存储器系统控制器115操作,或者可执行本文中属于存储器系统控制器115的一或多个功能。例如,如图1中所示,存储器装置130-a可包含本地控制器135-a,且存储器装置130-b可包含本地控制器135-b。

在一些情况下,存储器装置130可以是或包含NAND装置(例如,NAND快闪装置)。存储器装置130可以是或包含存储器裸片160。例如,在一些情况下,存储器装置130可以是包含一或多个裸片160的封装。在一些实例中,裸片160可以是从晶片切割的一片电子器件级半导体(例如,从硅晶片切割的硅裸片)。每一裸片160可包含一或多个平面165,每个平面165可包含相应的一组块170,其中每个块170可包含相应的一组页175,每个页175可包含一组存储器单元。

在一些情况下,NAND存储器装置130可包含配置成各自存储一个信息位的存储器单元,其可以称为单层级单元(SLC)。另外或替代地,NAND存储器装置130可包含配置成各自存储多个信息位的存储器单元,如果配置成各自存储两个信息位,那么其可以称为多层级单元(MLC),如果配置成各自存储三个信息位,那么可以称为三层级单元(TLC),如果配置成各自存储四个信息位,那么可以称为四层级单元(QLC),或者更一般地称为多层级存储器单元。多层级存储器单元相对于SLC存储器单元可提供更大的存储密度,但是在一些情况下,可能会涉及更窄的读取或写入裕度或支持电路系统的更大复杂性。

在一些情况下,平面165可以指块170的群组,并且在一些情况下,可在不同平面165内进行并行操作。例如,并行操作可在不同块170内的存储器单元上执行,只要所述不同块170在不同平面165中即可。在一些情况下,单独的块170可被称为物理块,并且虚拟块180可以指其内可进行并行操作的块170的群组。例如,并行操作可在分别位于平面165-a、165-b、165-c和165-d的块170-a、170-b、170-c和170-d上执行,并且块170-a、170-b、170-c和170-d可统称为虚拟块180。在一些情况下,虚拟块可包含来自不同存储器装置130的块170(例如,包含存储器装置130-a和存储器装置130-b的一或多个平面中的块)。在一些情况下,虚拟块内的块170可在它们相应的平面165内具有相同块地址(例如,块170-a可以是平面165-a的“块0”,块170-b可以是平面165-b的“块0”,以此类推)。在一些情况下,在不同平面165中执行并行操作可具有一或多个限制,例如并行操作是对在相应平面165内具有相同页地址的不同页175内的存储器单元执行的(例如,与命令解码、页地址解码电路系统或其它电路系统跨平面165共享有关)。

在一些情况下,块170可包含组织成行(页175)和列(例如,串,未示出)的存储器单元。例如,同一页175中的存储器单元可共享公共字线(例如,与其耦合),并且同一串中的存储器单元可共享公共数字线(其可被替代地称作位线)(例如,与其耦合)。

对于一些NAND架构,存储器单元可在第一粒度级(例如,在页粒度级)读取和编程(例如,写入),但是可在第二粒度级(例如,在块粒度级)擦除。也就是说,页175可以是可独立编程或读取(例如,作为单个编程或读取操作的部分并行编程或读取)的最小存储器(例如,存储器单元集)单位,并且块170可以是可独立擦除(例如,作为单个擦除操作的部分并行擦除)的最小存储器(例如,存储器单元集)单位。此外,在一些情况下,NAND存储器单元可在它们可以用新数据重写之前擦除。因此,例如,在一些情况下,已用页175可直到包含页175的整个块170被擦除才更新。

系统100可包含任何数量的支持使用非对称密钥的存储器系统信令认证的非暂时性计算机可读媒体。例如,主机系统105、存储器系统控制器115或存储器装置130(例如,本地控制器135)可包含或者可以其它方式存取一或多个非暂时性计算机可读媒体,所述非暂时性计算机可读媒体存储用于执行本文中属于主机系统105、存储器系统控制器115或存储器装置130的功能的指令(例如,固件)。例如,此类指令如果由主机系统105(例如,主机系统控制器106)、存储器系统控制器115或存储器装置130(例如,本地控制器135)执行,可使主机系统105、存储器系统控制器115或存储器装置130执行本文中所描述的一或多个相关联功能。

在一些情况下,存储器系统110可使用存储器系统控制器115提供受管理存储器系统,所述受管理存储器系统可包含例如一或多个存储器阵列和与本地(例如,裸片上或封装中)控制器(例如,本地控制器135)组合的相关电路系统。受管理存储器系统的实例是受管理NAND(MNAND)系统。

根据本文所公开的实例,主机系统105和存储器系统110可配置成实施各种生成和分发非对称公用密钥的技术,这可支持在响应所交换信令(例如存取命令、请求、数据或其它信令)之前评估主机系统105和存储器系统110的真实性(例如,系统身份、硬件身份)(例如,评估是否信任接收到的信令,评估是否执行响应性动作,例如存取或配置存储器系统110,执行经认证读取命令或经认证写入命令)。在一些实例中,此类技术可包含直接在存储器系统110中实施非对称密码安全功能。例如,存储器系统110可配置成通过公用非对称密钥以密码方式标识,并且存储器系统110的真实性可以通过使用存储器系统的非对称私用密钥对质询签名来证明。在一些实例中,主机系统105可以通过用主机系统105的非对称私用密钥对命令签名来标识,并且签名可由存储器系统110使用主机系统105的非对称公用密钥来验证。一旦建立,密码信令(例如,命令、请求、数据)和响应就可以通过非对称密钥或对称密钥来实现,这取决于系统的配置(例如,根据主机系统105、存储器系统110或这两者的命令配置位)。相比于其中不执行密码硬件标识信息的分发或者这种分发可能更容易遭受克隆或窃取的其它技术,例如以可能不安全的方式分发对称密钥的技术,通过在装置级别或系统级别实施此类生成和分发例如非对称公用密钥的非对称装置标识信息的技术,主机系统105和存储器系统110可以支持更高的安全性(例如,更强的真实性验证)。

图2示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的系统200(例如,计算平台)的实例。系统200可包含主机系统105-a和存储器系统110-a,它们可以是参考图1所描述的相应系统的实例。主机系统105-a和存储器系统110-a可实施各种用于交换公用密钥的技术以支持具有身份真实性(例如,签名)和完整性(例如,加密)以及其它特性的相应系统之间的信令通信,所述真实性和完整性可基于主机系统105-a和存储器系统110-a的唯一和私用密码身份。主机系统105-a可包含主机系统控制器106-a,存储器系统110-a可包含存储器系统控制器115-a,并且在一些实例中,主机系统控制器106-a和存储器系统控制器115-a可配置成分别执行主机系统105-a和存储器系统110-a处的一或多个所述操作。尽管技术是参考系统200的单个主机系统105-a和单个存储器系统110-a描述的,但所描述的技术可以扩展以支持与任何数量的存储器系统110耦合的主机系统105的实施方案,或与任何数量的主机系统105耦合的存储器系统110的实施方案,或与多个存储器系统110耦合的多个主机系统105的网络的实施方案。

主机系统105-a可以是使用存储器系统110-a的至少一部分(例如,存储装置240)用于信息存储的系统的实例,所述信息存储可包含支持主机系统105-a将信息写入到存储器系统110-a或主机系统105-a从存储器系统110-a读取信息或这两者的各种操作。在一些实例中,主机系统105-a可以表征为“本地”,这可以指相对直接或近距离的物理、电气或其它通信耦合。在一些其它实例中,主机系统105-a可以表征为“远程”,这可以指相对较远(例如,非同一位置)的通信耦合,可能涉及一或多个有线、无线、光学或其它相对较远的通信耦合,例如云应用程序或其它分布式计算系统。

在一些实例中,主机系统105-a可包含一或多个主机实体210,可以是与其耦合,或者可以其它方式与其相关联。主机实体210可以实施为硬件实体、固件实体或软件实体,并且可包含具有主机系统105-a或经由主机系统105-a的各种串行、并行或分级耦合或逻辑组织。在一些实例中,主机实体210可以请求或以其它方式经由公共控制器或接口(例如,经由主机系统控制器106-a)执行与存储器系统110-a传信。在各种实例中,主机实体210可与不同功能、不同特征集合、不同权限、不同存储属性(例如,数据保护属性)以及其它不同特性相关联。

在一些实例中,每个主机实体210可与唯一标识符(例如,秘密标识符、唯一装置秘密、唯一实体秘密)相关联,这可包含或可支持生成主机实体210的相应私用密钥。在一些实例中,主机实体210的标识符自身可能不是私用的,但是可以基于主机实体210的标识符(例如,公用或私用)和主机系统105-a的私用标识符(例如,私用主控标识符)生成主机实体210的私用密钥(例如,通过主机系统105-a)。根据本文所公开的实例,此类技术可支持每个主机实体210被唯一地标识和认证(例如,与其它主机实体210分开)。

主机系统105-a的实例可与原始设备制造商(OEM)主机实体210-a、操作系统(OS)供应商主机实体210-b和独立软件供应商(ISV)主机实体210-c相关联。在一些其它实例中,主机系统105可包含任何数量的一或多个主机实体210或以其它方式与其相关联,包含但不限于一或多个OEM主机实体210、OS供应商主机实体210、ISV主机实体210或其它类型的主机实体。在一些实例中,主机实体210可省略,或者不单独考虑,在此情况下,主机系统105-a(和适用的任何主机实体210)可以实施主控私用密钥,其可基于主机系统105-a的单个或共享唯一标识符(例如,与主机系统105-a相关联的秘密标识符、唯一装置秘密或唯一主机秘密)。

在一些实例中,主机系统105-a可与用于存储认证或加密信息(例如,生成或接收到的密钥、证书)的位置相关联,所述位置例如密钥存储装置215。例如,主机系统105-a可使用密钥存储装置215存储与主机系统105-a相关联的一或多个私用密钥或证书。在一些实例中,密钥存储装置215可为主机系统105-a的一部分,例如主机系统105-a的专用存储组件的实施方案。另外或替代地,密钥存储装置215的一或多个组件可位于主机系统105-a外部,但是可以其它方式由主机系统105-a存取(例如,以安全的方式)。在各种实例中,密钥存储装置215可包含非易失性存储位置(例如,用于静态密钥或在相对较长时间内维持的密钥)或易失性存储位置(例如,用于短暂密钥或以其它方式相对频繁地生成的密钥),或这两者。尽管密钥存储装置215示出为与主机系统控制器106-a分开,但是在一些实例中,密钥存储装置215可以是主机系统控制器106-a的一部分或以其它方式与其相关联,例如还包含主机系统105-a或主机系统控制器106-a的固件的存储位置。

在一些实例中,主机系统105-a可包含内容220,其可以指存储在主机系统105-a处的各种类型的信息。在一些实例中,内容220可以存取,或以其它方式用于支持各种密钥生成(例如,基于内容的密钥生成)或根据本文所公开的实例的其它密码技术。例如,内容220可包含主机系统105-a的固件,例如启动代码(例如,第二级启动代码,“L1”启动代码),或固件安全描述符(FSD),其可用于建立主机系统105-a的操作或密码状态(例如,固件状态)。在一些实例中,与内容220相关联的信息可被传输到存储器系统110-a,以支持各种认证或加密技术(例如,供存储器系统110-a生成密钥或证书以与存储器系统110-a一起操作)。尽管内容220示出为与主机系统控制器106-a分开,但是在一些实例中,内容220可以是主机系统控制器106-a的一部分或以其它方式与其相关联,例如包含主机系统105-a或主机系统控制器106-a的固件的存储位置。

存储器系统110-a可包含存储装置240,其可以指包含在存储器系统110-a中或以其它方式与其相关联的本地存储器120的一或多个实例或一或多个存储器装置130或其各种组合的集体存储容量。在一些实例中,存储装置240可以划分或以其它方式组织成分区245(例如,存储器范围、地址范围),其可以指相关联本地存储器120或存储器装置130的逻辑地址或物理地址的各种子集或范围。在一些实例中,分区245可被指派有初始地址范围,并且可以通过指派到不同地址范围来更新,包含附加额外的新地址、指派到初始地址范围的子集(例如,修剪范围)或指派到全新的地址范围。

在一些实例中,分区245或其部分可以指派给或分配给不同功能或属性,例如其中一或多个分区245与相应一或多个主机实体210或其相应公用或私用密钥相关联的实例。在实例实施方案中,分区245-a可与OEM主机实体210-a相关联,分区245-b可与OS供应商主机实体210-b相关联,并且分区245-c可与ISV主机实体210-c相关联。在一些实例中,分区245-d可能未分配(例如,不专用于特定目的或实体,自由空间),或者可以在多个主机实体210当中共享,还存在其它分配分区245的实例。在一些实例中,分区245可用于实施各种分级密钥或认证技术。例如,每一分区245或分区245的某一部分可被指派有或更新有保护属性(例如,启用或停用写入保护属性,启用或停用读取保护属性),其可与特定于给定主机实体210或主机系统105-a通用的各种密钥、认证或加密相关联,还存在其它实例。

在一些实例中,存储器系统110-a可与用于存储认证或加密信息(例如,生成或接收到的密钥、证书)的位置相关联,例如密钥存储装置250。例如,存储器系统110-a可使用密钥存储装置250存储与存储器系统110-a相关联的一或多个私用密钥,或由存储器系统110-a生成的一或多个公用密钥或证书,或从主机系统105-a(或未示出的其它主机系统105)接收到的一或多个公用密钥或证书。在一些实例中,密钥存储装置250可为存储器系统110-a的一部分,例如存储器系统110-a的专用存储组件的实施方案。另外或替代地,密钥存储装置250可位于存储器系统110-a外部,但是可以其它方式由存储器系统110-a存取(例如,以安全的方式)。在各种实例中,密钥存储装置250可包含非易失性存储位置(例如,用于静态密钥或在相对较长时间内维持的密钥)或易失性存储位置(例如,用于短暂密钥或以其它方式相对频繁地生成的密钥),或这两者。尽管密钥存储装置250示出为与存储装置240分开,但是在一些实例中,密钥存储装置250可包含在存储装置240的一部分中(例如,在单独或专用的分区245)。此外,尽管密钥存储装置250示出为与存储器系统控制器115-a分开,但是在一些实例中,密钥存储装置250可以是存储器系统控制器115-a的一部分或以其它方式与其相关联,例如还包含存储器系统110-a或存储器系统控制器115-a的固件的存储位置(例如,本地存储器120)。

在一些实例中,存储器系统110-a可包含物理不可克隆函数(PUF)255,其可支持对于存储器系统110-a是唯一的标识符的指派的生成(例如,用于生成存储器系统110-a的秘密标识符或唯一装置秘密)。PUF 255可包含具有对于PUF 255是唯一的内在物理特性的各种组件或电路元件,所述内在物理特性可用于建立存储器系统110-a的内在唯一性。例如,PUF可包含一组一或多个晶体管、电阻器、电容器、存储器单元(例如,SRAM单元,其在一些情况下可包含在参考图1所描述的本地存储器120中),或其它电路元件或其组合,其在存取时支持生成对于存储器系统110-a是唯一的数字签名。在一些实例中,存储器系统110-a的控制器(例如,存储器系统控制器115-a)可存取PUF 255或以其它方式与其相互作用以生成存储器系统110-a的一或多个私用密钥,所述私用密钥随后可用于生成公用密钥以建立存储器系统110-a和主机系统105-a(例如,或适用的主机实体210)之间的真实性或加密。尽管PUF 255示出为与密钥存储装置250分开,但在一些实例中,PUF 255可包含在密钥存储装置250中或以其它方式解释为其部分(例如,存储器系统控制器115-a的部分、存储器系统110-a的本地存储器120的部分)。

在各种实施方案中,PUF 255自身或由PUF 255生成的信令或这两者无法在存储器系统110-a之外存取。此类不可存取性可通过在存储器系统110-a的一部分中包含PUF 255和所述密码技术中涉及的其它组件的各种实施方案来支持,在所述部分中,尝试存取此类组件会破坏组件,或者此类组件或相关联信令以其它方式被屏蔽,不受破坏性或非破坏性探测或窥探技术的影响。例如,至少PUF 255和所述密码技术中涉及的其它组件(例如,处理私用密钥或唯一装置秘密中涉及的组件,其可包含存储器系统控制器115-a的至少一部分或其至少某一部分)(如果并非存储器系统110-a的所有组件)可实施于连续半导体芯片中,例如SoC实施方案。

在一些实例中,存储器系统110-a可包含公用密钥表260(例如,椭圆曲线密码公用密钥表),其可配置成存储、组织或分配公用密钥,例如从主机系统105-a接收到的那些,或在存储器系统110-a处生成的那些,或这两者。在一些实例中(例如,在主机实体210与主机系统105-a传输的相应公用密钥相关联的实施方案中),公用密钥表260可以为OEM主机实体210-a、OS供应商主机实体210-b和ISV主机实体210-c(例如,分别与分区245-a、245-b和245-c相关联)中的每一个保持相应公用密钥或其映射。尽管公用密钥表260示出为与密钥存储装置250分开,但在一些实例中,公用密钥表260可包含在密钥存储装置250中,或以其它方式解释为其部分(例如,存储器系统控制器115-a的部分,存储器系统110-a的本地存储器120的部分)。

在一些实施方案中,公用密钥表260可与公用密钥和装置标识符或分区245或保护属性(例如,写入保护配置、读取保护配置)或其各种组合之间的映射以及密钥和相关联配置之间的其它映射相关联。例如,公用密钥表260可提供一或多个主机系统105(例如,主机系统105-a)或其主机实体210与特定公用密钥或对称密钥的映射。此类映射还可包含此类密钥和一或多个分区245之间的映射,或此类密钥或分区245与一或多个保护属性之间的映射,例如分区245是否配置有读取保护、写入保护或这两者。在一些实例中,公用密钥表260的映射可包含密钥、主机系统105或主机实体210与多个分区245的映射,其可支持每一分区245使用公共密钥但是具有唯一保护属性。在一些实例中,公用密钥表可支持允许主控主机系统105或相关联密钥将分区245指派到另一主机系统105或主机实体210或其相应密钥的密钥层次。

在一些实例中,存储器系统110-a可包含平台配置寄存器(PCR)270,其可存储或测量软件状态(例如,版本、更新状态),例如在存储器系统110-a上运行的软件的状态,以及供此类软件使用的配置数据(例如,用于表示存储器系统110-a的平台软件状态)。在一些实例中,PCR 270可包含可经评估以确定存储器系统110-a是否已受损或可能以其它方式不可信的信息。尽管PCR 270示出为与存储器系统控制器115-a分开,但在一些实例中,PCR 270可以是存储器系统控制器115-a的一部分或以其它方式与其相关联,例如与存储器系统110-a或存储器系统控制器115-a的固件(例如,本地存储器120)相关联的位置。此类技术可支持PCR 270存储或测量此类固件的状态,其可用于评估此类固件是否已被不利地更新(例如,评估存储器系统110-a是否可以进行认证)。

在一些实例中,存储器系统110-a可包含重播受保护存储器块(RPMB)265,其可提供为以经认证和重播受保护的方式存储数据的构件,只能经由成功认证的读取和写入存取来读取和写入。在一些实例中,RPMB 265可包含可经评估以确定与存储器系统110-a交换的信令是否被拦截和重播的信息,这可指示系统200的一或多个装置或连接是否不可信。尽管RPMB 265示出为与存储器系统控制器115-a分开,但在一些实例中,RPMB 265可以是存储器系统控制器115-a的一部分或以其它方式与其相关联,例如包含存储器系统110-a或存储器系统控制器115-a的固件的存储位置(例如,本地存储器120)。在一些实例中,RPMB 265可与固定大小、固定的一组地址或这两者相关联。

在一些实例中,存储器系统110-a可包含内容280,其可以指存储在存储器系统110-a处的各种类型的信息。在一些实例中,内容280可以存取,或以其它方式用于支持各种密钥生成(例如,基于内容的密钥生成)或根据本文所公开的实例的其它密码技术。例如,内容280可包含存储器系统110-a的固件,例如启动代码(例如,第一级启动代码,“L0”启动代码,第二级启动代码,“L1”启动代码,可被主机系统105-a调用或读取的启动代码),或FSD,其可用于建立存储器系统110-a的操作或密码状态。在一些实例中,与内容280相关联的信息可供存储器系统110-a用于支持各种认证或加密技术(例如,生成证书以与主机系统105-a一起操作)。尽管内容280示出为与存储器系统控制器115-a分开,但是在一些实例中,内容280可以是存储器系统控制器115-a的一部分或以其它方式与其相关联,例如包含存储器系统110-a或存储器系统控制器115-a的固件的存储位置。此外,尽管内容280示出为与存储装置240分开,但在一些实例中,内容280可指代包含在存储装置240的一部分中(例如,在单独或专用的分区245中)的信息。在一些实施方案中,内容280可从PCR 270接收信息或者可以指所述PCR的一或多个方面。

系统200的一或多个组件可配置成实施非对称密钥分发以在主机系统105-a和存储器系统110-a之间建立经认证信令、经加密信令或这两者(例如,根据经认证系统身份),这可包含直接在存储器系统110-a中实施密码安全功能(例如,利用存储器系统控制器115-a支持各种非对称密码技术的能力)。在一些实例中,此类技术可涉及在主机系统105-a和存储器系统110-a之间传递基本公用的装置标识信息,其支持相应系统的私用认证(例如,装置特定或硬件特定的认证,而不用试图保密或避免暴露对应于相应装置的经交换私用或秘密密钥材料)。在一些实例中,此类非对称密码可用于在信令交换的每一侧上(例如,在主机系统105-a和存储器系统110-a中的每一个处)使用自身不在主机系统105-a和存储器系统110-a之间传送的公共秘密派生等效或以其它方式对称的密钥,这可利用经认证或经加密信令的对称密钥技术相对于非对称密钥技术的效率。在一些实例中,此类技术可经实施以在主机系统105-a和存储器系统110-a之间建立虚拟认证信道205,其可用于在主机系统105-a和存储器系统110-a之间传输信令(例如,经加密信令、未加密信令)和相关联签名(例如,非对称签名,如椭圆曲线数字签名算法(ECDSA)签名,对称签名,如散列消息认证码(HMAC)签名)。

在一些实例中,系统200可配置成支持主机系统105-a和存储器系统110-a之间的信令的签名和验证(例如,认证)(例如,根据经签名命令信令、经签名请求信令、经签名数据信令或经签名响应信令),其可经实施以认证此类信令的传输系统,或确保信令在被接收系统接收之前尚未更改,或这两者。根据这些技术,接收系统能够评估接收到的信令以确定经传输信令是不是由未验证或未经授权的传输系统传输的,或经传输信令是否被更改或以其它方式受损。在一些实例中,此类技术可支持一对多安全布置,因为多个接收系统能够实施与传输系统的(例如,非对称密钥对中的)单个私用密钥相关联的传输系统的(例如,非对称密钥对中的)同一公用密钥。

在一些实例中,为了对主机系统105-a和存储器系统110-a之间的信令进行签名和验证,给定信令实例(例如,消息、命令、请求、数据包、响应)的签名可以通过散列或以其它方式使用函数(例如,散列函数、密码散列算法)处理信令实例来派生,所述函数接收信令实例和与传输系统相关联的私用密钥作为输入。可以使用具有相同信令实例的相同函数以及与传输系统相关联的相同私用密钥或与传输系统相关联的(例如,非对称密钥对中的)相关联公用密钥重新创建此类函数的输出(例如,签名、散列摘要)。在实例中,对于与1兆字节编程操作相关联的信令实例,基于1兆字节数据和私用密钥的散列函数可以是256位签名或散列摘要。

为了支持验证传输系统的真实性,传输系统可以传输信令实例以及对应的签名,这些签名可以由接收系统接收。接收系统可能已经接收到或以其它方式生成了传输系统的相关联公用密钥,因此,可以基于接收到的信令实例和传输系统的相关联公用密钥生成试用签名。如果试用签名与接收到的签名匹配,那么接收系统可以确定传输系统是真实的(例如,信令实例是来自可信系统的传输),并且可以继续处理或以其它方式对接收到的信令实例执行响应动作。在一些实施方案中,签名生成可配置成使得,即使信令实例相同,生成的签名也会不同。在此类实施方案中,签名生成和验证操作可以进一步基于传输系统和接收系统都理解的随机数、一次性随机数或单调计数器。

在一些实例中,系统200可配置成支持主机系统105-a和存储器系统110-a之间的信令的加密和解密(例如,根据经加密签名、经加密命令信令、经加密请求信令、经加密数据信令或经加密响应),其可经实施以保护此类信令的内容不被拦截和解译或以其它方式处理(例如,维持信令自身的完整性)。根据这些技术,传输系统可对信令实例进行加密以使用传输系统已知的(例如,对称密钥对中的)密钥传输,接收系统可使用接收系统已知的(例如,相同对称密钥对中的)密钥对接收到的此类信令实例进行解密,所述密钥可与传输系统已知的对称密钥相同,或可以其它方式等效或可用于此类解密。在一些实例中,此类技术可支持一对一安全布置,因为对称密钥对只能被单个传输系统和单个接收系统理解(例如,当对称密钥对是基于传输系统和接收系统中的每一个的唯一标识符时)。但是,一些密码技术可支持除一对一安全布置以外的布置,例如当对称密钥是基于超过两个系统的唯一标识符时。

所述技术的一些实施方案可使用非对称密码,其中与主机系统105-a相关联的公用密钥可以上载到一或多个存储器系统110(例如,存储器系统110-a),而不暴露主机系统105-a的私用密钥,这可防止恶意参与者窃取密钥并模拟真实密钥持有者(例如,模拟主机系统105-a)。此类技术还允许更换公用密钥,这可能不同于其它技术,例如与RPMB或重播保护单调计数器(RPMC)相关的技术。在一些实例中,此类非对称密码技术可有助于使用公用密钥基础设施(PKI)技术,其中密钥可以通过标准化的数字证书链进行验证。

在一些实施方案中,公用密钥的交换可支持使用迪菲-赫尔曼密钥交换或椭圆曲线技术等技术在主机系统105-a和存储器系统110-a中的每一个处生成对称密钥,从而可以在装置和主机之间共享对称密钥,而不会暴露相应系统的私用密钥。在一些实施方案中,可以在主机系统105-a和存储器系统110-a之间执行非对称迪菲-赫尔曼密钥交换,以生成对称密钥,然后使用这些密钥在主机系统105-a或存储器系统110-a上实现更好的性能,以进行认证、加密或这两者。此外,可以使用主机系统105-a和存储器系统110-a共享的相同算法来派生短暂对称密钥,以使恶意参与者更难提取或复制此类密钥,这是基于用于持续时间启动或事件启动生成短暂密钥的各种技术。

在一些实例中,公用密钥的交换可以与数字证书的创建相关联,数字证书可包含与一或多个证书颁发机构或注册机构之间的各种信令或其它交互,或者可以涉及自签名证书或其各种组合。例如,主机系统105-a、云管理机构或与主机系统105-a通信的其它集中式证书颁发机构可能会创建证书签名请求(CSR),其可以是自签名证书的实例,证明存储器系统110-a具有与CSR中的公用密钥相关联的私用密钥。在一些实例中,作为制造操作的一部分(例如,用于制造存储器系统110-a),此类CSR可以从存储器系统110-a传递到集中式证书颁发机构。在一些实施方案中,响应于存储器系统110-a的身份被确认(例如,通过由云管理机构或供应商认证),可以向主机系统105-a、存储器系统110-a或这两者提供制造商认可的证书。在一些实例中,此类技术可支持请求系统下载制造商认可的证书(例如,证书颁发机构认可的证书)或下载CSR。

图3示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的过程流300的实例。过程流300的操作可由主机系统105-b和存储器系统110-b执行,它们可以是参考图1和2描述的相应系统的实例。过程流300的各方面可由一或多个控制器(例如,在主机系统105-b和存储器系统110-b中的每一个处的一或多个相应控制器)以及其它组件实施。另外或替代地,过程流300的各方面可以实施为存储在存储器中的指令(例如,存储在主机系统105-b和存储器系统110-b的存储器中或与主机系统105-b和存储器系统110-b耦合的相应固件)。例如,所述指令在由控制器执行时可使控制器执行过程流300的一或多个操作。

在一些实例中,过程流300可包含生成可以在主机系统105-b和存储器系统110-b之间传送的公用密钥,其可以称为非对称密钥或非对称公用密钥(例如,非对称密钥对中的公用密钥、各自对应于非对称密钥对中的相应私用密钥的公用密钥)。生成此类公用密钥可基于在相应系统处维持的私用密钥,其中此类私用密钥不在相应系统之外共享。此类技术可使得主机系统105-b和存储器系统110-b对各种经传输信令签名(例如,用于认证传输系统),或对各种经传输信令进行加密(例如,用于信息完整性),或这两者,而不用交换对于每个系统是唯一的私有标识信息。因此,相比于其中不执行密码硬件标识信息的分发或者这种分发可能更容易遭受克隆或窃取的其它技术,例如以可能不安全的方式分发对称密钥的技术,此类技术可提高以真实性和完整性进行通信的能力。

例如,在305处,主机系统105-b可生成主机系统公用密钥,其可以至少部分地基于主机系统私用密钥(例如,使用主机系统私用密钥计算出)。在各种实例中,主机系统私用密钥可以使用私用标识符存储在主机系统105-b处或以其它方式在此处生成,所述私用标识符例如熔丝配置、存储在非易失性存储器中的身份、主机系统105-b的PUF或主机系统105-b的某一其它唯一标识符,它们可受保护而不被克隆或提取。在一些实例中,主机系统私用密钥可以基于唯一标识符(例如,主机系统105-b的唯一装置秘密)和存储在主机系统105-a处(例如,在内容220中)的内容的组合而生成。在一些实例中,在305处生成的主机系统公用密钥可以与特定主机实体210或存储器系统110-b处的特定地址范围(例如,分区245或其部分)或存储器保护属性(例如,读取保护、写入保护)或其组合相关联。在一些实例中,此类公用密钥属性可能不与在305处生成的主机系统公用密钥相关联,但是后续可以与至少部分地基于主机系统公用密钥而生成的一或多个对称密钥相关联,或者后续可通过存储器系统110-a指派。

在一些实例中(例如,当主机系统105-b和存储器系统110-b配置成支持对称密钥、加密或这两者)时,在310处,存储器系统110-b可生成存储器系统公用密钥,其可以至少部分地基于存储器系统私用密钥(例如,使用存储器系统私用密钥计算出)。在各种实例中,存储器系统私用密钥可以在存储器系统110-b处使用私用标识符生成,所述私用标识符例如熔丝配置、存储在非易失性存储器中的身份、PUF 255或存储器系统110-b的某一其它唯一标识符,其可受保护不被克隆或提取。在一些实例中,存储器系统私用密钥可以基于唯一标识符(例如,存储器系统110-b的唯一装置秘密)和存储在存储器系统110-b处(例如,在内容280中)的内容的组合而生成。在一些实例中,在310处生成的存储器系统公用密钥可与存储器系统110-b处的特定地址范围(例如,分区245或其部分)或存储器保护属性(例如,读取保护、写入保护)或其组合相关联。在一些实例中,与存储器系统110-b相关联的公用密钥可与对应主机系统105或主机系统公用密钥(例如,在305处生成的主机系统公用密钥)配对或以其它方式联接(例如,与其映射,通过公用密钥表260)。在一些实例中,此类密钥属性可能不与在310处生成的存储器系统公用密钥相关联,但是后续可与至少部分地基于主机系统公用密钥而生成的一或多个对称密钥相关联。

在一些实例中,过程流300可包含在主机系统105-b和存储器系统110-b之间交换所生成的公用密钥。例如,在315处,主机系统105-b可传输在305处生成的主机系统公用密钥,其可由存储器系统110-b接收。在一些实例中(例如,当主机系统105-b和存储器系统110-b配置成支持对称密钥、加密或这两者)时,在320处,存储器系统110-b可传输在310处生成的存储器系统公用密钥,其可由主机系统105-b接收。在一些实例中,传输的公用密钥可以存储在相应接收系统处(例如,在密钥存储装置215中、在密钥存储装置250中),例如存储在相应接收系统的非易失性存储装置中或以其它方式与相应接收系统通信。在一些其它实例中,此类传输或接收到的公用密钥可能未进行存储,但是基于此类传输或接收到的公用密钥生成的密钥可以在进一步处理后存储。在一些实例中,此类非对称公用密钥可以是可更新的,其中此类更新(例如,根据305或310的一或多个操作)可以基于定时器或事件发起,并且随后生成的此类经更新或替代的非对称公用密钥可相应地从生成系统传输到接收系统。

在一些实例中,过程流300可包含通过主机系统105-b和存储器系统110-b生成对称密钥,其可至少部分地基于分别接收到的公用密钥计算出。此类对称密钥可以生成为在所述两个系统之间相同或以其它方式等效(例如,作为共享密钥),或可以其它方式操作,使得一者用于认证已使用另一者签名的信息,或一者用于解码已使用另一者编码的信息,或这两者,即使免去了私有信息的传输。例如,在325处,主机系统105-b可生成对称密钥,其可至少部分地基于在320处传输的存储器系统公用密钥和主机系统105-b的私用密钥(例如,使用它们计算出)。此外,在330处,存储器系统110-b还可生成对称密钥,其可至少部分地基于在315处传输的主机系统公用密钥和存储器系统110-b的私用密钥(例如,使用它们计算出)。在一些实例中,此类对称密钥可以使用迪菲-赫尔曼技术或其它指数密匙交换或生成协议(包含椭圆曲线技术)生成。在一些实例中,所生成的对称密钥可以存储在生成系统处(例如,在密钥存储装置215中、在密钥存储装置250中),例如存储在相应生成系统的非易失性存储装置中或以其它方式与相应生成系统通信。

尽管在一些实例中,从维持的私用密钥和接收到的公用密钥生成的对称密钥(例如,“第一”对称密钥)可直接在本文公开的技术中实施,但是在一些其它实例中,此类对称密钥可作为输入应用于进一步密钥生成,例如短暂密钥(例如,“第二”对称密钥、短暂对称密钥)的生成。例如,在325和330中的每一个或某一其它连续操作处,主机系统105-b和存储器系统110-b中的每一个可生成相应的短暂密钥,其在本质上可以是相对短暂的。在一些实例中,此类短暂密钥的生成可以是持续时间发起的,例如在定时器值(例如,在主机系统105-b处、在存储器系统110-b处或这两者)满足阈值后发起的生成。在一些实例中,此类短暂密钥的生成可以是事件发起的,例如在存储器系统110-b或主机系统105-b通电、存储器系统110-b或主机系统105-b重置、存储器系统110-b或主机系统105-b存在错误状态后发起(例如,每功率循环生成一个短暂密钥)。在一些实例中,主机系统105-b或存储器系统110-b中的任一个或两个可配置成传输信令作为使另一系统发起短暂密钥的生成或替换的命令或请求,这可与信令系统已执行短暂密钥生成或再生或被触发或调度执行短暂密钥生成或再生以及其它触发相关联。在一些实例中,生成的短暂密钥可以存储在相应生成系统的易失性存储装置中或以其它方式与相应生成系统通信(例如,在密钥存储装置215中、在密钥存储装置250中),这可经实施以避免与一些非易失性存储架构中的短暂密钥的周期性更新相关联的疲劳或耐久性问题。但是,在一些实施方案中(例如,其中非易失性存储器单元的疲劳不是问题),短暂密钥可以存储在非易失性存储装置中。

在一些实例中,过程流300可包含(例如,通过主机系统105-b)确定将信令传输到存储器系统110-b,其可与存取存储器系统110-b的命令(例如,读取命令、写入命令)或重新配置存储器系统110-b的命令或请求(例如,修改操作参数的请求、进入操作模式的请求、实施数据保护属性的请求、存储器系统110-b的状态或配置的轮询)相关联,还与可以也可以不伴随着其它数据(例如,写入数据)的其它请求、命令或其它控制信令相关联。此类信令可以根据所描述的使用非对称密钥的技术通过主机系统105-b和存储器系统110-b签名或加密或这两者。

在一些实例中,为了支持此类信令的认证或此类信令的传输器的认证(例如,用于认证主机系统105-b),在335处,主机系统105-b可至少部分地基于与主机系统105-b相关联的私用密钥(例如,使用所述私用密钥计算)对信令或其至少某一部分签名。在一些实例中,此类签名或此类签名的配置可基于信令的类型或特性。例如,在一些实施方案中,仅签名特定类型的信令,例如仅签名特定存取命令(例如,签名读取命令、签名写入命令、签名更改保护属性的命令)。

在一些实例中,335的签名可以至少部分地基于在325处生成的对称密钥,这可比基于与主机系统105-b相关联的私用密钥的签名更安全或更高效。确定用此类对称密钥签名信令可基于主机系统105-b的配置(例如,操作模式、模式寄存器设置)或所指示能力或存储器系统110-b的配置或所指示能力或这两者。在一些实例中,信令是使用与主机系统105-b相关联的私用密钥签名还是使用在325处生成的对称密钥签名的指示可以指示为经传输信令的部分,或者可能已在较早传输(例如,控制信令的较早实例)中由主机系统105-b指示给存储器系统110-b,或者可能已由存储器系统110-b请求。换句话说,主机系统105-b或存储器系统110-b或这两者可配置成根据与传输装置相关联的私用密钥或生成的对称密钥动态地签名信令。在一些实例中,此类签名可以附加到包含在信令中或以其它方式伴随信令的数据上,此数据可以加密也可以不加密。

在一些实例中,为了支持此类信令的完整性(例如,信息完整性),在340处,主机系统105-b可至少部分地基于在325处生成的对称密钥(例如,使用所述对称密钥计算出)对信令或其至少某一部分进行加密。在一些实例中,此类加密或此类加密的配置可基于信令的类型或特性或相关联信息。例如,在一些实施方案中,仅加密特定类型的信令,例如仅加密特定存取命令(例如,加密读取命令、加密写入命令、加密与写入命令相关联的数据、加密更改保护属性的命令)。

在345处,主机系统105-b可传输信令,其至少一部分可能已进行签名或加密或既签名又加密,并且其可由存储器系统110-b接收。在一些实例中,340的信令可包含或伴随着信令已进行签名或加密或既签名又加密的标志或其它指示,例如伴随着信令或以其它方式与信令相关联的供应商特定位。因此,存储器系统110-b可处理此类指示以评估345的接收到的信令是否可以或应该进行认证、解密或既认证又解密(例如,以确定是否执行350的操作、355的操作或350和355两者的操作)。

例如,在350处,存储器系统110-b可尝试认证345的信令(例如,验证或认证主机系统105-b或与主机系统105-b相关联的主机实体210为信令的传输器)。在各种实例中,350处的认证评估可基于与使用非对称密钥或使用对称密钥或这两者的认证相关联的配置或操作模式,使用什么密钥可基于345的信令或来自主机系统105-b的先前信令的指示。例如,为了支持信令或其传输器的认证,存储器系统110-b可至少部分地基于(例如,使用)在315处接收到的主机系统公用密钥或至少部分地基于在330处生成的对称密钥来验证信令或其至少某一部分。

在一些实例中,在355处,存储器系统110-b可尝试对345的信令进行解密。在各种实例中,355处的解密可基于主机系统105-b、存储器系统110-b或这两者的配置或操作模式,或者可基于信令自身的指示。例如,为了支持信令的解密,存储器系统110-b可至少部分地基于(例如,使用)在330处生成的对称密钥对信令或其至少某一部分进行解密。在一些实例中,355的解密只能在信令在350处经认证的情况下执行。

在360处,存储器系统110-b可响应于345的信令而评估是否执行操作。例如,如果350的认证支持确定345的信令是通过可信系统(例如,通过主机系统105-b)传输的,那么存储器系统110-b可确定执行响应动作,例如执行345的信令所命令的对存储器系统110-b的存取,或者更新345的信令所命令或请求的存储器系统110-b的操作参数。在一些实例中,此类操作可包含根据在355处解密的信息(例如,写入信息)执行存取命令。替代地,如果350的认证不支持确定345的信令是通过可信系统(例如,通过主机系统105-b)传输的,那么存储器系统110-b可确定不根据345的信令执行响应操作,其中此类确定可以传信也可以不传信回到主机系统105-b。

在一些实例中,主机系统105-b、存储器系统110-b或这两者可配置成基于(例如,响应于)传送的信令(例如,响应于345的信令)交换响应信令。例如,响应于与来自主机系统105-b的存取命令相关联的信令,存储器系统110-b可传输接收到命令的确认、是否已执行命令存取的指示、所命令的存取是否成功的标识或存取命令或其传输系统是否经认证的标识,以及其它响应信令。在一些实例中,此类响应可包含来自原始命令的确认动作的信息,例如返回或反映写入操作的数据(例如,未加密、经加密或经散列)以确认写入准确性。在一些实例中(例如,响应于读取命令),此类响应可包含来自存储器系统110-b(例如,来自存储装置240)的信息,例如所请求的读取数据(例如,未加密或经加密)。在各种实施方案中,此类响应可进行签名或加密或既签名又加密,这可包含与335和340的操作类似的技术,或不同操作(例如,基于配置或操作模式、基于与此类响应相关联的信令的类型)。

在一些实例中,为了支持此类响应的认证或此类响应的传输器的认证(例如,用于认证存储器系统110-b),在365处,存储器系统110-b可至少部分地基于与存储器系统110-b相关联的私用密钥(例如,使用所述私用密钥计算出)对响应或其至少某一部分签名。在一些实例中,此类签名或此类签名的配置可基于响应的类型或特性。例如,在一些实施方案中,仅签名特定类型的响应信令,例如仅签名对特定存取命令的响应(例如,签名对读取命令的响应、签名对写入命令的响应、签名对更改保护属性的命令的响应)。在一些实例中,365的签名可至少部分地基于在330处生成的对称密钥,这可比基于与存储器系统110-b相关联的私用密钥的签名更安全或更高效。

在一些实例中,为了支持此类响应的完整性(例如,响应完整性、信息完整性),在365处,存储器系统110-b可至少部分地基于在330处生成的对称密钥(例如,使用所述对称密钥计算出)对响应或其至少某一部分进行加密。在一些实例中,此类加密或此类加密的配置可基于响应的类型或特性或相关联信息。例如,在一些实施方案中,仅加密特定类型的响应信令,例如仅加密对特定存取命令的响应(例如,加密对写入命令的响应、加密对读取命令的响应、加密与读取命令相关联的数据、加密对更改保护属性的命令的响应)。

在360处,存储器系统110-b可传输响应,其至少一部分可能已进行签名或加密或既签名又加密,并且其可由主机系统105-b接收。在一些实例中,370的信令可包含或伴随着信令已进行签名或加密或既签名又加密的标志或其它指示,例如伴随着响应信令或以其它方式与响应信令相关联的供应商特定位。因此,主机系统105-b可处理此类指示以评估370的接收到的响应是否可以或应该进行认证、解密或既认证又解密(例如,以确定响应是否可信)。

例如,在375处,主机系统105-b可尝试认证370的响应信令(例如,验证或认证存储器系统110-b为响应的传输器)。在各种实例中,375处的认证评估可基于与使用非对称密钥或使用对称密钥或这两者的认证相关联的配置或操作模式,使用什么密钥可基于345的信令或370的响应信令或来自主机系统105-b或来自存储器系统110-b的先前信令的指示。例如,为了支持响应信令或其传输器的认证,主机系统105-b可至少部分地基于(例如,使用)在320处接收到的存储器系统公用密钥或至少部分地基于在325处生成的对称密钥来验证信令或其至少某一部分。

在一些实例中,在375处,主机系统105-b可尝试对370的信令进行解密。在各种实例中,375处的解密可基于主机系统105-b、存储器系统110-b或这两者的配置或操作模式,或者可基于345的信令或370的响应信令的指示。例如,为了支持响应信令的解密,主机系统105-b可至少部分地基于(例如,使用)在325处生成的对称密钥对信令或其至少某一部分进行解密。在一些实例中,375的解密只能在375的认证成功的情况下执行。

图4示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的系统400的实例。系统400可包含系统平台405,其可以是本文所述的存储器系统110(例如,eMMC)或其某一部分(例如,存储器系统控制器115)的实例。系统平台405可包含半导体装置410,其可以是单个裸片。另外或替代地,半导体装置410可以是连续半导体芯片、快闪芯片或SoC的至少一部分。在一些实例中,半导体装置410可包含存储器系统控制器115的至少一部分,或存储器系统控制器115和一个或存储器装置130。在一些实例中,半导体装置410可包含存储器系统110的所有组件。系统平台405还可包含平台软件415,其可以是也可以不是与半导体装置410相同的半导体芯片、快闪芯片或SoC的部分。在一些实例中,平台软件415可能遭受恶意参与者的攻击(例如,暴露或容易遭受安全攻击),并且半导体装置410可实施各种技术,包含用于生成非对称密钥对的多因素装置身份技术,以维持唯一标识信息的隐私。在一些实例中,此类技术可以是参考图3的过程流300所描述的310的操作的实例。

例如,支持多因素装置身份的一些技术可以在具有有限能力或资源(例如,相对较少的RAM、相对有限的处理能力、相对较低的功率预算)的存储器系统110中实施,因此可以实现功能相对有限的对称加密。在一些此类实例中,主机系统105的软件可能与更大的能力或资源相关联,预期可以被信任以支持从存储器系统110的派生对称身份密钥生成非对称密钥对。然而,根据一些此类技术,存储器系统110的派生对称身份密钥可能会在相关联系统100中暴露,例如在启动操作或其它漏洞窗口期间。如果存储器系统110的身份暴露,那么恶意参与者可能能够读取所述身份并模拟存储器系统110以创建相同的非对称密钥对。

为了减少装置特定身份信息的暴露,与创建非对称密钥相关联的操作可以在创建身份信息的装置内完成,使得在此类装置外提供的信令可能仅限于公用密钥材料(例如,根据各种非对称密钥技术)。此类装置可以是直接存取唯一装置秘密和装置内容的任何半导体装置,其可以支持创建多因素装置标识符,例如复合装置身份(CDI)。在系统平台405的实例中,此类功能可由半导体装置410提供(例如,在半导体装置内提供)。

在一些实例中,半导体装置410可包含装置身份生成引擎420,其可配置成基于唯一装置秘密(UDS)430和内容435(例如,存储在系统平台405处的内容)而生成密钥。UDS430可表示或提供基于硬件的秘密身份,例如特定于半导体装置410的确定性密钥,其可存储在熔丝、只读存储器或PUF(例如,PUF 255)以及其它实例中。内容435可以指存储在半导体装置410处的内容(例如,内容280),其可包含各种类型的代码、数据或其它信息。在一些实例中,内容435可表示在系统平台405处执行(例如,通过存储器系统控制器115或本地控制器135)的代码(例如,固件),例如启动加载程序,或早期启动代码(例如,第一级启动代码,“L0”启动代码,在系统平台405通电或初始化时执行的代码,不可变或几乎不可变的代码)。在一些实例中,内容435可包含被主机系统105调用或请求的内容(例如,代码、数据)(例如,第二级启动代码,“L1”启动代码),其可存储在半导体装置410的本地存储器120或存储器装置130以及其它实例中。举例来说,内容435可以是供主机系统105使用的数据或意图供主机系统105执行且存储在半导体装置410(例如,存储器系统110)处的代码(例如,固件),因为半导体装置410可以存储供主机系统105使用(例如,执行或操纵)的数据或代码。密钥可由装置身份生成引擎420至少部分地基于UDS 430和内容435的组合而生成。在一些实例中,此类密钥可以称为CDI 440,其在一些实例中可以是对称密钥。因此,不管内容435是供半导体装置410外部的主机系统105存取或执行还是仅供半导体装置410(例如,其上的一或多个控制器)使用,密钥都可由装置身份生成引擎420基于内容435生成,因为内容435可以存储在半导体装置410处。

CDI 440可以提供给非对称密钥生成引擎450,其可生成密钥460,例如非对称密钥对(例如,私用密钥和相关联公用密钥、装置ID非对称密钥对),它可包含至少部分地基于私用密钥生成的公用密钥。因为至少内容435、UDS 430和非对称密钥生成引擎450全都包含在相同半导体装置(例如,相同SoC或其它半导体实施方案)中,所以CDI 440不会暴露在半导体装置410之外,此类密钥460可以进行生成和传信,而不将CDI 440暴露给系统软件(例如,平台软件415)。因为与UDS 430或内容435相关联的任何差异或与UDS 430或内容435相关联的任何密码信息会导致无法认证或解密相关信令,所以此实施方案可比其中可能暴露CDI440的其它技术更安全。

尽管在一些实例中,半导体装置410可以将CDI 440维持在半导体装置410的说明性边界内,但是在一些其它实例中,半导体装置可配置成另外支持其它实施方案(例如,原有的实施方案),其中CDI在半导体装置410之外传信。在此类实例中,装置身份生成引擎420可配置成生成与维持在半导体装置410的说明性边界内的CDI 440相同的CDI 440或不同于维持在半导体装置410的说明性边界内的CDI 440的CDI 440,其。此类技术可支持根据多个可用配置中的一个灵活操作,所述配置可基于各种约束(例如,开发预算、制造预算、上市时间标准、威胁模型)而选择。

在一些实例中,密钥460可以提供给证书生成引擎480,其可包含在平台软件415中。证书生成引擎480可以是至少部分地基于密钥460而生成用于与主机系统105一起操作的证书的功能的实例。在一些实例中,证书生成引擎480可支持根据X.509协议生成证书,所述协议可使用数字签名将身份与公用密钥绑定。此类证书可以是由证书颁发机构(CA)发行的数字记录,用于验证证书持有者的身份且使得系统平台405能够通过使用加密以安全的方式与主机系统105通信。在一些实例中,此类证书可包含身份和公用密钥(例如,系统平台405的公用密钥、非对称密钥对中的公用密钥),并且可以通过CA签名或者可以自签名。在一些实例中,与系统平台405耦合的主机系统105可请求使用证书签名请求(CSR)或其它协议签名的证书,并且CSR可经注册机构(RA)验证。

在一些实例中,半导体装置410可配置成基于来自半导体装置410之外的内容而生成密码信息(例如,别名密钥对),例如与系统平台405的固件(例如,属于平台软件415,如平台软件415的固件安全描述符、第二级启动加载程序内容,“L1”启动代码)相关联的内容,或主机系统105的内容220(例如,主机系统105的固件安全描述符,第二级启动加载程序内容),以及其它实例。在一些此类实例中,例如固件470的来自半导体装置410之外的内容可支持生成额外证书(例如,通过证书生成引擎),例如用于与主机系统105一起操作的基于所生成私用密钥(例如,装置ID私用密钥)和从半导体装置410之外接收到的内容的第二证书。此类技术可使得一些密码标识信息更新,例如当主装置固件(例如,固件470)更新时。

由证书生成引擎480生成的一或多个证书可以传输到与系统平台405耦合的主机系统105。在一些实例中,公用密钥(例如,公用装置ID密钥)的传输可以与所生成证书的传输分开进行。

图5示出根据本文所公开的实例的支持基于内部非对称密钥的存储器系统多因素认证的存储器系统520的框图500。存储器系统520可以是参考图1到4所描述的存储器系统的各方面的实例。存储器系统520或其各种组件可以是用于执行本文所述的基于内部非对称密钥的存储器系统多因素认证的各个方面的构件的实例。例如,存储器系统520可包含密钥管理组件525、证书管理组件530、证书传输组件535、物理不可克隆函数540、内容接收组件545、密钥传输组件550、内容存储组件555或其任何组合。这些组件中的每一个彼此可直接或间接地通信(例如,经由一或多个总线)。

密钥管理组件525可配置为或以其它方式支持用于以下的构件:至少部分地基于与存储器系统520相关联的唯一装置秘密和存储在内容存储组件555中的内容,生成密钥。在一些实例中,存储在内容存储组件555中的内容包含启动代码。在一些实例中,密钥管理组件525可配置为或以其它方式支持用于生成非对称密钥对的构件,所述非对称密钥对包含至少部分地基于所生成密钥的私用密钥和至少部分地基于所生成密钥的公用密钥。在一些实例中,公用密钥可以至少部分地基于所生成私用密钥而生成。证书管理组件530可配置为或以其它方式支持用于至少部分地基于所生成非对称密钥对而生成证书(例如,用于与主机系统一起操作)的构件。证书传输组件535可配置为或以其它方式支持用于传输所生成证书(例如,传输到主机系统)的构件。

在一些实例中,密钥管理组件525可配置为或以其它方式支持用于至少部分地基于存取物理不可克隆函数540而派生唯一装置秘密的构件。

在一些实例中,内容接收组件545可配置为或以其它方式支持用于从主机系统接收内容的构件。在一些实例中,从主机系统接收到的内容包含从主机系统接收到的启动代码。在一些实例中,证书管理组件530可配置为或以其它方式支持用于至少部分地基于所生成私用密钥和从主机系统接收到的内容而生成用于与主机系统一起操作的第二证书的构件。

在一些实例中,密钥传输组件550可配置为或以其它方式支持用于将所生成的公用密钥传输到主机系统的构件,所述传输与传输所生成证书分开进行。

在一些实例中,密钥管理组件525可配置为或以其它方式支持用于生成不同于所生成密钥的第二密钥的构件,所生成的第二密钥至少部分地基于与存储器系统520相关联的唯一装置秘密和存储在内容存储组件555中的内容。在一些实例中,密钥传输组件550可配置为或以其它方式支持用于传输所生成的第二密钥(例如,传输到主机系统、另一不同主机系统)的构件。

在一些实例中,存储器系统520包含配置成生成非对称密钥对的半导体芯片或SoC(例如,其中SoC至少包含密钥管理组件525以及物理不可克隆函数540(若实施))。在一些实施方案中,半导体芯片或SoC还可用于生成用于与主机系统一起操作的证书,在此情况下,半导体芯片或SoC还可包含证书管理组件530。在一些实例中,此类半导体芯片或SoC可用于与主机系统耦合。在一些实例中,此类半导体芯片或SoC可包含本地存储器120或存储器装置130或这两者(例如,SoC可包含存储器系统110)。在一些实例中,此类半导体芯片或SoC可存储与主机系统相关联的启动代码(例如,第二级启动代码,“L1”启动代码),并且(例如,半导体芯片或SoC的)证书管理组件530可配置为或以其它方式支持用于至少部分地基于所生成私用密钥和与主机系统相关联的启动代码而生成用于与主机系统一起操作的证书(例如,第二证书)的构件。

图6示出根据本文所公开的实例的流程图,示出了支持基于内部非对称密钥的存储器系统多因素认证的方法600。方法600的操作可由本文所述的存储器系统或其组件实施。例如,方法600的操作可由参考图1到5所描述的存储器系统执行。方法600的各方面可由控制器以及其它组件实施。另外或替代地,方法600的各方面可实施为存储在存储器中的指令(例如,存储在存储器系统的存储器中或与存储器系统耦合的固件)。例如,所述指令在由控制器执行时可使控制器执行方法600的操作。在一些实例中,存储器系统可执行一组指令以控制装置的功能元件执行所描述的功能。另外或替代地,存储器系统可使用专用硬件执行所描述功能的各方面。

在605处,方法可包含至少部分地基于与存储器系统相关联的唯一装置秘密和存储在存储器系统处的内容,(例如,在存储器系统处)生成密钥。操作605可根据本文所公开的实例执行。在一些实例中,操作605的各方面可由参考图5所描述的密钥管理组件525执行。

在610处,方法可包含(例如,在存储器系统处)生成非对称密钥对,其包含至少部分地基于所生成密钥的私用密钥和至少部分地基于所生成密钥的公用密钥。操作610可根据本文所公开的实例执行。在一些实例中,操作610的各方面可由参考图5所描述的密钥管理组件525执行。

在615处,方法可包含至少部分地基于所生成非对称密钥对,(例如,在存储器系统处)生成用于与主机系统一起操作的证书。操作615可根据本文所公开的实例执行。在一些实例中,操作615的各方面可由参考图5所描述的证书管理组件530执行。

在620处,方法可包含(例如,通过存储器系统)将所生成证书传输到主机系统。操作620可根据本文所公开的实例执行。在一些实例中,操作620的各方面可由参考图5所描述的证书传输组件535执行。

在一些实例中,本文所述的设备可执行一或多种方法,例如方法600。所述设备可包含用于执行本公开的以下方面的特征、电路系统、逻辑、构件或指令(例如,存储可由处理器执行的指令的非暂时性计算机可读媒体)或其任何组合:

方面1:一种方法或设备,其包含用于以下的操作、特征、电路系统、逻辑、构件或指令或其任何组合:在存储器系统处,至少部分地基于与所述存储器系统相关联的唯一装置秘密和存储在所述存储器系统处的内容而生成密钥;在所述存储器系统处生成非对称密钥对,其包含至少部分地基于所生成密钥的私用密钥和至少部分地基于所生成密钥的公用密钥;在所述存储器系统处,至少部分地基于所生成非对称密钥对而生成用于与主机系统一起操作的证书;以及通过所述存储器系统将所生成证书传输到所述主机系统。

方面2:根据方面1所述的方法或设备,其中存储在所述存储器系统处的所述内容包含存储在所述存储器系统处的启动代码。

方面3:根据方面1至2中任一方面所述的方法或设备,其进一步包含用于至少部分地基于存取所述存储器系统的物理不可克隆函数而派生所述唯一装置秘密的操作、特征、电路系统、逻辑、构件或指令或其任何组合。

方面4:根据方面1至3中任一方面所述的方法或设备,其进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令或其任何组合:在所述存储器系统处,从所述主机系统接收内容,以及在所述存储器系统处,至少部分地基于所生成私用密钥和从所述主机系统接收到的所述内容而生成用于与所述主机系统一起操作的第二证书。

方面5:根据方面4所述的方法或设备,其中从所述主机系统接收到的所述内容包含从所述主机系统接收到的启动代码。

方面6:根据方面1到5中任一方面所述的方法或设备,其中所述公用密钥至少部分地基于所生成私用密钥而生成。

方面7:根据方面1至6中任一方面所述的方法或设备,其进一步包含用于通过所述存储器系统将所生成公用密钥传输到所述主机系统的操作、特征、电路系统、逻辑、构件或指令或其任何组合,所述传输与传输所生成证书分开进行。

方面8:根据方面1至7中任一方面所述的方法或设备,其进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令或其任何组合:在所述存储器系统处生成不同于所生成密钥的第二密钥,所生成的第二密钥至少部分地基于与所述存储器系统相关联的所述唯一装置秘密和存储在所述存储器系统处的所述内容;以及通过所述存储器系统传输所生成的第二密钥(例如,传输到所述主机系统、另一主机系统)。

方面9:根据方面1至8中任一方面所述的方法或设备,其中所述存储器系统包含半导体芯片,其配置成用于生成所述非对称密钥对或生成用于与所述主机系统一起操作的所述证书或用于这两者。

方面10:根据方面1至9中任一方面所述的方法或设备,其中所述半导体芯片包含所述存储器装置。

方面11:根据方面1至10中任一方面所述的方法或设备,其中所述存储器装置存储启动代码以供所述主机系统执行,所述方法或设备进一步包含用于以下的操作、特征、电路系统、逻辑、构件或指令或其任何组合:至少部分地基于所生成私用密钥和供所述主机系统执行的所述启动代码,生成用于与所述主机系统一起操作的第二证书。

应注意,上文所描述的方法描述可能实施方案,并且操作和步骤可以重新布置或以其它方式修改,且其它实施方案是可能的。此外,可组合来自所述方法中的两个或更多个的部分。

描述一种设备。所述设备可包含存储器装置和所述存储器装置的控制器。所述控制器可配置成使所述设备:至少部分地基于与所述设备相关联的唯一装置秘密和存储在所述设备处的内容而生成密钥;生成非对称密钥对,其包括基于所生成密钥的私用密钥和基于所生成密钥的公用密钥;基于所生成非对称密钥对而生成证书;以及传输所生成证书。

在一些实例中,存储在所述设备处的内容包含存储在所述设备处的启动代码。一些实例可进一步包含基于存取所述设备的物理不可克隆函数而派生唯一装置秘密。一些实例可进一步包含从主机系统接收内容,并基于私用密钥和从主机系统接收到的内容而生成用于与主机系统一起操作的第二证书。

在一些实例中,从主机系统接收到的内容包含从主机系统接收到的启动代码。在一些实例中,公用密钥是基于所生成私用密钥而生成的。一些实例可进一步包含将所生成公用密钥传输到主机系统,所述传输与传输所生成证书分开进行。一些实例可进一步包含:生成不同于所生成密钥的第二密钥,所生成的第二密钥基于与所述设备相关联的唯一装置秘密和存储在所述设备处的内容;以及传输所生成的第二密钥。

在一些实例中,所述设备包含半导体芯片,其可用于与主机系统耦合,且配置成用于生成非对称密钥对和生成用于与主机系统一起操作的证书。在一些实例中,半导体芯片包含存储器装置。一些实例可进一步包含基于所生成私用密钥和供主机系统执行的启动代码而生成用于与主机系统一起操作的第二证书。

可使用多种不同技术和技艺中的任一个来表示本文中所描述的信息和信号。例如,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。一些图式可将信号示出为单个信号;然而,所述信号可表示信号总线,其中总线可具有多种位宽度。

术语“电子连通”、“导电接触”、“连接”和“耦合”可以指组件之间支持信号在组件之间流动的关系。如果组件之间存在可在任何时间支持信号在组件之间流动的任何导电路径,那么组件被视为彼此电子连通(或彼此导电接触,或彼此连接,或彼此耦合)。在任何给定时间,基于包含所连接组件的装置的操作,彼此电子连通(或彼此导电接触,或彼此连接,或彼此耦合)的组件之间的导电路径可以是开路或闭路。所连接组件之间的导电路径可以是组件之间的直接导电路径,或所连接组件之间的导电路径可以是可包含例如开关、晶体管或其它组件等中间组件的间接导电路径。在一些实例中,可例如使用例如开关或晶体管等一或多个中间组件中断所连接组件之间的信号流动一段时间。

术语“耦合”是指从组件之间的开路关系移动到组件之间的闭路关系的条件,在开路关系中,信号当前无法通过导电路径在组件之间传送,在闭路关系中,信号能够通过导电路径在组件之间传送。如果例如控制器的一组件将其它组件耦合在一起,那么所述组件引发允许信号通过导电路径在所述其它组件之间流动的改变,所述导电路径先前不允许信号流动。

术语“隔离”是指信号当前无法在组件之间流动的组件之间的关系。如果组件之间存在断路,那么它们彼此隔离。例如,由定位在两个组件之间的开关间隔开的组件在开关断开时彼此隔离。如果控制器将两个组件隔离,控制器实现以下改变:阻止信号使用先前准许信号流动的导电路径在组件之间流动。

术语“如果”、“当……时”、“基于”或“至少部分地基于”可互换使用。在一些实例中,如果术语“如果”、“当……时”、“基于”或“至少部分地基于”是用于描述条件性动作、条件性过程或过程部分之间的连接,那么这些术语可以互换。

术语“响应于”可指由于先前条件或动作而至少部分地(如果不完全地)发生的一个条件或动作。例如,可执行第一条件或动作,并且作为先前条件或动作发生的结果(不管是直接在第一条件或动作之后还是在第一条件或动作后的一或多个其它中间条件或动作发生之后),第二条件或动作可至少部分地发生。

另外,术语“直接地响应于”或“直接响应于”可指作为先前条件或动作的直接结果而发生一个条件或动作。在一些实例中,可执行第一条件或动作,并且可作为先前条件或动作发生的结果而直接发生第二条件或动作,与是否发生其它条件或动作无关。在一些实例中,可执行第一条件或动作,并且可作为先前条件或动作发生的结果而直接发生第二条件或动作,使得在较早条件或动作与第二条件或动作之间不发生其它中间条件或动作,或在较早条件或动作与第二条件或动作之间发生有限数量的一或多个中间步骤或动作。除非另外规定,否则本文中描述为“基于”、“至少部分地基于”或“响应于”某一其它步骤、动作、事件或条件执行的任何条件或动作可另外或替代地(例如,在替代实例中)“直接响应于”或“直接地响应于”此种其它条件或动作而执行。

本文中所论述的包含存储器阵列的装置可形成于半导体衬底上,例如硅、锗、硅锗合金、砷化镓、氮化镓等。在一些实例中,衬底是半导体晶片。在一些其它实例中,衬底可为绝缘体上硅(SOI)衬底,例如玻璃上硅(SOG)或蓝宝石上硅(SOP),或另一衬底上的半导体材料的外延层。可通过使用包含(但不限于)磷、硼或砷的各种化学物质的掺杂来控制衬底或衬底的子区的导电性。可在衬底的初始形成或生长期间,通过离子植入或通过任何其它掺杂方法执行掺杂。

本文所论述的开关组件或晶体管可表示场效应晶体管(FET),并且包括包含源极、漏极和栅极的三端装置。端子可通过导电材料(例如金属)连接到其它电子元件。源极和漏极可为导电的,且可包括经重掺杂(例如简并)半导体区。源极与漏极可由轻掺杂的半导体区或沟道间隔开。如果沟道是n型(即,大部分载体为电子),那么FET可被称作n型FET。如果沟道是p型(即,大部分载体为空穴),那么FET可被称作p型FET。沟道可由绝缘栅极氧化物封端。可通过将电压施加到栅极来控制沟道导电性。例如,将正电压或负电压分别施加到n型FET或p型FET可导致沟道变得导电。如果大于或等于晶体管的阈值电压的电压被施加到晶体管栅极,那么晶体管可“接通”或“激活”。如果小于晶体管的阈值电压的电压被施加到晶体管栅极,那么晶体管可“断开”或“撤销激活”。

本文结合附图阐述的描述内容描述了实例配置,且并不表示可以实施的或在权利要求书的范围内的所有实例。本文中所使用的术语“示例性”是指“充当实例、例子或说明”,且不比其它实例“优选”或“有利”。详细描述包含特定细节,以便提供对所描述技术的理解。然而,这些技术可在没有这些特定细节的情况下实践。在一些例子中,以框图的形式展示众所周知的结构和装置以免混淆所描述实例的概念。

在附图中,类似组件或特征可以具有相同参考标记。此外,可通过在参考标记之后跟着连字符及区分类似组件的第二标记来区分为相同类型的各种组件。如果说明书中仅使用第一参考标记,那么描述适用于具有相同第一参考标记的类似组件中的任一个,而与第二参考标记无关。

本文中所描述的功能可以硬件、由处理器执行的软件、固件或其任何组合来实施。如果以由处理器执行的软件来实施,那么可以将功能作为一或多个指令或代码存储于计算机可读媒体上或通过计算机可读媒体来传输。其它实例及实施方案在本公开及所附权利要求书的范围内。例如,由于软件的本质,上文所描述的功能可使用由处理器执行的软件、硬件、固件、硬连线或这些中的任一个的组合来实施。实施功能的特征也可物理上位于各个位置处,包含经分布以使得功能的各部分在不同物理位置处实施。

例如,结合本文中的公开内容所描述的各种说明性块和组件可使用经设计以执行本文中所描述的功能的通用处理器、DSP、ASIC、FPGA或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任何组合来实施或执行。通用处理器可为微处理器,但在替代方案中,处理器可为任何处理器、控制器、微控制器或状态机。处理器可实施为计算装置的组合(例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心,或任何其它此类配置)。

如本文中(包含在权利要求书中)所使用,项目的列表(例如,以例如“中的至少一个”或“中的一或多个”的短语结尾的项目的列表)中所使用的“或”指示包含性列表,使得(例如)A、B或C中的至少一个的列表意指A或B或C或AB或AC或BC或ABC(即,A和B和C)。并且,如本文中所使用,短语“基于”不应被理解为提及一组封闭条件。例如,在不脱离本公开的范围的情况下,描述为“基于条件A”的示例性步骤可基于条件A和条件B两者。换句话说,如本文中所使用,短语“基于”应同样地解释为短语“至少部分地基于”。

计算机可读媒体包含非暂时性计算机存储装置媒体和通信媒体两者,通信媒体包含有助于将计算机程序从一个地方传递到另一地方的任何媒体。非暂时性存储媒体可以是任何可用的媒体,它可以由通用或专用计算机存取。举例来说且不加限制,非暂时性计算机可读媒体可包括RAM、ROM、电可擦除可编程只读存储器(EEPROM)、光盘(CD)ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或任何其它可用于载送或存储呈指令或数据结构形式的所要程序代码构件且可以通过通用或专用计算机或通用或专用处理器存取的非暂时性媒体。并且,任何连接被适当地称为计算机可读媒体。例如,如果软件从网站、服务器或其它远程源使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或红外、无线电和微波等无线技术传输,那么同轴电缆、光纤电缆、双绞线、DSL或红外、无线电和微波等无线技术包含在媒体的定义中。如本文中所使用,磁盘和光盘包含CD、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。上述各项的组合同样包含在计算机可读媒体的范围内。

提供本文中的描述使得所属领域的技术人员能够进行或使用本公开。所属领域技术人员将清楚对本公开的各种修改,且本文中所定义的一般原理可应用于其它变化形式而不会脱离本公开的范围。因此,本发明不限于本文中所描述的实例和设计,而是被赋予与本文中所公开的原理和新颖特征一致的最宽范围。

相关技术
  • 基于公共非对称密钥池的抗量子计算代理云存储方法和系统
  • 基于非对称密钥池的抗量子计算云存储方法和系统
  • 使用非对称密钥的多因素用户认证框架
  • 使用非对称密钥的多因素用户认证框架
技术分类

06120115938322