使用多个认证代码模块进入安全计算环境的制作方法

文档序号:6341524阅读:161来源:国知局
专利名称:使用多个认证代码模块进入安全计算环境的制作方法
技术领域
本公开涉及信息处理领域;更特别地,涉及信息处理系统的安全。
背景技术
信息处理系统,诸如包括来自因特尔公司的因特尔 奔腾 处理器系列中的处理 器的那些系统,可支持在安全系统环境中的操作。安全系统环境可包括信任的分区和不信 任的分区。系统的裸平台硬件和信任的软件可包括在信任的分区中。可阻止从不信任的分 区对信任的分区的资源的直接访问以保护系统可能包含的任何秘密,以免被发现或更改。 这些秘密可包括在信息处理系统上生成或存储的密码、密钥以及私人或机密信息。通过执行安全系统进入协议(secured system entry protocol),系统的裸平台 硬件可包括在信任的分区或域内。例如,启动处理器(initiating processor)可执行安全 进入(“SENTER”)指令,系统中的所有代理必须适当地对其进行响应以使协议顺利进行。 在安全进入过程中,可阻止响应代理执行任何程序指令或处理任何外部事务,使得启动处 理器可将带签名的代码模块验证为可信的和信任的,执行带签名的代码模块以将系统配置 为支持信任的操作、测量(以密码的方式,使用散列扩展功能)并随后启动被测虚拟机监视 器(“MVMM”)的执行。MVMM可创建一个或多个运行不信任软件的虚拟机环境,这样,不信 任软件对系统资源不直接访问。

发明内容
本发明提供了一种处理器,包括解码器,解码安全进入指令;控制逻辑,响应于 解码该安全进入指令,在主认证代码模块中的匹配表中寻找与处理器相应的条目,并从主 认证代码模块中读取主报头和单独的认证代码模块。本发明还提供了一种方法,包括在主认证代码模块中的匹配表中寻找与第一处 理器相应的第一条目;将来自主认证代码模块的主报头载入第一安全存储器;并且将第一 处理器的第一单独的认证代码模块从主代码模块载入第一安全存储器。本发明还提供了一种系统,包括第一处理器,包括解码器,解码安全进入指令; 消息传递逻辑,发送安全进入消息;以及第一控制逻辑,响应于解码安全进入指令,在主认 证代码模块中的匹配表中寻找与第一处理器相应的第一条目,并从主认证代码模块中读取 主报头和第一单独的认证代码模块;和第二处理器,包括消息传递逻辑,接收安全进入消 息;以及第二控制逻辑,响应于接收安全进入消息,在主认证代码模块中的匹配表中寻找与 第二处理器相应的第二条目,并从主认证代码模块中读取主报头和第二单独的认证代码模 块。


