按照参考平台清单和数据封装的安全操作系统启动的制作方法

文档序号:9693266阅读:286来源:国知局
按照参考平台清单和数据封装的安全操作系统启动的制作方法
【专利说明】
【背景技术】
[0001]典型地,计算设备利用安全模块以在启动期间监测计算设备的硬件平台和操作系统。安全模块通常是在计算设备启动时从计算设备的各个组件接收状态输入的专用处理芯片。进而,安全模块向计算设备上的应用程序提供状态输入。应用程序总体上使用状态输入来验证该计算设备对于执行应用程序来说是安全的平台,例如,操作系统是最新的并且没有已知的安全问题。
[0002]然而,在许多实例中,由于初始化了大量的硬件组件,因此安全模块在启动期间从硬件和软件平台接收了大量的输入。此外,许多应用程序不能够处理从安全模块接收到的状态输入。开发能够处理来自具有各种硬件配置的过多的计算设备的状态输入以对安全的计算设备和受到威胁的(compromised)计算设备进行区分的应用程序,典型地需要大量的资源支出。通常,应用程序开发者缺少或另外不愿意投入这样的资源。由此,虽然安全模块旨在协助创建安全的计算平台,但是计算设备上大量的应用程序经常忽略由安全模块提供的状态输入。
[0003]由此,尽管事实上状态输入反映了受到威胁的计算设备,但是应用程序仍在该计算设备上执行。执行这样的应用程序经常无意中允许恶意的一方控制该计算设备和/或从计算设备窃取用户数据。

【发明内容】

