处理器主存储器的存储器内容的安全保护的制作方法

文档序号:6435139阅读:201来源:国知局
专利名称:处理器主存储器的存储器内容的安全保护的制作方法
技术领域
本文中所揭示的标的物涉及存储器装置及其安全性。
背景技术
举例来说,存储器装置可越来越多地经实施以存储机密信息,例如财务、医疗及/ 或人事记录。另外,此类存储器装置可存储用以操作计算系统的信息,例如可执行代码、系统操作参数等。令人遗憾地,此类重要及/或机密信息可以是越来越复杂的安全攻击的目标。举例来说,此攻击可涉及对财务记录的数据库进行未经授权的修改、读取及/或下载, 从而促成身份盗窃。举例来说,安全技术可包含用以验证存储器装置的操作以防止在不经过签名确认过程的情况下修改及/或读取存储器内容的技术。


将参考以下各图描述非限制性及非穷尽性实施例,其中除非另有说明,否则在所有各图中相似参考编号指代相似部件。图1是根据一实施例的系统配置的示意图。图2是根据一实施例的处理器-存储器系统的示意图。图3是根据另一实施例的处理器-存储器系统的示意图。图4是图解说明根据一实施例的验证主存储器的各部分的过程的示意图。图5是根据一实施例的验证主存储器中的写入命令的过程的流程图。图6是执行安全存储器测量命令的过程的流程图。图7是根据一实施例的计算系统及存储器装置的示意图。
具体实施例方式此说明书通篇所提及的“一项实施例”或“一实施例”意指结合所述实施例描述的特定特征、结构或特性包含于所主张的标的物的至少一个实施例中。因此,在此说明书通篇中的各个地方出现的短语“在一项实施例中”或“一实施例”未必完全指代同一实施例。此外,可将所述特定特征、结构或特性组合于一个或一个以上实施例中。本文中所描述的实施例可包含主存储器,所述主存储器包括持久性存储器。举例来说,持久性存储器可包括非易失性存储器,例如相变存储器(PCM) ,NOR快闪及NAND快闪。 因此,持久性主存储器可包括存储器阵列,所述存储器阵列包含非易失性存储器。在一项实施方案中,持久性主存储器可包含存储器阵列,所述存储器阵列的一个部分包括一个或一个以上类型的非易失性存储器且另一部分包括易失性存储器,如下文所描述。在另一实施方案中,持久性主存储器可包含存储器阵列,所述存储器阵列仅包括非易失性存储器,但所主张的标的物并不受如此限制。本文中,主存储器是指可由处理实体用以维持可由所述处理实体执行的一个或一个以上应用程序的存储器,但所请求的标的物在此方面并不受限制。在一实施方案中,举例来说,主存储器的特定部分可由处理实体通过直接寻址此类特定部分来存取。直接寻址可包括其中处理实体可发布用以读取存储器中的特定位置的地址且随后读取所述特定位置的过程。相比之下,间接寻址存储器可包括涉及处理实体可向其发布用以读取存储器中的特定位置的地址的输入/输出(I/O)装置的过程。在此情况下,所述I/O装置可通过呈现 (读取)所述特定位置中的数据来作出响应。举例来说,基本输入/输出系统¢10 软件可存储于不可由处理实体通过直接寻址来存取的非易失性、只读存储器(ROM)及/或快闪存储器中。在一实施例中,操作存储器系统的方法可包含用于对加载到处理器的主存储器中的对象进行安全检查的技术。举例来说,此类对象可包括与待写入到主存储器的写入命令相关联的写入命令及/或信息。用于对各对象进行安全检查的此类技术可涉及能够在存储器装置内执行经验证操作的存储器装置。举例来说,可在修改所述存储器装置的内容之前执行确认安全签名的过程。对各对象进行安全检查可涉及执行安全散列算法(SHA)测量及 /或其他加密测量。尽管此类测量可相对耗费时间,但本文中所描述的实施例包含用以改进执行此类加密测量的效率的方法及/或存储器装置。举例来说,可通过减少执行此类测量花费的时间及/或减少对处理器-存储器系统的操作需求来改进效率。举例来说,如果主存储器包括持久性存储器,那么可在将加密测量存储于非易失性存储器中时较不经常执行此类测量。在一实施例中,包括例如中央处理单元(CPU)的处理实体的系统可包含持久性主存储器。举例来说,持久性主存储器可包括待由CPU使用的主存储器及/或高速缓冲存储器的至少一部分。举例来说,此系统可包括用以在若干环境中的任一者中执行应用程序的计算系统,例如,计算机、蜂窝电话、PDA、数据记录器及导航设备,此处仅举几个实例。在一实施方案中,举例来说,此系统可包含用于虚拟化的资源管理器,例如管理程序。在一些实例中,主存储器及/或高速缓冲存储器可包括持久性存储器的一部分及其它类型的随机存取存储器(RAM)的一部分。在特定实例中,主存储器可包含PCM及动态随机存取存储器(DRAM) 的至少一部分。举例来说,此类存储器配置可提供例如非易失性、相对高的编程/读取速度及/或经延长的PCM寿命等益处。在一项实施方案中,持久性主存储器可提供避免需要重新确定尤其与对存储于所述持久性主存储器中的内容的安全保护有关的信息的益处。举例来说,此信息可包括SHA 测量、加密密钥及/或签名等,如下文所描述。在另一实施方案中,持久性主存储器还可提供避免需要将来自外部非易失性存储器的此安全信息重新加载到易失性DRAM中的益处, 如下文详细描述。举例来说,如果不将安全信息维持于持久性主存储器中,那么此重新确定及/或重新加载安全信息可以其它方式在处理器重新启动过程期间发生。因此,经改进的安全保护可属于由持久性主存储器提供的若干优点中。当然,包含PCM或其它持久性存储器作为主存储器的实施例的此类特征及细节仅为实例,且所主张的标的物并不受如此限制。在计算系统的实施例中,处理器可将信息写入到持久性主存储器。然而,在允许将此信息写入到所述持久性主存储器之前,可分析此信息以确定此信息是否包括未经授权的部分。举例来说,信息的此类未经授权的部分(例如,计算机病毒、恶意软件等)可不利于已存储于持久性主存储器中的信息的完整性。因此,用以确定信息是否包括未经授权的部分的分析可涉及安全检查过程。举例来说,安全检查过程可包含在将此信息加载到持久性主存储器之前执行SHA测量及/或其它加密安全测量(例如,MD5、SHA-I、SHA-256,此处仅举几个实例)。如果确定此信息不包含未经授权的部分,那么可允许将此信息加载到主存储器RAM。如果确定此信息的确包含未经授权的部分,那么可不允许将此信息加载到主存储器RAM。安全检查过程可相对耗费时间。在涉及持久性主存储器的实施方案中,举例来说,不需在计算系统的重新启动之后或在处理器从用户特权向上跳跃到监督者/安全特权之后即刻执行此安全检查过程。特定来说,可将例如在安全检查过程中使用的SHA测量及 /或其它加密测量等安全信息存储于持久性主存储器中。如果处理器及/或持久性主存储器经历功率损失或其它破坏性事件,那么不需从持久性主存储器损失此类测量。因此,可在重新初始化(例如,重新启动)处理器之后或在处理器从用户特权向上跳跃到监督者/安全特权之后即刻利用此类测量及/或相关联的安全信息。在一实施例中,操作存储器系统的方法可包含在可由处理器存取的主存储器中接收写入命令及确定所述主存储器内的写入命令的验证。换句话说,可由位于主存储器内的一个或一个以上电子组件执行写入命令及/或与写入命令相关联的信息的验证,如下文详细描述。举例来说,主存储器内的位置可包括单个芯片内、裸片上、经堆叠芯片内及/或IC 封装中的位置。在一实施方案中,举例来说,“在主存储器内”可意指在包含主存储器及具有到控制器的外部接口的验证逻辑的物理边界内。尽管主存储器可包括持久性存储器,但此主存储器不需包括非易失性存储器。举例来说,此主存储器可包括DRAM或其它易失性存储器。在特定实施方案中,操作存储器系统的方法可包含在主存储器内至少部分地基于写入命令及/或与写入命令相关联的信息的经确定验证而确定是否修改主存储器的内容。举例来说,主存储器可从将所述主存储器以操作方式连接到一个或一个以上处理器的系统总线接收写入命令。如果写入命令被确定为不可信或以其它方式未经授权以修改所述主存储器或其一部分,那么所述主存储器可忽略所述写入命令。当然,操作存储器系统的方法的此类细节仅为实例,且所主张的标的物在此方面并不受限制。在一实施例中,存储器装置可包括存储器单元阵列及位于所述存储器装置内的控制器。在此控制器接收用以存取所述存储器单元阵列的写入命令之后,所述控制器可即刻确定所述写入命令的验证。尽管存储器单元阵列可包括持久性存储器,但此存储器单元阵列不需包括持久性存储器。举例来说,此阵列可包括DRAM或其它易失性存储器。在特定实施方案中,控制器还可至少部分地基于写入命令及/或与写入命令相关联的信息的经确定验证而确定是否修改存储器单元阵列的内容。举例来说,控制器可从将包含所述控制器的存储器装置以操作方式连接到一个或一个以上处理器的总线接收写入命令。如果此写入命令被确定为可信或以其它方式经授权以修改所述存储器装置或其一部分,那么所述控制器可执行所述写入命令。在包含持久性主存储器的实施例中,举例来说,此存储器装置可提供例如在主存储器及/或处理器处的功率损失期间维持与写入命令及/或与写入命令相关联的信息的验证相关联的信息的益处。在此情况下,如果再次接收来自同一处理器(举例来说)的写入命令,那么不需重复与验证相关联的加密测量。当然,存储器装置的此类细节仅为实例,且所主张的标的物在此方面并不受限制。
图1是根据一实施例的处理系统100的示意性框图。处理系统100可包括CPU 110、主存储器120及/或高速缓冲存储器130。特定来说,CPU 110可托管维持于主存储器 120中的一个或一个以上应用程序。尽管图1中未展示,但处理系统100可包括额外CPU或其它此类处理实体、额外主存储器及/或额外高速缓冲存储器。举例来说,CPU 110、主存储器120及/或高速缓冲存储器130可共同地构成用于较大多处理器系统的构建块。在一个实施方案中,处理系统100可使用包含一个或一个以上高速缓冲存储器层级的存储器分级来操作。任一此层级可包括在多个CPU当中共享的持久性存储器。举例来说,高速缓冲存储器可包括第一层级高速缓冲存储器及第二层级高速缓冲存储器,其中的任一者的至少一部分可包括持久性存储器。在另一实施方案中,处理系统100可包含资源管理器以允许多个操作系统同时运行(例如,硬件虚拟化)。举例来说,此资源管理器可包括管理程序。当然,处理系统及高速缓冲存储器的此类细节仅为实例,且所主张的标的物并不受如此限制。 在一实施例中,主存储器110中的至少一部分可包括持久性存储器。在特定实施方案中,主存储器110的另一部分可包括其它类型的存储器,例如易失性DRAM。持久性存储器的各部分不需相连地布置于主存储器210中,举例来说,主存储器210可包括一个或一个以上裸片结构。图2是根据一实施例的处理器-存储器系统200的示意图。举例来说,此处理器-存储器系统200可包含于主机装置(未展示)中,例如个人数字助理(PDA)、移动电话、 计算装置及/或其它电子装置。主机处理器210可经由存储器控制器212以通信方式连接到主存储器220。在一实施方案中,举例来说,存储器控制器212可位于主存储器220外部, 例如,位于包括主存储器220的IC或IC封装外部的单个裸片或IC封装上。举例来说,主机处理器210可存取主存储器220以将信息写入到主存储器220或从主存储器220读取信息。在一项实施方案中,处理器-存储器系统200外部的外部实体205可以通信方式连接到主机处理器210。在特定实施方案中,举例来说,外部实体205可与主机处理器210无线地通信。举例来说,外部实体205可包括可经由因特网存取的服务器或类似计算装置,或存储器装置(例如,快闪存储器、光学计算机磁盘或类似装置)。外部实体205还可包括可执行代码,例如电子邮件应用程序。主机处理器210及外部实体205可彼此单独地及/或在不同时间处与主存储器220通信,但所主张的标的物并不受如此限制。如下文进一步详细解释,外部实体205可以是计算机病毒、恶意软件等的来源,其可包括用以尝试存取主存储器 220的未经授权的命令,但所主张的标的物在此方面并不受限制。举例来说,外部实体205 可包括因特网上的网站的服务器,其可以是特洛伊木马程序(Troian horse)的来源。在另一实例中,外部实体205可包括电子邮件应用程序,其可用于意外地打开包含计算机病毒的电子邮件。在又一实例中,外部实体205可包括便携式快闪存储器装置,其可未料想到地存储计算机病毒。在此类情况下,特洛伊木马程序、计算机病毒及/或其它恶意软件的存在可导致未经授权地尝试存取主存储器220。主存储器220可包括存储器阵列沈0、微控制器215及/或安全部分M0。在一项实施方案中,存储器阵列260可包括可将数据写入到其及/或可从其读取数据的可寻址存储器单元阵列。举例来说,存储器阵列260可分割成两个或两个以上部分(例如,子部分 270),其可经保留用于维持由安全部分240提供的安全信息。在一项实施方案中,子部分 270可存储安全信息,例如加密散列值、签名、密钥及类似信息。举例来说,子部分270中的特定存储器位置可用于维持对应于存储于存储器阵列260中的特定存储器位置中的信息的此安全信息。举例来说,可在主存储器220内执行可用于验证所接收写入命令的此类散列值、签名、密钥及类似信息的确定。存储器阵列260可包括快闪存储器、PCM及/或其它持久性存储器,此处仅举几个实例。在其他实施例中,存储器阵列260可包括易失性存储器 (例如,DRAM(举例来说))或持久性存储器与易失性存储器的组合。安全部分240可包括逻辑电路组件及/或维持于存储器阵列沈0中的可执行代码。安全部分240可验证及/或确认从主机处理器210及/或外部实体205接收的命令。 举例来说,此验证可涉及使用安全密钥的技术。在一项实施方案中,微控制器215可从主机处理器210(例如,经由存储器控制器21 接收写入命令且随后调用安全部分MO以验证及/或确认此类所接收写入命令。举例来说,在此验证之后,微控制器215可即刻允许使用适当存储器寻址来对存储器阵列260进行存取。在一项实施方案中,微控制器215可从安全部分240检索安全信息且将此信息存储于存储器阵列260中。特定来说,如上文所解释, 可将安全信息存储于子部分270中,子部分270可包括存储器阵列沈0的经保留用于存储安全信息的一部分。当然,处理器-存储器系统200的此类细节仅为实例,且所主张的标的物并不受如此限制。图3是根据一实施例的处理器-存储器系统300的示意性框图。此处理器-存储器系统可包含任一数目的处理实体,但图3中仅展示一个此实体。在特定实例中,此处理实体可包括CPU 310。在一项实施方案中,举例来说,CPU 310可包含局部存储器(未展示), 所述局部存储器包括嵌入式持久性存储器。在另一实施方案中,CPU 310可存取包含持久性存储器的主存储器320。特定来说,持久性存储器可包含于包括高速缓冲存储器(例如, 各个高速缓冲存储器层级)及主存储器的存储器分级中。举例来说,此主存储器的至少一部分可包括PCM。此存储器分级可用于管理包括高速缓冲存储器及主存储器的分布式存储器。CPU 310(及可存在于计算平台中的其它CPU)可共享此分布式存储器。可包括快闪存储器、硬驱动机、光学计算机磁盘(此处仅举几个实例)的外部存储器330可经由CPU 310 以通信方式连接到主存储器320。此处,CPU 310可将写入命令传输到主存储器320以将信息从外部存储器330传送到主存储器320。令人遗憾地,在一些情况下,举例来说,此信息可包括未经授权的、或许恶意代码,例如计算机病毒、特洛伊木马程序及其它恶意软件。如上文所提及,参考图2,外部实体可包括此未经授权的代码的另一来源。然而,如本文中所描述,主存储器320可能够实施用以避免将此未经授权的信息写入到主存储器320中的技术。在一项实施方案中,处理器-存储器系统300可包括计算平台的一部分。在此实施方案中,CPU 310可包含高速缓冲存储器(未展示),所述高速缓冲存储器包括可指向特定页表的转换后备缓冲器(TLB),所述特定页表又可指向主存储器320的一个或一个以上个别页。在其中主存储器320包括易失性存储器(例如,DRAM(举例来说))的实施例中, 如果使CPU 310及/或主存储器320的电力中断及/或间断,那么可丢失主存储器320的存储器内容。另一方面,在其中主存储器320包括持久性存储器(例如,PCM(举例来说)) 的实施例中,即使CPU及/或主存储器经历中断及/或间断电源,也可维持主存储器320的存储器内容。在此情况下,维持于主存储器320的一部分(例如,页370(举例来说))中的安全信息不需被丢失且可用于随后的验证过程,如下文详细讨论。当然,处理器系统的此类细节仅为实例,且所主张的标的物并不受如此限制。
在一实施例中,主存储器320可包括存储器阵列360、存储器控制器315及安全部分340。存储器阵列360可包括一个或一个以上部分,例如包含(举例来说)页368及页 370的各页。在特定实施方案中,页370可包括其中可存储安全信息的至少一部分的存储器位置,如下文详细描述。安全部分340可包含安全逻辑块346、加密密钥存储装置344及存储器范围识别符342。举例来说,安全逻辑块346可包括若干熟知加密逻辑块中的任一者, 例如SHA逻辑块。加密密钥存储装置344可包括寄存器或存储器阵列360的其它存储器部分以存储供授权信息的过程使用的一个或一个以上密钥。因此,此类密钥可包括主存储器 320内部的信息。此外,一旦提供,此类密钥便可为主存储器320专用。加密密钥存储装置 344可包括用以维持密钥(其值可对用户保密)的持久性存储器及/或处理器-存储器系统300外部的电子实体。在一项实施方案中,处理器210(图2)不需知道此类密钥。在此情况下,举例来说,外部过程或处理器可正管理写入操作,因此局部处理器可传递命令且可不知道密钥。如果局部处理器210正更新安全区域,那么局部处理器210可知道密钥。然而,局部处理器知道局部存储器密钥相对较不安全。外部管理机构知道密钥且产生命令更安全。在另一实施方案中,处理器210可知道密钥。在此情况下,举例来说,如果可能违反安全性的黑客或其它实体可以使用处理器210,那么此黑客或其它实体可得到密钥且可写入到存储器。安全逻辑块346可利用维持于加密密钥存储装置344中的密钥,如下文详细讨论。存储器范围识别符342可包括寄存器或存储器阵列360的其它存储器部分。存储器范围识别符342可包括用以维持描述及/或识别存储器阵列360的待受安全保护的一个或一个以上部分的信息的持久性存储器。举例来说,存储器范围识别符342可包括寄存器存储信息,其描述在不执行授权过程的情况下不向其写入的页的范围。在一实施方案中,存储器控制器315可经配置以辨识可用于写入到主存储器320 的安全部分的安全写入命令。存储器控制器315还可经配置以辨识可由处理器使用以重新测量及/或重新证实存储器内容的至少一部分的验证的存储器测量命令,如下文所讨论。主存储器320可检验在所述主存储器处接收的写入命令。主存储器320可防止对主存储器320的内容的未经授权的修改以使得此类存储器内容可继续有效且完整性受到保护。如果主存储器320包括持久性存储器,那么不需在对处理器-存储器系统300的重新初始化之后即刻重复在确定对写入命令的授权时所涉及的一个或一个以上过程。举例来说,一旦使用安全写入命令将数据对象写入到持久性主存储器,所述存储器对象便可是安全的且完整性受到保护直到其被覆写。图4是根据一实施例的可发生于处理器-存储器系统400中的过程的示意图。处理器-存储器系统400可类似于上文所描述的处理器-存储器系统300,除处理器-存储器系统400可包含持久性主存储器420以外。举例来说,持久性主存储器420可由可类似于 CPU310(如图3中所展示)的CPU 410存取。在一实施例中,主存储器420可包括存储器阵列460、存储器控制器415及安全部分440。存储器阵列460可包括一个或一个以上部分,例如包含(举例来说)页468及页 470的各页。在特定实施方案中,页470可包括其中可存储安全信息的至少一部分的存储器位置。安全部分440可包含安全逻辑块446、加密密钥存储装置444及存储器范围识别符442,其可类似于上文所描述的安全逻辑块346、加密密钥存储装置344及存储器范围识别符;342。
在特定实施方案中,且在以下说明中,持久性主存储器420可包括若干页,但所主张的标的物并不受如此限制。举例来说,持久性主存储器420可包括多个页,包含页470及页468。特定来说,页470可包含索引表,所述索引表可包括对应于持久性主存储器420中的特定个别页的加密散列值。在一实施方案中,举例来说,此索引表可位于持久性主存储器 420中的特定页中以允许存储器控制器415执行重新确认存储器对象的过程。可在由CPU 410请求之后即刻执行此重新确认过程,其中CPU 410可将存储器测量命令传输到持久性主存储器420。举例来说,页470可包含对应于页468的散列值472、对应于页466的散列值 474、对应于页469的散列值476等。举例来说,可已在较早纪元(epoch)期间计算此类散列值,从而甚至在断电事件期间仍将所述散列值维持于持久性主存储器420中。重新确认过程的实例在图4中由从页470延伸到页466、468及469的垂直箭头指示。尽管图4指示可将例如散列值等加密信息存储于页470中,但所主张的标的物并不限于此类相对位置。举例来说,散列值可位于页468或其它页处。当然,持久性主存储器的此类细节仅为实例,且所主张的标的物并不受如此限制。图5是用以验证安全写入命令的过程500的流程图。举例来说,可由上文所描述的处理器-存储器系统300或400执行此过程。在框510处,可将包括如上文所描述的加密值的秘密密钥存储于主存储器的一个或一个以上部分中。举例来说,可将此类秘密密钥存储于图3中所展示的加密密钥存储装置344中。与其中将秘密密钥存储于主存储器外部的情况相比,维持主存储器内的此类秘密密钥可提供改进存储器内容的安全性的益处。举例来说,在一项实施方案中,此类秘密密钥可不被修改且可用于来自已知源的验证逻辑。在另一实施方案中,可在存在用于更新秘密密钥的安全协议的情况下修改此类秘密密钥。在框520处,主存储器可接收安全写入命令。在一实施方案中,举例来说,可经由总线从主存储器外部的处理器或存储器控制器接收此命令。在框530处,所述主存储器内的存储器控制器可执行验证所接收的安全写入命令的过程。举例来说,所述主存储器内的此存储器控制器可类似于图3中所展示的存储器控制器315。在一实施例中,验证所接收的安全写入命令的此过程可包含将SHA发动机应用于所述安全写入命令及/或与所述安全写入命令相关联的信息。在一项实施方案中,可使用微控制器来应用此SHA发动机,但所主张的标的物并不受如此限制。存储于所述主存储器内的秘密密钥还可包含于由所述SHA发动机执行的操作中。在一项实施方案中,图3中所展示的安全逻辑块346可包括用以执行此SHA发动机的操作的微控制器及/或软件,但所主张的标的物并不受如此限制。因此,举例来说,SHA 发动机可产生加密签名,例如散列值。同时,在框540处,举例来说,可将此类散列值存储于主存储器的一部分(例如,包括散列值的索引的页470)中。在菱形550处,存储器控制器 315可确定安全写入命令是否可信。如果不可信,那么过程500可进行到框555,其中忽略所述写入命令。在此情况下,举例来说,可不修改存储于受保护的主存储器中的内容。如果存储器控制器315确定安全写入命令为可信,那么过程500可进行到框560,其中可执行所述写入命令以修改存储于主存储器中的内容。当然,过程500的此类细节仅为实例,且所主张的标的物并不受如此限制。图6是执行安全存储器测量命令的过程600的流程图。举例来说,可由上文所描述的处理器-存储器系统300或400执行此过程。在框610处,可将包括如上文所描述的先前加密计算的结果的散列值存储于主存储器的一个或一个以上部分中。举例来说,可将此类散列值存储于包括对应于图4中所展示的主存储器420的特定页的此类散列值的索引的页470中。维持主存储器内的此类散列值可提供改进重新验证存储于主存储器中的对象的效率(例如,速度)的益处。在框620处,主存储器可接收安全存储器测量命令。在一实施方案中,举例来说,可经由总线从主存储器外部的处理器或存储器控制器接收安全存储器测量命令。在菱形630处,主存储器内的存储器控制器可确定对应于由安全存储器测量命令指定的特定对象的散列值是否已存储于主存储器中。举例来说,如上文所提及,存储器控制器415可对图4中所展示的主存储器420的页470中的散列值的索引进行搜索。如果已存储此散列值,那么过程600可进行到框640,其中已存储的散列值可用于重新验证存储于主存储器中且由所述安全存储器测量命令指定的对象。另一方面,如果此散列值是不可用,那么过程600可进行到框635,其中可产生返回错误。当然,过程600的此类细节仅为实例,且所主张的标的物并不受如此限制。图7是图解说明包含存储器装置710的计算系统700的例示性实施例的示意图。 计算装置704可表示可为可配置以管理存储器装置710的任一装置、器具或机器。存储器装置710可包含微控制器715及存储器722。在一项实施方案中,微控制器715可在物理上位于存储器722内。通过举例而非限制的方式,计算装置704可包含一个或一个以上计算装置及/或平台,例如,桌上型计算机、膝上型计算机、工作站、服务器装置或类似装置; 一个或一个以上个人计算或通信装置或器具,例如,个人数字助理、移动通信装置或类似装置;计算系统及/或相关联服务提供者能力,例如,数据库或数据存储服务提供者/系统; 及/或其任一组合。在一实施例中,计算装置704可包含一个或一个以上处理单元720,其通过总线 740及主机或存储器控制器712以操作方式耦合到存储器722。处理单元720表示可配置以执行数据计算程序或过程的至少一部分的一个或一个以上电路。通过举例而非限制的方式,处理单元720可包括一个或一个以上处理器、控制器、微处理器、微控制器、专用集成电路、数字信号处理器、可编程逻辑装置、现场可编程门阵列及类似装置或其任一组合。举例来说,处理单元720可与存储器控制器712通信以处理与存储器相关的操作,例如读取、写入及/或擦除以及上文所讨论的处理器重新启动。处理单元720可包含用以与存储器控制器715通信的操作系统。举例来说,此操作系统可产生待经由总线740发送到存储器控制器715的命令。举例来说,此类命令可包含读取/写入命令。在一项实施方案中,管理程序可允许一个或一个以上额外操作系统同时运行。举例来说,此管理程序可包括用以允许虚拟环境的资源(例如,存储器722、处理单元720及输入/输出73 管理器。存储器722可表示任一数据存储机构。举例来说,存储器722可包含DRAM 724及 /或持久性存储器726。在特定实施例中,存储器722可包括包含持久性存储器的至少一部分的主存储器,如上文所描述。存储器722还可包括可同样包含持久性存储器的至少一部分的高速缓冲存储器。虽然在此实例中图解说明为与处理单元720分离,但应理解,DRAM 724的全部或部分可提供于处理单元720内或以其它方式与处理单元720位于同一地点/ 華禹合。根据一实施例,存储器722的一个或一个以上部分可存储表示如由存储器722的特定状态所表达的数据及/或信息的信号。举例来说,可通过以下方式将表示数据及/或信息的电子信号“存储”于存储器722的一部分中影响或改变存储器722的此类部分的状态以将数据及/或信息表示为二进制信息(例如,1及0)。如此,在特定实施方案中,存储器的所述部分的状态的此改变以存储表示数据及/或信息的信号构成存储器722到不同状态或事态的变换。在一项实施例中,系统700可包括存储器装置722,其包含位于所述存储器装置内的存储器单元阵列及微控制器715。举例来说,此微控制器可类似于图2中所展示的微控制器215。系统700还可包括用以托管一个或一个以上应用程序且用以发布用以存取所述存储器单元阵列的写入命令的处理器720及用以接收所述写入命令的存储器控制器712。在一项实施方案中,存储器控制器712可位于所述存储器装置外部且安置于处理器720与所述存储器装置之间。微控制器715可接收用以存取所述存储器单元阵列的写入命令、确定所述写入命令的验证且至少部分地基于所述写入命令的经确定验证而确定是否修改所述存储器单元阵列的内容。举例来说,此存储器单元阵列可包括持久性存储器,例如PCM。举例来说,计算装置704可包含输入/输出732。输入/输出732表示可配置以接受或以其它方式引入人类及/或机器输入的一个或一个以上装置或特征,及/或可配置以递送或以其它方式提供人类及/或机器输出的一个或一个以上装置或特征。通过举例而非限制的方式,输入/输出装置732可包含以操作方式配置的显示器、扬声器、键盘、鼠标、轨迹球、触摸屏、数据端口等。虽然已图解说明及描述了目前被视为实例性实施例的实施例,但所属领域的技术人员将理解可做出各种其它修改且可替代等效物,此并不背离所主张的标的物。另外,可在不背离本文中所描述的中心概念的情况下做出许多修改以使特定情形适应所请求的标的物的教示。因此,打算所主张的标的物不限于所揭示的特定实施例,而是此所主张的标的物还可包含归属于所附权利要求书及其等效物的范围内的所有实施例。
权利要求
1.一种方法,其包括通过可由处理器存取的主存储器来接收写入命令,经由第一存储器控制器来接收所述写入命令;确定所述写入命令的验证,由位于所述主存储器内的第二控制器来执行所述确定;及至少部分地基于所述写入命令的所述经确定验证而确定是否修改所述主存储器的内容。
2.根据权利要求1所述的方法,其进一步包括维持所述主存储器内的加密密钥,其中所述确定所述写入命令的验证包括至少部分地基于所述加密密钥而产生加密签名。
3.根据权利要求1所述的方法,其中所述主存储器包括持久性存储器。
4.根据权利要求1所述的方法,其中所述主存储器包括动态随机存取存储器(DRAM)。
5.根据权利要求1所述的方法,其进一步包括在功率损失事件期间维持存储于所述主存储器中的用于对应存储器对象的特定散列值。
6.根据权利要求1所述的方法,其中所述主存储器包括相变存储器(PCM)。
7.一种存储器装置,其包括 存储器单元阵列;及第一控制器,其位于所述存储器装置内以从第二存储器控制器接收写入命令,所述写入命令用以存取所述存储器单元阵列; 确定所述写入命令的验证,所述确定由位于所述主存储器装置内的所述第一控制器来执行 ’及至少部分地基于所述写入命令的所述经确定验证而确定是否修改所述存储器单元阵列的内容。
8.根据权利要求7所述的存储器装置,其进一步包括安全块,所述安全块包括用以执行安全散列算法(SHA)的电子组件。
9.根据权利要求8所述的存储器装置,其进一步包括用以存储待在所述安全散列算法中使用的加密密钥的特定存储器位置。
10.根据权利要求7所述的存储器装置,其进一步包括用以存储描述所述存储器单元阵列的将为安全的一个或一个以上位置的信息的特定存储器位置。
11.根据权利要求7所述的存储器装置,其中所述存储器单元阵列包括持久性存储器。
12.根据权利要求7所述的存储器装置,其中所述存储器单元阵列包括动态随机存取存储器(DRAM)。
13.根据权利要求7所述的存储器装置,其中所述存储器单元阵列包括相变存储器 (PCM)。
14.一种系统,其包括 存储器装置,其包括 存储器单元阵列;及第一控制器,其位于所述存储器装置内;处理器,其用以托管一个或一个以上应用程序且用以发布用以存取所述存储器单元阵列的写入命令;及第二存储器控制器,其用以接收所述写入命令,其中所述第二存储器控制器被安置于所述处理器内或所述处理器与所述存储器装置之间,且其中所述第一控制器能够接收用以存取所述存储器单元阵列的所述写入命令, 确定所述写入命令的验证,所述确定由所述第一控制器来执行,及至少部分地基于所述写入命令的所述经确定验证而确定是否修改所述存储器单元阵列的内容。
15.根据权利要求14所述的系统,其中所述存储器装置进一步包括安全块,所述安全块包括用以执行安全散列算法(SHA)的电子组件。
16.根据权利要求15所述的系统,其中所述存储器装置进一步包括用以存储待在所述安全散列算法中使用的一个或一个以上加密密钥的特定存储器位置。
17.根据权利要求14所述的系统,其中所述存储器单元阵列包括持久性存储器。
18.根据权利要求14所述的系统,其中所述存储器单元阵列包括动态随机存取存储器 (DRAM)。
19.根据权利要求14所述的系统,其中所述存储器单元阵列包括相变存储器(PCM)。
20.根据权利要求14所述的系统,其中所述存储器单元阵列包括用以存储描述所述存储器单元阵列的将为安全的一个或一个以上其它位置的信息的特定存储器位置。
21.根据权利要求14所述的系统,其进一步包括用以提供虚拟环境的管理程序。
全文摘要
本文中所揭示的标的物涉及存储器装置及其安全性。本发明提供一种处理器主存储器的存储器内容的安全保护方法,其包括通过可由处理器存取的主存储器来接收写入命令,经由第一存储器控制器来接收所述写入命令;确定所述写入命令的验证,由位于所述主存储器内的第二控制器来执行所述确定;及至少部分地基于所述写入命令的所述经确定验证而确定是否修改所述主存储器的内容。通过采用上述方法的系统可验证存储器装置的操作以防止在不经过签名确认过程的情况下修改及/或读取存储器内容。
文档编号G06F12/14GK102541765SQ20111030376
公开日2012年7月4日 申请日期2011年9月29日 优先权日2010年9月30日
发明者奥古斯特·坎贝尔, 约翰·吕德利克 申请人:美光科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1