当前位置: 首页 > 专利查询>英特尔公司专利>正文

协调设备引导安全性的技术制造技术

技术编号:17746205 阅读:25 留言:0更新日期:2018-04-18 19:42
各种实施例通常涉及用于协调处理设备的组件之间的信任链的形成的技术。一种装置可以包括处理器组件,该处理器组件包括验证微代码,用于基于第一安全性凭证来认证验证例程,以在处理设备内创建包括验证微代码和验证例程的信任链;收集寄存器,用于在被读取时提供自从处理设备的初始化以来写入收集寄存器的一个或多个值的散列值;以及所述验证例程的验证组件,用于确定所述初始化的所选安全性级别,并且基于所选安全性级别,基于第二安全性凭证对固件进行验证,以扩展所述信任链以包括所述固件并将对固件的尝试认证的结果的指示存储在收集寄存器中。

【技术实现步骤摘要】
【国外来华专利技术】协调设备引导安全性的技术
技术介绍
用于引导处理设备以供使用的初始化过程可能会受到不同的安全性要求的影响。政府和/或公司实体可能需要更高的安全性级别来保护机密信息,包括关于人员的信息(例如人员记录,客户信息等)和/或关于与这些实体相关联的活动的信息(例如知识产权,正在进行的项目的方面等)。为了适应这种较高的安全性级别,可以在初始化期间实现各种机制以强制仅使用可信的可执行例程(例如,固件,操作系统,应用例程等)。然而,个人可能不需要和/或可能不想在他们用于其个人用途的处理设备上实施这样的更高的安全性级别。举例来说,个人可能希望具有如下的灵活性:能够在这样的处理设备上获得并安装各种可执行例程中的任何一个,其可能不符合用于被视为可信的可执行例程的一个或多个资格。附图说明图1A和图1B各自示出了安全处理系统的示例实施例。图2示出了向处理设备的组件提供安全性凭证的示例实施例。图3示出了接收所选安全性级别的指示的示例实施例。图4A和图4B一起示出了认证验证例程的示例实施例。图5示出了选择性地认证至少一个固件的示例实施例。图6示出了收集寄存器的示例实施例。图7示出了分析信任链的操作系统或应用例程的示例实施例。图8A,8B和8C一起示出了根据实施例的逻辑流程。图9示出了根据实施例的另一逻辑流程。图10示出了根据实施例的处理架构。具体实施方式各种实施例通常涉及用于协调处理设备的组件之间的信任链的形成以更容易地适应对这些组件中的一个的改变的技术。至少在处理设备的初始化期间,并入其处理器组件中的验证微代码可以尝试认证存储在处理设备的其他存储设备内的验证例程。在成功认证验证例程从而形成信任链的初始部分之后,处理器组件可以执行验证例程以取回处理器组件和该处理设备中的一个或多个可执行例程之间将要实施的安全性级别的指示。安全性级别可以是多个安全性级别中的任何一个,包括但不限于:强制要求多个可执行例程被验证至固件并包括固件的相对高的安全性级别,放弃一个或多个认证检查的相对低的安全性级别,和/或在高安全性级别和低安全性级别之间的中级安全性级别,其包括尝试对一个或多个可执行例程进行认证,同时保持结果的安全记录。由于各种原因中的任何一种原因,安全性级别可被允许由处理设备的操作者设置,包括允许用可能不能被认证的另一固件替换那些可执行例程中的固件。以这种方式,可以选择相对高的安全性级别,其中在需要对恶意软件(例如病毒,蠕虫等的恶意程序)的提高的抵抗力的环境中操作处理设备。可选地,以这种方式,可以选择较低的安全性级别,以在对恶意软件的这种提高的抵抗力被认为不那么重要的情况中允许个体操作者对处理设备的各个方面具有更多的控制。在这些实施例中的一些实施例中,处理设备的一个或多个组件可以被选择为符合由加利福尼亚州圣克拉拉市的英特尔公司所颁布的IA-32架构的各方面和/或由俄勒冈州比弗顿市的UEFI论坛所颁布的统一可扩展固件接口的各个方面。在这样的实施例中,处理器组件可以是英特尔公司的奔腾(Pentium),安腾(Itanium)或酷睿(Core)系列处理器组件之一,验证微代码可以在英特尔公司制造期间并入处理器组件,验证例程可以是英特尔公司提供的认证代码模块(ACM),固件可以是由各种来源中的任何一种提供的基本输入/输出系统(BIOS),并且操作系统可以是华盛顿州雷蒙德市的微软公司的Windows的版本,或者是由各种来源提供的Linux的版本。更具体地,在制造要并入到处理设备中的处理器组件的过程中,可以将验证微代码和至少一个安全性凭证合并到处理器组件中。验证微代码可以使得处理器组件在处理设备内初始化时,取回可以存储在处理设备内的验证例程,并且使用至少一个安全性凭证来尝试认证验证例程为可信的。处理设备的初始化可以通过诸如处理设备的加电,软件触发和/或硬件触发的重置等的事件来触发。在一些实施例中,至少一个安全性凭证可以是加密密钥,旨在用于认证验证例程(或其散列)的数字签名。在其他实施例中可以使用其他类型的安全性凭证和/或其他机制来认证验证例程。如果验证微代码无法认证验证例程,则处理器组件可以停止采取任何进一步的动作来初始化处理设备和/或可以采取动作来使处理设备不可操作,作为保护处理设备的一部分。然而,如果验证微代码能够认证验证例程,则处理器组件可以执行验证例程的指令以取回在初始化期间将要实施的安全性级别的指示。该指示可以被取回作为存储在寄存器中和/或处理设备的存储设备内的特定地址处的存储位置内的一个或多个位值。在一些实施例中,安全性级别可以由处理设备的操作者通过由处理器组件提供的用户界面(UI)来选择,其中UI可以允许操作者使用手动可操作的控件(例如,键盘和/或鼠标),以便选择安全性级别。在其他实施例中,安全性级别可以由操作者使用由处理设备的电路板携带的跳线来选择,该跳线可以被移动到可以各自表示不同的可选安全性级别的多个位置之一。在已经选择了相对高的安全性级别的一些实施例中,处理器组件还可以执行验证例程的指令以使用至少一个其他安全性凭证来尝试认证固件为可信的。所述至少一个其他安全性凭证可以是旨在用于认证固件(或固件的散列)的数字签名的加密密钥或者用于认证固件的不同机制中的另一种类型的安全性凭证。如果验证例程无法认证固件,则处理器组件可以停止采取任何进一步的动作来初始化处理设备和/或可以采取动作来使得处理设备不可操作,作为保护处理设备的一部分。然而,如果验证例程能够认证固件,则处理器组件可以将值存储在收集寄存器中,该值指示固件的成功认证。收集寄存器可以组合从处理设备的初始化开始以来写入其中的所有值。当被读取时,收集寄存器可能不提供任何写入其中的值。相反,收集寄存器可以提供从散列导出的散列值,该散列值是从自从处理设备上次初始化以来已经写入到收集寄存器的所有值的组合得到的。因此,在由处理器组件随后执行操作系统或应用例程的指令期间,可以读取收集寄存器以取回散列值,并且可以检查散列值以验证固件被成功认证为可信的,使得操作系统和/或应用例程能够信任该固件。因此,收集寄存器的这种使用可以提供在处理器组件、验证微代码、验证例程和固件之间提前形成信任链的验证。操作系统和/或应用例程可以依靠这种信任链的形成的验证来确定是否初始化和/或使其一个或多个特征可用。此外,操作系统和/或应用例程对这种验证的依赖可以用来扩展该信任链以包括操作系统和/或应用例程。可选地或另外地,在已经选择了相对高的安全性级别但是验证例程不能够认证固件的情况下,处理组件可以进一步执行验证例程以尝试认证替代固件,而不是采取动作来使得处理设备不可操作。与不能被认证的固件相比,替代固件可以支持相似范围的功能,或者可以提供更有限范围的功能,以使得处理设备的操作者能够执行动作来纠正认证固件的能力缺乏。在已经选择了相对低的安全性级别的一些实施例中,处理器组件可以避免进一步执行验证例程的指令来尝试认证固件。然而,处理器组件可以在收集寄存器中存储一个值,表示没有进行这样的认证尝试。这可以使得能够随后从收集寄存器读取散列值的生成,该散列值向操作系统和/或应用例程指示没有尝试验证固件。因此,所得到的散列值可以用作仅在处理器组件和验证例程之间形成信任链的指示,但不包括固件而使得不知道固件是否可信。该操作系统和/或应用例本文档来自技高网...
协调设备引导安全性的技术