[0004]本文中描述了用于使用由计算设备上的信任模块推导的一个或多个设备健康值来确定计算设备的健康状态的技术。这些技术可以生成计算设备的一个或多个参考健康值。该一个或多个参考健康值是可以提前使用具有与计算设备相同的硬件和/或软件配置的一个或多个参考计算设备来生成的。该参考健康值可以表示在参考计算设备启动时的硬件平台的状态和/或包括参考计算设备的操作系统的软件栈的状态。参考健康值可以反映已知参考计算设备的硬件平台和/或操作系统处于安全状态的事实。处于安全状态的参考计算设备可以不存在已知的安全问题。在一些实施例中,相对于外围硬件组件(例如,外部键盘、鼠标、扩展坞(Docking Stat1n)等),可以关于硬件平台的不变硬件组件(例如,图形处理器、闪速存储器等)来测量硬件平台的状态,其中该不变硬件组件影响计算设备的安全背景。
[0005]计算设备上的信任模块可以生成表示在启动时计算设备的硬件平台和/或操作系统的状态的一个或多个设备健康值。当每个设备健康值与相对应的参考健康值匹配时,计算设备上的启动处理组件可以确定计算设备处于安全状态。相反,当任意设备健康值与其相对应的参考健康值不相同时,该组件可以确定计算设备处于非期望状态。在发现计算设备处于非期望状态的情况下,启动处理组件可以通过执行恢复环境(例如,包括维护模块的并行安全软件栈)而发起对计算设备上的软件组件的修复。例如,恢复环境可以发起对损坏的数据文件的修理、对恶意软件或病毒的移除、操作系统的重映射、针对一个或多个硬件组件安装新的固件等,使得可以使计算设备回到安全状态。
[0006]相反,在安全状态中运行的计算设备可以执行众多应用程序。例如,计算设备可以使用相对应的健康证书以向另一实体证明其安全状态。进而,在接受健康证书之后,该实体可以向计算设备提供所请求的服务。在另一示例中,计算设备可以使用被分发给计算设备并被绑定到一个或多个参考健康值的一个或多个密钥来执行任务,例如调控对存储在计算设备上的用户数据的访问。该一个或多个密钥可以唯一地标识计算设备。在一些实例中,计算设备上的机制可以为分配给计算设备的一个或多个密钥提供过期日期以确保对计算设备的完全访问取决于计算设备被利用最新的补丁和软件更新来周期性地更新。
[0007]在至少一个实施例中,生成一个或多个设备健康值涉及在计算设备的启动期间,根据配置设置来初始化计算设备的硬件组件并加载操作系统。接着,基于在启动时的硬件组件的状态和/或包括操作系统的软件栈的状态而生成一个或多个设备健康值。可以将设备健康值与相对应的参考健康值进行比较以确定计算设备是否处于安全状态。
[0008]由此,这些技术可以使得操作系统开发者能够直接管理计算设备的配置作为安全计算平台。以这种方式,用户可以免于监测计算设备的健康的任务、确保安装了最新的更新和补丁、并且验证操作系统处于维护状态。虽然处于维护状态,但是操作系统可以没有已知的恶意软件、病毒和其它恶意代码。相反,可以向用户保证从启动时起,计算设备处于安全状态并且用户能够信任计算设备以保持机密的用户数据的安全。
[0009]提供本
【发明内容】
而以简化的方式减少了在下文【具体实施方式】中进一步描述的精选的概念。本
【发明内容】
不是要标识要求保护的主题的关键特征或必要特征,也不用于限制要求保护的主题的范围。
【附图说明】
[0010]通过参考附图描述了【具体实施方式】。在图中,附图标记最左边的数位标识第一次出现该附图标记的图。在不同的图中使用相同的附图标记指示相似或相同的项。
[0011]图1为示出了用于评估用户计算设备的健康状态的示例方案的框图,在该方案中,所评估的健康状态用于授权对用户计算设备的访问和/或用于授权从服务提供者获取服务。
[0012]图2为示出了生成用于评估用户计算设备的健康状态的参考健康状态的参考计算设备的示例组件的示意图。
[0013]图3为示出了具有信任模块用户计算设备的示例组件的示意图,该信任模块至少部分地基于设备健康值与所存储的参考健康值的比较而评估用户计算设备的健康状态。
[0014]图4为示出了用于使用一个或多个参考计算设备生成参考健康值的示例过程的流程图。
[0015]图5为示出了用于基于用户计算设备的健康值与参考健康值的比较而确定用户计算设备的健康状态的示例过程的流程图。
[0016]图6为示出了用于针对用户计算设备生成设备健康值的示例过程的流程图。
[0017]图7为示出了用于使用一个或多个密钥和参考健康值来保护存储在用户计算设备上的用户数据的示例过程的流程图。
[0018]图8为示出了用于使用与参考健康值相关联的一个或多个密钥以命令更新用户计算设备的操作系统的示例过程的流程图。
【具体实施方式】
[0019]本文中描述了用于使用由计算设备上的信任模块推导的一个或多个设备健康值来确定计算设备的健康状态的技术。这些技术可以生成计算设备的一个或多个参考健康值。该一个或多个参考健康值是可以提前使用具有与计算设备相同的硬件和/或软件配置的参考计算设备来生成的。该一个或多个参考健康值可以表示在参考计算设备启动时的硬件平台的状态和/或包括参考计算设备的操作系统的软件栈的状态,其中已知该参考计算设备的硬件平台和操作系统不存在已知的安全问题。
[0020]计算设备上的信任模块可以生成一个或多个设备健康值,该一个或多个设备健康值表示在启动时的硬件平台的状态和/或包括计算设备的操作系统的软件栈的状态。计算设备上的启动处理组件可以将每个设备健康值与相对应的参考健康值进行比较以确定计算设备处于安全状态还是非期望状态。非期望状态可以指示计算设备在某种程度上受到威胁。在发现计算设备处于非期望状态的情况下,启动处理组件通过执行恢复环境而发起对计算设备上的软件组件的修复。相反,在安全状态中运行的计算设备可以执行众多应用程序。例如,计算设备可以使用被分发给计算设备并被绑定到一个或多个参考健康值的一个或多个密钥来执行任务,例如调控对存储在计算设备上的用户数据的访问。
[0021]在一些实例中,计算设备上的机制可以为分发给计算设备的一个或多个密钥提供过期日期以确保对计算设备的完全访问取决于计算设备被利用最新的补丁和软件更新来周期性地更新。在下文参照图1-8描述了格局各个实施例的用于使用由计算设备上的信任模块推导的设备健康值来确定计算设备的健康状态的技术。
[0022]示例方案
[0023]图1为示出了用于评估计算设备的健康状态的示例方案的框图,在该方案中,所评估的健康状态用于授权对用户计算设备的访问并且用于授权从服务提供者获取服务。示例方案100可以包括验证实体102、用户计算设备104、以及服务提供者106。验证实体102可以是操作系统开发者、硬件平台制造者,例如原始设备制造商(0ΕΜ)、或操作系统开发者和硬件平台制造者两者均信任的第三方。
[0024]验证实体102可以负责生成用户计算设备104的参考健康值108。验证实体102可以使用具有与用户计算设备104相同的硬件和软件配置的参考计算设备110来生成参考健康值108。例如,参考计算设备110可以具有与用户计算设备104相同的硬件组件,其中硬件组件被设置成以相同的方式工作。此外,参考计算设备110可以根据与用户计算设备104相同的配置设置来执行相同的操作系统。
[0025]参考健康值108可以表示在参考计算设备启动时的硬件平台的状态和/或包括参考计算设备的操作系统的软件栈的状态,其中已知参考计算设备的硬件平台和操作系统处于维护状态(maintained state),不存在已知的安全问题。在一些实施例中,计算设备110上的健康值模块可以生成参考健康值108。健康值模块可以是收集与参考计算设备110的硬件平台以及在启动时在硬件平台上执行的软件栈的状态有关的测量的单独处理器。由参考计算设备110的健康值模块将测量转换成参考健康值。然而,在其它实施例中,健康值模块可以被实施为运行受保护的环境(即,由参考计算设备110的一个或多个处理器执行、来自参考计算设备110的受保护的系统存储器)的软件。
[0026]在一些实施例中,针对参考计算设备110的硬件平台的测量可是相对于外围硬件组件(例如,外部键盘、鼠标、扩展坞等)而关于硬件平台的不变(invariant)硬件组件(例如,图形处理器、闪速存储器等)来进行的,其中该不变硬件组件影响计算设备的安全背景。以这种方式,参考健康值不受相对于参考计算设备100而附接或移除这种次要硬件组件的影响。
[0027]验证实体102可以经由网络112向用户计算设备104提供参考健康值。例如,由验证实体102操作的服务器114可以向用户计算设备104传输参考健康值108。在各个实施例中,网络112可以是局域网(“LAN”)、诸如广域网(“WAN”)的更大的网络、和/或诸如互联网的许多网络。用于网络通信的协议(例如,TCP/IP)可以用于实施网络112。可以使用各种无线通信接口技术(例如,蜂窝、W1-F1、超宽带、蓝牙、卫星传输)等来实施网络112。替代地或同时,还可以使用诸如LAN以太网、WAN以太网、通用串彳丁总线(USB)、尚速串彳丁总线等的各种有线通信技术来实施网络112。
[0028]用户计算设备102可以使用信任模块116来生成设备健康值118。在各个实施例中,信任模块116可以是安装在用户计算设备104上以促成平台安全的单独处理器。例如,信任模块116可以类似于符合由可信计算组织(TCG)概括的可信平台模块(TPM)规范的可信平台模块(TPM)模块。然而,在其它实施例中,信任模块116可以被实施为运行受保护的环境(SP,由用户计算设备104的一个或多个处理器执行、来自用户计算设备104的受保护的系统存储器)的软件。
[0029]信任模块116可以获
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1