本发明以示例而不是限制的方式示出在附图中。图1根据本发明的实施例示出了信息处理系统。
图2根据本发明的实施例示出了处理器。图3根据本发明的实施例示出了芯片组。图4根据本发明的实施例示出了主认证代码模块。图5根据本发明的实施例示出了使用多个认证代码模块进入安全计算环境的方法。
具体实施例方式描述了使用多个认证代码模块(每个,“ACM”)进入安全计算环境的系统、设备和 方法中的本发明的实施例。在说明书中,可能阐明特定的细节(诸如处理器和系统配置) 以便提供对于本发明更彻底的理解。但是本领域技术人员将理解的是,可在没有这样特定 细节的情况下实现本发明。另外,一些公知结构、电路和类似物未详细示出,以避免不必要 地使本发明难懂。进一步,此说明书可能用根据一个实施例所用的名字(即“SENTER”)来 称呼指令;在其他实施例中,这些指令或类似的指令可具有不同的名字。本发明的实施例提供用于使用多个ACM来进入安全计算环境。多个ACM的使用可 能是所期望的,因为信息处理系统可包括多个处理器或处理器包,并且当这些处理器或处 理器包可能不一样时,单个ACM可能不适于初始化所有这些处理器或处理器包以进入安全 环境。图1示出了信息处理系统100中的本发明的实施例。信息处理系统100可为个 人计算机、主计算机、便携式计算机、手持装置、机顶盒(set-top box)、服务器或任何其他 计算系统。在此实施例中,系统100包括裸平台硬件110、所述裸平台硬件110又包括处理 器120、130以及140、系统存储器150、芯片组160、令牌170、装置180以及非易失性存储器 190。处理器120、130以及140中的每一个可代表具有一个或多个执行核心的组件,其 中每个执行核心可基于多种不同类型的处理器的任何一个,所述多个不同类型的处理器包 括通用微处理器(诸如因特尔 奔腾 处理器系列、安腾 处理器系列或因特尔 公司的 其他处理器系列中的处理器,或来自另一个公司的另一个处理器)或专用处理器或微控制 器,或者可以是可重构核(例如,现场可编程门阵列)。虽然图1示出了三个这样的处理器, 但是系统100可包括任意数量的处理器,各包括任意数量的执行核心和执行线程的任意组 合。在一些实施例中,任意个或所有的处理器120、130或140可代表运行在一个或多个物 理处理器上的单独硬件执行线程或“逻辑处理器”。系统存储器150可以是在其上可存储诸如数据和/或程序代码等信息的任何介 质,诸如动态随机存取存储器,或任何其他类型的由处理器120、130和140可读的介质,或 任何这些介质的组合。芯片组160可代表任何组的电路和逻辑,其支持存储器操作、输入/输出(“I/O”) 操作、配置、控制、内部或外部接口、连接或通信功能(例如“胶合”逻辑和总线桥),和/或 处理器120、130、140和/或系统100的任何类似功能。芯片组160的单独的元件可一起编 组在单个芯片、一对芯片上,或分散在多个芯片中,和/或部分地、完全地、冗余地或根据分 布方式集成到包括处理器120、130和/或140中任意个的一个或多个处理器。令牌(token) 170可包括信任的平台模块(“TPM”)172和平台配置寄存器(“PCR”)174。TPM 172可为包括微控制器的组件,以便安全地存储密钥、密码、数字证书和 其他用于建立和维护安全的信息。PCR 174可包括存储系统配置信息的任意数量的寄存器 和/或其他存储单元。配置TPM 172和/或PCR 174只对某些代理和/或在某些条件下是 可访问的。令牌170和/或TPM 172和PCR174任意一个或二者可包括在系统100的芯片 组160或其他组件中。装置180可代表任意数量的任意类型的I/O、外设或其他装置,诸如键盘、鼠标、追 踪球、点击装置、监视器、打印机、媒介卡、网络接口、信息存储装置等。装置180可以分立组 件实例化,或可与任何其他装置一起包括在集成组件中。在一个实施例中,装置180可代表 多功能I/O、外设或其他装置中的单个功能。处理器120、130和140、系统存储器150、芯片组160、令牌170和装置180可根据
任何已知的方式彼此耦合或通信,诸如通过一个或多个并行的、顺序的、管线的、异步的、同 步的、有线的、无线的或其他总线或点对点连接直接或间接的方式。系统100也可包括任意 数量的附加装置、代理、组件或连接。图2示出了处理器200,其可代表根据本发明的实施例的图1中的任意个的处理器 120、130或140,或任何其他处理器。处理器200可包括可为静态随机存取存储器的高速缓存210,或任何其他形式的 存储装置来存储信息,诸如从系统存储器150复制的数据等。处理器200 (或高速缓存210) 也可包括高速缓存控制逻辑220,以控制高速缓存210是以正常模式操作还是以作为随机 存取存储器的高速缓存(cache-as-random-access-memory “CRAM”)模式操作。在正常模 式,高速缓存210响应高速缓存命中而满足存储器请求,响应高速缓存未命中而代替高速 缓存线,并且可响应监听请求(snoop request)而无效(invalidate)或代替高速缓存线。 在CRAM模式,高速缓存210作为随机存取存储器操作,其中高速缓冲存储器满足高速缓冲 存储器的存储范围内的请求,并且响应于监听请求而不代替或无效高速缓存线。处理器200也可包括指令单元230、控制单元M0、执行单元250以及消息传递单 元沈0。指令单元230可包括任何电路、逻辑或其他硬件或结构,诸如解码器等,以便接收、 识别、解码,或者以其他方式接收指令。控制单元240可包括任何电路、逻辑或其他硬件或 结构,诸如微码、状态机逻辑、可编程逻辑或任何其他形式的控制逻辑,以便响应于指令单 元230接收的指令和/或消息传递单元260接收的消息来生成控制信号或以其他方式来用 于控制处理器200。执行单元250可包括任何电路、逻辑或其他硬件或结构以执行指令单元230接收 的指令。执行单元250可基于控制单元240生成的控制信号来操作。消息传递单元260可 包括任何电路、逻辑或其他硬件或结构以生成由处理器200发送到系统100中的其他组件 或代理的消息,并接收由系统100中的其他组件或代理发送到处理器200的消息。在处理器200的一个实施例中,指令单元210可接收用于处理器200的指令 (“SENTER”指令),以开始在系统100中建立安全的环境的过程(“SENTER”过程)。响应 于SENTER指令,控制单元240生成控制信号以使消息传递单元260生成“SENTER”总线消 息(或系统中其他类型的消息,其中处理器和其他代理通过非总线的方式进行通信),该总 线消息由其他处理器和代理的消息传递单元识别为SENTER总线消息。执行SENTER指令并 发送SENTER总线消息的处理器或执行线程称为“启动逻辑处理器”(initiating logicalprocessor “ILP")。系统中接收SENTER总线消息的每个处理器、执行线程或其他代理称为“响应逻辑 处理器”(responding logical processor “RLP”)。响应于 SENTER 总线消息,每个 RLP 执 行准备建立安全的环境的动作,以及允许ILP继续进行启动(launch)安全的环境的动作。 这些动作之一可用于它们的消息传递单元以生成“ACK”总线消息从而确认SENTER总线消 息的接收。图3示出了芯片组300,根据本发明的实施例,其可代表芯片组160或执行芯片组 160的功能的任何其他芯片组或组件。芯片组300可包括消息传递单元310、控制单元320、 “EXISTS”存储单元330、“ JOINS”存储单元;340、以及“ALL_J0INED”存储单元;350。消息传递单元310可包括任何电路、逻辑或其他硬件或结构以生成由芯片组300 发送到系统100中的其他组件或代理的消息,以及接收由系统100中的其他组件或代理发 送的消息。控制单元320可包括任何电路、逻辑或其他硬件或结构,诸如微码、状态机逻辑、 可编程逻辑或任何其他形式的控制逻辑,以便响应于消息传递单元310接收的消息而生成 控制信号或以其他方式来用于控制芯片组200。“EXISTS” 存储单元 330、“JOINS” 存储单元 340、以及“ALL_J0INED” 存储单元 350 中的每一个可包括寄存器或任何其他形式的存储装置来存储信息,并可包括用于任意数目 的位的存储装置。在一个实施例中,控制单元320可使用EXISTS存储单元330来跟踪在系 统100中操作的所有逻辑处理器和其他代理,以及使用JOINS存储单元340来跟踪已确认 收到SENTER总线消息的所有逻辑处理器和其他代理。当系统100中的所有处理器和其他代 理,如EXISTS存储单元330中所反映的,已确认收到SENTER总线消息,如JOINS存储单元 340中所反映的,则控制单元320可在“ALL_J0INED”存储单元350中设置指示器以向ILP 指示可继续进行安全的环境的启动。注意,在本说明书的SENTER过程中,如在本说明书的 其余部分,不要求描述和实现本发明的实施例的许多细节已被省略,并且该过程的许多变 型是可能的。例如,ILP和RLP通过前端处理器总线(front-side processor bus “FSB”) 来连接,FSB事务可包括每个事务的启动器的标识符,并且芯片组300可连接到FSB以跟踪 所有FSB逻辑处理器或其他总线代理。返回到图1,非易失性存储装置190可代表系统100中的任意数量的单独非易失性 存储介质,诸如半导体闪存或磁盘或光盘。非易失性存储装置190可用于存储在本发明实 施例中使用的软件组件。例如,非易失性存储装置190可存储认证代码模块(“ACM”)192 和被测虚拟机监视器(measured virtual machinemonitor “MVMM”)194。在SENTER过程中可由一个或多个处理器执行ACM 192,以执行涉及建立安全的环 境的任意数量的动作。例如ACM 192可用于初始化、配置和测试系统100内的组件来用于 其参与安全的环境。在一个实施例中,ACM 192可用于测试系统100的存储器配置(由系 统100中的任何处理器、芯片组或其他组件的存储器控制器功能所控制),以确保对系统存 储器150的某些页或部分的访问可以被限制或控制,这样,MVMM 194和/或用于使系统100 安全的其他软件可以在其存储在系统存储器150中时被保护。在另一个实施例中,ACM 192 可用于认证MVMM 194和将在安全的环境内使用的任何其他软件,以及启动MVMM 194的执 行。MVMM 194可以是作为在SENTER过程期间调用的可信任实体的任何虚拟机监视器、管理程序或其他这样的软件程序,以便控制一个或多个虚拟机执行其他软件程序(通 常称为被测的启动环境或“MLE”),其中的一些是可信任的,而一些是不可信任的。为了在系统100中建立安全的环境,运行在任何处理器120、130、140或系统100 中的任何其他处理器上的诸如操作系统(“Os”)或基本输入/输出系统(“BIOS”)等系 统软件可从非易失性存储装置190向系统存储器150传输ACM192和MVMM 194,接着使这些 处理器之一(例如处理器120)执行SENTER指令。SENTER指令的执行可使处理器120作 为ILP发布SENTER总线消息,轮询ALL_J0INED存储单元350直至所有的RLP已确认收到 SENTER总线消息,配置高速缓存122在CRAM模式操作,以及将ACM 192(或根据本发明的实 施例,ACM 192的部分,如下所述)载入高速缓存122。高速缓存122可配置为在CRAM模式 操作,使得高速缓存122可充当私有、安全的存储器,其中处理器120可认证ACM 192 (或根 据本发明的实施例,ACM 192的部分,如下所述)。为了特定处理器和/或芯片组可写ACM,并可由处理器和/或芯片组的制造商或卖 主对其进行数字签名。由于使得系统中的每个处理器处于稳定的状态所采取的各种动作的 复杂性,其中在稳定的状态加入(join in) SENTER过程,因此除了 ILP之外,对于RLP执行 ACM或ACM的某个部分也可能是所期望的。此外,诸如系统100等系统可包括两个或更多不 同步进、版本或类型的处理器。因此,将用于不同处理器的代码组合到一个ACM可能是所期 望的,使得任何不同的处理器可充当ILP,和/或使得RLP可执行ACM或ACM的某个部分。 然而,ACM的尺寸可能限于可将ACM载入以供认证的高速缓冲存储器的尺寸(例如64千字 节)。因此,本发明的实施例提供用于在SENTER过程中将使用的或可用的不止一个ACM。根据本发明的实施例,图4示出了主ACM400,其可用作系统100中的ACM192。主 ACM400包括主报头410、ACM420、ACM430以及ACM440。可为不同的步进、版本或类型的处 理器对ACM 420、430以及440中的每一个进行写入。例如,可分别为系统100中的处理器 120、130 和 140 对 ACM 420、ACM430 以及 ACM440 进行写入。ACM 420,430以及440中的每一个可包括包含代码和数据的部分(例如分别是部 分422、432和44 ,以及包含报头的部分(例如分别是部分424、434和444)。代码和数据部 分中的每一个包括由处理器在SENTER过程期间执行的代码,连同在执行此代码期间使用 的数据和/或执行此代码期间所生成的数据的便笺式存储单元(scratchpad locations) 0 报头部分中的每一个包括摘要(digest)和/或数字签名(“散列”)和/或从相应ACM中得 到或以其他方式代表相应ACM的其他值,所述摘要和/或数字签名或其他值由散列和/或 其他密码功能生成。报头部分中的每一个也可包括有关ACM的作者、尺寸、版本等的信息。 这些报头部分中的信息可用于认证(即核实真实性)相应的ACM0主报头410可包括匹配表412和主散列414。匹配表412可包括例如根据从在各 处理器内或与各处理器相关的寄存器或其他存储单元可读的唯一的处理器标识符(“CPU ID”)而标识包括在系统100的各处理器的表。对于每个CPU ID,基于有关处理器的步进、 版本、类型或其他信息,匹配表指示包括在主ACM 400中的哪个ACM将被该处理器执行。主散列414包括从匹配表412和报头似4、4;34和444 (或报头似4、4;34和444中 的每一个的部分)得出或以其他方式代表匹配表412和报头似4、434和444(或报头424、 434和444中的每一个的部分)的拼接(concatenation)的散列。主散列414可由在匹配 表412和ACM 420,430和440的散列的拼接上执行的散列和/或其他密码功能生成。因此,主散列414可用于认证所有包括在主ACM400中的信息。图5示出了本发明的方法实施例,具体而言,示出了使用多个认证代码模块进入 安全的计算环境的方法500。虽然本发明的方法实施例不限于此方面,但是可参照系统 100、处理器200、芯片组300或主ACM 400的元件来描述图5的方法500。此外,方法500 可代表单独的方法的汇编(compilation),其中每个可能在不同存储单元由不同的实体或 个人或自动执行。此外,在方法500中执行的某些动作可由处理器200响应于控制单元240所生成 的控制信号来执行(例如框550到558),或由芯片组300响应于控制单元320所生成的控 制信号来执行。处理器200中的控制信号又可响应于指令单元230将指令解码为一个或多 个微指令或微操作和/或消息传递单元260接收总线消息或其他事务而生成,而芯片组300 中的控制信号又可响应于消息传递单元310接收总线消息或其他事务而生成。在图5的框502,方法500可以开始。在框510中,可例如由处理器或其他信息处理系统组件的制造商或卖主,或者为 了处理器或其他信息处理系统组件的制造商或卖主而写入或以其他方式创建任意数量的 单独的ACM,例如ACM420、430以及440。在框512中,通过向ACM的代码、数据和/或其他 部分应用散列或其他这样的算法,可以为每个ACM创建散列。在框514中,每个散列可通过 应用使用例如公钥/私钥对的密码算法来加密。在框516中,每个散列可被加入到相应ACM 的报头。在框520,诸如主ACM 400等主ACM可以为诸如系统100等信息处理系统而创建。 主ACM可以例如由系统制造商或卖主或者为了系统制造商或卖主使用诸如ACM 420、430和 440等任意数量的单独的ACM而创建。在框522,诸如匹配表412等匹配表可以通过创建系 统100中的各处理器或其他代理的条目(包括各处理器的标识符连同哪个ACM将由该处理 器来执行的指示)而创建。在框524,匹配表可与包括在主ACM中的各个单独的ACM的散列拼接。在框526, 诸如主散列414等主散列可以通过将散列或其他这样的算法应用到匹配表和单独的ACM散 列的拼接而创建。在框528,主散列可以通过应用使用例如公钥/私钥对的密码算法来进行 加密。在框530,主ACM可以通过将主散列和匹配表拼接成主报头以及将主报头与单独 的ACM相拼接来完成。在框532,主ACM可以被加载或以其他方式安装在系统中,例如被加 载或以其他方式安装在诸如非易失性存储装置190等非易失性存储装置。在框M0,主ACM可以例如通过运行在系统100中的BIOS、弓|导装载程序或OS而从 非易失性存储装置复制到诸如系统存储器150等系统存储器。在框M2,系统100进入安全 的系统环境可以例如通过BIOS、引导装载程序、OS向处理器120发布SENTER指令来启动。 在框M4,处理器120可发送SENTER总线消息。在框M6,系统100中的每个RLP,例如,处 理器130和140可发送ACK总线消息。在框M8,所有RLP已经加入SENTER过程的指示可 以设置在例如ALL_J0INED存储单元350中。在框550,系统100中的处理器(例如ILP或和RLP)可读取主ACM中的匹配表以 寻找相应条目(entry)。如果匹配没有找到,则在框552,处理器可向非易失性存储器写入 错误代码值,并使系统重置。然而,如果找到了匹配,则在框554,处理器可配置其高速缓存以便以CRAM模式操作并将主报头和匹配的单独的ACM载入其高速缓存。在框556,处理器可试图通过对每一个主报头和匹配ACM进行散列并且将结果散 列与从主ACM读取的主散列和单独的ACM散列进行比较来认证主报头和匹配的ACM。如果 任何一个比较失败,则在框552,处理器可向非易失性存储器写入错误代码值,并使系统重 置。然而,如果主报头和匹配的单独的ACM都成功被认证,则在框558,主散列可被发送到诸 如令牌170的令牌(token),以便存储在PCR中,供在密封或解封被测启动环境或安全的系 统环境中的秘密时使用。在框560,框550到558可被系统100中的每个其他处理器重复。在框562,系统 100中的一个或多个处理器可开始执行它的ACM。在框564,执行ACM的处理器可启动MVMM。 在框566,系统100进入被测启动环境(“MLE”)或安全的系统环境可以完成。在框598,方法500可结束。在本发明的范围内,对于方法500而言,以不同的顺序执行、同时执行所示的块、 省略所示的块、增加额外的块、或者组合重新排序的、组合的、省略的或额外的块是可能的。 本发明的方法实施例的许多变型是可能的,但是其可能不是从方法500的描述显而易见 的。例如,框520至530中创建主ACM可以发生在系统100之外或者发生在系统100内。因此,已公开了系统、设备和方法以及使用多个认证代码模块进入安全的计算环 境的系统。虽然已对某些实施例进行了描述,并在附图中示出,但应理解,这样的实施例 仅仅是对宽广的本发明进行示例而非限制,并且本发明不限于所示和所述的特定结构和安 排,因为本领域技术人员在研究本公开时可以想到各种其他的修改。在快速成长并且进一 步的提高难以预见的技术领域,诸如本发明的技术领域,通过实现技术提高而进行促进,所 公开的实施例可以容易地在安排和细节上进行修改,而没有背离本公开的原理或所附权利 要求书的范围。
权利要求
1.一种处理器,包括解码器,解码安全进入指令;控制逻辑,响应于解码该安全进入指令,在主认证代码模块中的匹配表中寻找与处理 器相应的条目,并从主认证代码模块中读取主报头和单独的认证代码模块。
2.如权利要求1所述的处理器,进一步包括配置成安全模式的高速缓存,其中控制逻 辑将主报头和单独的代码模块读入配置成安全模式的高速缓存。
3.如权利要求2所述的处理器,其中控制逻辑也使主报头和单独的认证代码模块在高 速缓存内被认证。
4.如权利要求1所述的处理器,其中单独的认证代码模块是在主认证代码模块内的多 个单独的认证代码模块之一。
5.如权利要求4所述的处理器,其中控制逻辑还基于匹配表中的条目来选择多个单独 的认证代码模块之一。
6.如权利要求3所述的处理器,其中在认证主报头和单独的认证代码模块之后,控制 逻辑还向令牌发送主散列。
7.一种方法,包括在主认证代码模块中的匹配表中寻找与第一处理器相应的第一条目;将来自主认证代码模块的主报头载入第一安全存储器;并且将第一处理器的第一单独的认证代码模块从主代码模块载入第一安全存储器。
8.如权利要求7所述的方法,进一步包括发布安全进入指令,其中响应于发布安全进 入指令而进行寻找第一条目、加载主报头并加载第一单独的认证代码模块。
9.如权利要求7所述的方法,其中第一安全存储器是第一处理器的高速缓冲存储器。
10.如权利要求7所述的方法,进一步包括认证在第一安全存储器内的主报头和第一 单独的认证代码模块。
11.如权利要求7所述的方法,进一步包括从主认证代码模块中的多个单独的认证代 码模块中选择第一单独的认证代码模块。
12.如权利要求11所述的方法,其中选择第一单独的认证代码模块是基于匹配表中的 第一条目。
13.如权利要求10所述的方法,进一步包括在认证主报头和第一单独的认证代码模块 之后向令牌发送主散列。
14.如权利要求7所述的方法,进一步包括在主认证代码模块中的匹配表中寻找与第二处理器相应的第二条目;将来自主认证代码模块的主报头载入第二安全存储器;以及将第二处理器的第二单独的认证代码模块从主代码模块载入第二安全存储器。
15.如权利要求14所述的方法,其中第二安全存储器是第二处理器的高速缓冲存储ο
16.如权利要求14所述的方法,进一步包括认证第二安全存储器内的主报头和第二单 独的认证代码模块。
17.一种系统,包括第一处理器,包括解码器,解码安全进入指令;消息传递逻辑,发送安全进入消息;以及第一控制逻辑,响应于解码安全进入指令,在主认证代码模块中的匹配表中寻找与第 一处理器相应的第一条目,并从主认证代码模块中读取主报头和第一单独的认证代码模 块;和第二处理器,包括消息传递逻辑,接收安全进入消息;以及第二控制逻辑,响应于接收安全进入消息,在主认证代码模块中的匹配表中寻找与第 二处理器相应的第二条目,并从主认证代码模块中读取主报头和第二单独的认证代码模 块。
18.如权利要求17所述的系统,进一步包括存储主认证代码模块的非易失性存储装 置,所述主认证代码模块包括匹配表、第一单独的认证代码模块、第二单独的认证代码模 块,以及基于匹配表、第一单独的认证代码模块和第二认证代码模块的主散列。
19.如权利要求17所述的系统,进一步包括将主认证代码模块载入非易失性存储器的 系统存储器。
20.如权利要求19所述的系统,进一步包括在认证第一处理器的安全存储器内的主报 头和第一认证代码模块后,将主认证代码模块的主散列载入的令牌。
全文摘要
公开了使用多个认证代码模块进入安全系统环境的系统、设备和方法。在一个实施例中,处理器包括解码器和控制逻辑。解码器解码安全进入指令。响应于解码安全进入指令,控制逻辑在主认证代码模块中的匹配表中寻找与处理器相应的条目,并从主认证代码模块中读取主报头和单独的认证代码模块。
文档编号G06F21/00GK102122327SQ20101062514
公开日2011年7月13日 申请日期2010年12月24日 优先权日2009年12月31日
发明者E·F·布里克尔, M·J·库马, S·M·达塔 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1