【技术保护点】
一种用于安全初始化的装置,包括:第一处理器组件,包括验证微代码,用于响应于处理设备的初始化而尝试基于第一安全性凭证来认证验证例程,以在所述处理设备内创建信任链,所述信任链至少包括所述验证微代码和所述验证例程;第一收集寄存器,用于在被读取时提供自从所述初始化以来被写入到所述第一收集寄存器的一个或多个值的第一散列值;以及所述验证例程的验证组件,用于确定所述初始化的所选安全性级别,并且基于所述所选安全性级别,尝试基于第二安全性凭证来认证第一固件,以将所述信任链扩展为包括所述第一固件,并且在所述第一收集寄存器中存储对所述第一固件的尝试认证的结果的指示。

【技术特征摘要】
【国外来华专利技术】1.一种用于安全初始化的装置,包括:第一处理器组件,包括验证微代码,用于响应于处理设备的初始化而尝试基于第一安全性凭证来认证验证例程,以在所述处理设备内创建信任链,所述信任链至少包括所述验证微代码和所述验证例程;第一收集寄存器,用于在被读取时提供自从所述初始化以来被写入到所述第一收集寄存器的一个或多个值的第一散列值;以及所述验证例程的验证组件,用于确定所述初始化的所选安全性级别,并且基于所述所选安全性级别,尝试基于第二安全性凭证来认证第一固件,以将所述信任链扩展为包括所述第一固件,并且在所述第一收集寄存器中存储对所述第一固件的尝试认证的结果的指示。2.根据权利要求1所述的装置,所述第一处理器组件包括嵌入在所述验证微代码内的所述第一安全性凭证,所述第一安全性凭证包括密钥,所述验证例程包括利用与密钥相关联的另一密钥生成的数字签名,并且所述验证微代码包括取回组件,用于取回所述验证例程和所述验证微代码以尝试将所述密钥与所述数字签名进行匹配以尝试认证所述验证例程。3.根据权利要求1所述的装置,所述第一处理器组件响应于认证所述验证例程的失败而避免执行所述处理设备的进一步初始化。4.根据权利要求3所述的装置,所述第一处理器组件将对所述第一固件的所述尝试认证的结果的指示存储在所述第一收集寄存器中,而不管所述结果如何,并且响应于包括中级安全性级别的所选安全性级别而尝试初始化所述处理设备内的操作系统。5.根据权利要求1所述的装置,包括:第二收集寄存器,用于在被读取时提供从自从所述初始化以来被写入到所述第二收集寄存器的一个或多个值取的散列的第二散列值,并且所述验证例程的所述验证组件将指示所选安全性级别的值存储在所述第二收集寄存器中。6.根据权利要求5所述的装置,包括操作系统,用于从所述第一收集寄存器读取所述第一散列值,并从所述第二收集寄存器读取所述第二散列值,以获得所述信任链的范围的指示,并且基于所述第一散列值和所述第二散列值来确定是否允许在所述处理设备内对所述操作系统的初始化。7.根据权利要求6所述的装置,所述验证组件向所述第一固件提供指示所选安全性级别的所述值,所述第一固件产生包括所述值的事件日志并将所述事件日志提供给操作系统,并且所述操作系统从所述事件日志中的所述值导出第三散列值,并比较所述第二散列值和所述第三散列值,以确定是否允许在所述处理设备内对所述操作系统的初始化。8.根据权利要求1所述的装置,包括:跳线,其能够操作至至少一个位置以选择所选安全性级别;以及设置寄存器,其能够由所述第一处理器组件访问,以在被读取时提供如经由所述跳线选择的所选安全性级别的指示。9.根据权利要求1所述的装置,包括第二处理器组件,用于执行所述验证例程以使所述验证组件对所述第一固件进行认证,以将所述信任链扩展为包括所述第一固件,并且所述验证微代码用于创建所述信任链以包括所述第二处理器组件。10.一种用于安全初始化的装置,包括:第一处理器组件,包括验证微代码,用于响应于处理设备的初始化而尝试基于第一安全性凭证来认证验证例程,以在所述处理设备内创建信任链,所述信任链至少包括所述验证微代码和所述验证例程;所述验证例程的验证组件,用于确定所述初始化的所选安全性级别,并且基于所选安全性级别,尝试基于第二安全性凭证来认证第一固件,以将所述信任链扩展为包括所述第一固件,并且将对所述第一固件的尝试认证的结果的指示存储在第一收集寄存器中,所述第一收集寄存器在被读取时提供自从所述初始化以来被写入到所述第一收集寄存器的一个或多个值的第一散列值;以及所述验证例程的选择组件,用于基于所选安全性级别并且响应于认证所述第一固件的失败而识别第二固件,所述验证组件用于基于所选安全性级别尝试基于所述第二安全性凭证认证所述第二固件来将所述信任链扩展为包括所述第二固件,并且将对所述第二固件的尝试认证的结果的指示存储在所述第一收集寄存器中。11.根据权利要求10所述的装置,所述第二安全性...

【专利技术属性】
技术研发人员:姚颉文V·J·齐默
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1