CN105324779B - 使用安全存储装置的主机恢复 - Google Patents
使用安全存储装置的主机恢复 Download PDFInfo
- Publication number
- CN105324779B CN105324779B CN201480033784.6A CN201480033784A CN105324779B CN 105324779 B CN105324779 B CN 105324779B CN 201480033784 A CN201480033784 A CN 201480033784A CN 105324779 B CN105324779 B CN 105324779B
- Authority
- CN
- China
- Prior art keywords
- computing device
- host computing
- firmware
- image
- host
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Retry When Errors Occur (AREA)
Abstract
本发明描述了用于使得主机计算装置能够将证书和对恢复所述主机计算装置的状态有用的其他安全信息存储在安全存储装置中的方法,所述安全存储装置如在所述主机计算装置上的可信平台模块(TPM)。当在发生故障(例如,断电、网络故障等)的情况下恢复主机计算装置时,所述主机计算装置可以从安全存储装置获得必要的证书,并且使用那些证书来启动各种服务,还原所述主机的状态以及执行各种其他功能。此外,安全存储装置(例如,TPM)可将主机计算装置的启动固件测量和远程证明提供到网络上的其他装置,如当所述恢复的主机需要与网络上的其他装置通信时。
Description
背景技术
随着越来越多的应用程序和服务在网络(如互联网)上变得可用,越来越多的内容、应用程序、和/或服务提供商转向技术(如云计算)。一般来说,云计算是通过服务(如网页服务)提供对电子资源的访问的方法,其中用于支持那些服务的硬件和/或软件是动态可扩展的,以便在任何给定时间满足服务的需要。用户或客户通常将租用、出租、或另外支付通过云的对资源的访问,并且因此不必须购买和维持需要的硬件和/或软件。因此,用户的应用程序和服务经常托管在服务提供商或环境的其他操作人员的主机服务器上。在这样的情形中,对于服务提供商或其他操作人员,提供针对可能发生的各种电源故障、断网和其他意想不到的事件的保护以便确保用户的服务持续可靠地和不间断地操作可能是重要的。可出现的一个特别的问题是在发生大规模事件(如广泛的网络故障和/或电源故障)的情况下,迅速和安全地恢复主机的能力。
附图说明
将参照附图描述根据本公开的各种实施方案,在附图中:
图1示出根据各种实施方案的提供在主机计算装置上的TPM或其他安全存储装置的实施例;
图2示出根据各种实施方案的在恢复模式下的主机计算装置的实施例;
图3示出根据各种实施方案的执行主机计算装置到远程计算装置的远程证明的TPM的实施例;
图4示出根据各种实施方案的可包含主机计算装置的多组织计算环境的服务提供商或其他操作人员的资源中心环境的实施例;
图5示出根据各种实施方案的用于将证书存储到TPM上的示例性过程,所述TPM可用于恢复主机计算装置;
图6示出根据各种实施方案的用于通过TPM执行主机计算装置的远程证明的示例性过程;
图7示出根据各种实施方案的可利用的示例性计算装置的一组通用部件的逻辑布置;以及
图8示出根据各种实施方案的用于实施各方面的环境的实施例。
具体实施方式
在以下描述中,在附图的图式中将通过举例的方式而非通过限制的方式示出各种实施方案。在本公开中对各种实施方案的参考不一定指相同的实施方案,并且这样的参考意指至少一个。尽管讨论了特定的实施方式和其他细节,应理解这仅仅是为示例性目的而进行的。在相关领域中的技术人员将认识到,在不背离所要求的主体的范围和精神的情况下,可以使用其他部件和配置。
根据本公开的各种实施方案的系统和方法可克服在用于管理安全信息的常规方法中经历的前述缺陷或其他缺陷中的一个或多个,当在故障和/或其他意想不到的事件之后恢复计算装置时,所述安全信息可以是有用的。具体来说,各种实施方案使主机计算装置能够将证书(和/或对恢复主机计算装置的状态有用的其他安全信息)存储在安全存储装置中,如在主机计算装置上的可信平台模块(TPM)。当在发生故障(例如,断电、网络故障等)的情况下恢复主机计算装置时,主机计算装置可以从安全存储装置获得必要的证书,并且使用那些证书来启动各种服务,还原主机的状态以及执行各种其他功能。此外,安全存储装置(例如,TPM)可将主机计算装置的启动固件测量和远程证明提供到网络上的其他装置,如当恢复的主机需要与网络上的其他装置通信时。
使用TPM来存储被需要以便恢复主机计算装置的各种证书可以在故障和其他灾难性的事件的情况下将改进的恢复平均时间提供给主机。因为被需要以便将主机带到工作状态的关键信息(例如,证书)本地密封在主机上(例如,由TPM中的密钥保护),主机计算装置不需要通过网络从远程计算装置获得证书,因此节约延迟并改善恢复的时间。在多组织计算环境(例如,云计算环境)中,其中主机计算装置可托管供给给多用户的许多虚拟机器和应用程序/服务,当从大规模灾难和其他意想不到的事件恢复时,这可以是重要的因素。
根据一个实施方案,主机计算装置包括TPM(或其他安全存储装置),所述TPM(或其他安全存储装置)被供给以便存储一个或多个证书,如加密密钥、数字证书、令牌、或在发生故障的情况下可以被主机计算装置使用的其他安全信息。主机计算装置还包括恢复图像,可使用不对称或对称密码学来加密所述恢复图像。恢复图像可包含必要的功能性(例如,操作系统、网络功能性等),以便当在故障之后重启主机时恢复主机计算装置。恢复图像可以是基本输入输出系统(BIOS)或主机计算装置的其他固件中的加密部分。用于解密恢复图像的加密密钥可安全地存储(例如,密封)在主机计算装置的TPM上。在一些实施方案中,存储在TPM中的密钥可用于解密另一个密钥,并且另一个密钥用于解密恢复图像。在其他的实施方案中,可使用存储在TPM中的密钥来直接解密恢复图像。在大规模事件(如断电、网络故障或其他灾难)期间,主机计算装置可能不正常地和意外地终止,以使得主机计算装置不能够适度地执行另外将在正常操作期间执行的其关闭程序。当在这样的事件之后启动(例如,重启)主机计算装置时,基本输入输出系统(BIOS)或在主机计算装置上的其他固件可分析一组条件,以及确定意想不到的故障很可能发生。如果检测到这样的故障,那么固件可使用存储在TPM(如先前描述的)中的加密密钥来解密恢复图像,并且将解密图像加载到主机计算装置的存储器中。一旦恢复图像开始并运行,TPM可通过访问安全地存储在TPM上的一个或多个证书提供恢复图像。恢复图像然后可以使用那些证书来启动在主机计算装置上的各种服务;向在网络上的其他装置认证主机计算装置;以及执行其他任务以便还原主机计算装置的功能性和状态。
根据另一个实施方案,一旦恢复图像已被加载到主机计算装置上,TPM可执行恢复图像的启动固件测量。启动固件测量可存储在TPM中。其后,TPM可使用记录的启动固件测量,以便执行主机计算装置的远程证明。例如,当主机计算装置在恢复模式时,各种外部装置(例如,中央管理服务器等)可需要与主机计算装置通信,以便将主机的功能性带回到正常。这些通信通常包括不应该被泄露到不可信环境的证书和其他敏感信息。因此,远程装置可需要确保可信的恢复模式软件已经加载到主机上,并且其不是冒充为恢复图像的恶意的软件(例如,恶意软件)。因此,当从请求TPM证实恢复图像的远程装置(例如,中央服务器等)接收查询时,TPM可使用公钥基础设施(PKI)来密封(例如,加密、签名等)恢复图像的启动固件测量,并将启动固件测量传输到远程装置(例如,中央管理服务器等)。远程装置可接收启动固件测量并且将其与预期的参考值相比较,以便验证在主机上加载的恢复图像没有被损坏。一旦远程装置能够证实恢复图像,所述远程装置可开始将包含敏感证书的各种通信发送到主机,以便执行主机计算装置的恢复。
图1示出根据各种实施方案的提供在主机计算装置上的TPM或其他安全存储装置的实施例100。如在附图中示出的,为了供给安全存储装置(如在主机计算装置上的TPM),在分布式计算环境101中操作的远程服务器102(例如,可信的主机计算装置、中央管理服务等)可在环境101中分配用于每一个主机计算装置(103、104、105)的密钥材料。证书的分配可在主机计算装置的正常操作期间发生。替代地,主机计算装置可下线以便在主机上供给TPM。在示出的实施方案中,每一个主机计算装置(103、104、105)包括在本地主机上操作的固件部件(例如,BIOS),所述本地主机与主机上的可信平台模块(TPM)相互作用。例如,主机计算装置103包括与TPM 109相互作用的固件部件106,而主机计算装置104包括与TPM 110相互作用的固件部件107,并且主机计算装置105包括与TPM 111相互作用的固件部件108。
在各种实施方案中,TPM供给阶段包括实际上将秘密(证书、密钥等)放置到TPM中的TPM的所有者(即,被授权通过密码来将证书存储在TPM上的实体)。在这个阶段期间,将(在恢复阶段期间将被使用的)证书供给到TPM中。在供给TPM之后,将在主机的恢复期间使用的证书密封在TPM中。
在示出的实施方案中,在每一个主机计算装置上的固件部件与TPM之间可有鉴别过程。此外,远程服务器102可对于在主机计算装置上操作的固件鉴别自身,如通过与在主机上的固件的建立安全通信会话。一旦鉴别是成功的,远程服务器102可将证书(112、113、114)或其他安全材料发送到在主机计算装置上的固件部件,并且所述固件部件可引起证书本地存储在主机上的TPM中。例如,远程服务器102可将证书112传输到固件部件106,这可引起证书112存储在TPM中(例如,密封在TPM上)。类似地,远程服务器102可将证书113传输到固件107,并将证书114传输到固件108,这将引起证书分别存储在TPM 110和TPM 111中。
在各种实施方案中,证书可存储在主机计算装置上并加密,以使得只有如果TPM模块在主机计算装置上就位时,才可以解密证书。存储在TPM中的证书可包括当在恢复模式时,可被主机计算装置使用的任何鉴别密钥、加密/解密密钥、数字证书和其他安全令牌。在至少一些实施方案中,存储在TPM中的证书可包括用于解密恢复图像的一组密钥,在故障情况下所述恢复图像被加载到主机计算装置上。
一旦证书安全地本地密封在主机计算装置上的TPM中,可使用那些证书来从大规模事件(电源故障、网络故障等)恢复主机计算装置。这使得主机计算装置能够从存储在TPM中的秘密重建其状态(或其中的一部分),以使得主机必须依靠能够与网络上的其他主机通信,以便重建其状态并开始正常运作。相反,每一个主机计算装置可以将其秘密本地存储在、密封在TPM中,并且在本地主机上操作的逻辑(部件)可被配置来重建由于电源故障等丢失的状态。在一些实施方案中,在主机计算装置上重建状态可重建基本关键功能性(如网络的功能性),以便使能主机计算装置能够与其他主机计算装置(如远程管理服务器等)通信。
在一些实施方案中,可通过使用密封在TPM中的证书恢复的主机计算装置是对监测其他网络装置负责的主机。这些主机可需要证书以便与开关和路由器、访问交通流等通信。因此,主机计算上装置可需要向各种实体证明本身,以便执行它们的正常功能。在各种实施方案中,主机计算装置可使用密封在TPM中的证书,以便当在恢复模式时在网络上执行这样的鉴别。
额外地或替代地,即使在正常操作期间,以及不仅仅当从故障恢复时,主机计算装置也使用本地存储在TPM上的密钥/证书。同样地,主机计算装置可使用密封在TPM中的证书,以便向在网络上的其他主机证明本身,并且以便执行它们(路由器、存储主机等)的正常功能性。
图2示出根据各种实施方案的在恢复模式下的主机计算装置的实施例200。如在示意图中示出的,主机计算装置201包括基本输入输出系统(BIOS)或其他固件部件202,所述基本输入输出系统(BIOS)或其他固件部件202确定主机计算装置201应该在正常操作模下还是在恢复模式下。在一些实施方案中,可能有构建到固件202中的一组条件208,所述固件202确定主机计算装置202是否应该在恢复模式下。固件可以分析那些条件来尝试查明在最近过去中是否有不寻常的电源事件等。例如,固件202可试图用因特网包探索器搜索(ping)预先配置的一组其他主机计算装置,并且如果其不可以达到它们,那么固件202可设想有某种大面积故障并且进入恢复模式。替代地,固件202可试图联系被认为与环境成整体的特定的远程系统,并且如果不能够建立联系,那么固件202可设想有大规模故障事件。另外,主机计算装置可倾听由在网络上的其他主机计算装置提供的心跳信息,以便检测何时已经发生大规模事件。
一旦主机计算装置在恢复模式时,固件202可以使用在TPM 203中的解密密钥206,以便解密恢复图像204并且将恢复图像204加载到主机计算装置201的存储器中。在一些实施方案中,可使用解密密钥206来解密另一个密钥(例如,中间解密密钥),所述另一个密钥依次用于解密在主机计算装置201上的恢复图像204。在其他实施方案中,直接使用解密密钥206来解密恢复图像204。恢复图像204可以是固件202的加密部分,所述固件202包括被需要来在故障之后还原主机计算装置201的状态的功能性。在正常操作期间,不解密恢复图像204,并且只有如果固件202检测有电源故障、异常终止或其他事件时,通过使用密封在TPM203中的解密密钥206解密恢复图像204。
在一些实施方案中,TPM 203还包括获得启动固件测量205以及将启动固件测量205记录在TPM 203上的能力。启动固件测量可通过散列许多预先确定的存储器地址范围的值,以及通过将散列存储在TPM 203中来执行。例如,启动固件测量205可因为与固件202相关联的存储器地址或恢复图像204等而获得。其后,启动固件测量205可用于验证正确版本的固件202或恢复图像204加载在装置上,并且它们没有被恶意软件或其他安全威胁损坏。
在一个实施方案中,为了当在恢复模式时解密恢复图像204,主机计算装置执行以下过程。当固件202检测主机计算装置202在恢复模式时,TPM 203首先获得固件202的启动固件测量205,并且验证固件202没有被损坏。一旦固件202已被验证,TPM 203将第一组证书(例如,解密密钥206)释放到所述固件202,其中所述第一组证书用于解密加密的恢复图像204。固件202获得解密密钥206,解密恢复图像204,并将恢复图像204加载到主机计算装置的存储器中。其后,TPM 203可获得加载在装置上的恢复图像204的启动固件测量(例如,通过散列与恢复图像相关联的存储器地址的值),并且验证恢复图像204没有被损坏。如果恢复图像204通过检查其启动固件测量来验证,那么TPM 203可以释放第二组证书207,所述第二组证书207可被恢复图像使用以便向在网络上的其他装置鉴别本身,启动在主机计算装置201上的各种其他服务,或者另外还原主机计算装置201的功能性。
同样地,在示出的实施方案中,TPM 203可存储(a)固件202的启动固件测量205和/或恢复图像204;(b)当主机计算装置在恢复模式时用于解密恢复图像204的一组证书207,以及(c)可被主机计算装置201和恢复图像204使用以便与其他装置通信,以及将功能性还原到主机计算装置201的第二组证书207。
图3示出根据各种实施方案的执行主机计算装置到远程计算装置的远程证明的TPM的实施例300。
在大规模事件之后,当尝试执行主机计算装置的恢复时,放弃某些安全访问控制可能是必要的,所述某些安全访问控制通常被实施以便使用恢复图像302启动主机计算装置301,并且以便允许恢复图像302与在网络上的远程装置(如远程主机计算装置305)通信。然而,如果恢复图像302在不可信的机器上加载,那么它可能给予所述不可信的机器其不应该有的特权。
在各种实施方案中,TPM 303包括启动固件测量和远程证明功能性,并且证明功能性可用于验证恢复图像被加载至其上的主机计算装置301。这可以确保任何未授权的主机不能够冒充为恢复图像并且潜在地获得对敏感证书或其他私人信息的访问。一旦TPM 303远程地证明主机计算装置301,远程主机计算装置305可开始将包含这样证书和其他敏感信息的消息发送到主机计算装置301。
在示出的实施方案中,为了执行主机计算装置301的远程证明,TPM 303可首先获得加载在主机计算装置301上的恢复图像302的启动固件测量304。这种恢复图像302可具有证书和/或可能够执行正常操作系统图像将不被允许执行的某些功能。当主机计算装置301在恢复模式下并且启动到恢复图像301中时,启动固件测量304(例如,在与恢复图像相关联的存储器中的值的散列测量)可被记录到TPM 303中。其后,当在网络上的任何主机(如远程主机计算装置305)想要与在恢复模式下的主机计算装置301通信时,远程计算装置305将查询TPM 303,请求主机计算装置301的远程证明。TPM 303将使用其远程证明特征来向远程主机计算装置305确认主机计算装置301实际上正运行恢复图像304。例如,为了执行远程证明,TPM 303可使用公钥基础设施(PKI)(例如,通过加密启动固件测量、对其签名等)来密封启动固件测量304,并且将密封的测量304发送到远程主机计算装置305。远程主机计算装置305可接收启动固件图像304,解密和/或验证测量的签名,并且然后验证测量304匹配有效的恢复图像的参照值。如果验证是成功的,那么远程主机计算装置305可以具有对主机计算装置301正运行恢复图像301的一定程度的确定性。一旦验证完成,远程主机计算装置305可开始将敏感信息发送到主机计算装置301。
应注意,尽管在图1-3中的每一个实施例被示出如利用可信平台模块(TPM),但是对于本文描述的所有实施方案这不是要求。在各种替代性实施方案中,可利用其他类型的安全存储装置来存储用于主机计算装置的证书(例如,密码密钥、数字证书等)。例如,在主机计算装置上的处理器可包含安全存储装置,如通过实施在处理器内专用于存储证书的一个或多个安全寄存器。
图4示出根据各种实施方案的可包含主机计算装置的多组织计算环境的服务提供商或其他操作人员的资源中心环境的实施例400。在示出的实施方案中,服务提供商(例如,云计算资源提供商)可以维持存储服务提供商的物理资源(例如,主机计算装置等)的一个或多个资源中心423(例如,数据中心、服务器群等)。这些物理资源可用于托管可以通过网络402(如互联网)提供到用户401的许多虚拟机实例或虚拟服务器。例如,当用户想要使用服务提供商的物理资源执行应用程序时,他或她可请求服务提供商将虚拟机器供给给用户,所述虚拟机器将用于部署和执行应用程序。随着对用户的应用程序的需求增长,用户可以请求供给更多虚拟机器来平衡加载,请求创建一个或多个虚拟专用网(VPN)等。对供给给用户(例如,客户)的所有这些资源的访问可通过使用如先前描述的由用户指定的一个或多个安全政策来控制。
在示出的实施例中,服务提供商的资源中心423可包括主机计算装置(406、407、408、408、410)中的一个或多个支架421、422,其中在特定支架上的每一个主机计算装置连接到架顶(TOR)开关(404、405)。这些TOR开关可以进一步连接到一个或多个其他开关(424、425),所述一个或多个其他开关(424、425)使得主机计算装置能够连接到网络。如本公开通篇使用的,网络可以是能够与彼此通信的装置的任何有线或无线网络,包括但不局限于,互联网或其他广域网(WAN)、蜂窝网、局域网(LAN)、存储区域网(SAN)、内联网、外联网等。资源中心可以包括资源的任何物理或逻辑分组,如数据中心、服务器群、内容分发网络(CDN)出现点(POP)等。
根据实施方案,每一个主机计算装置可以托管一个或多个虚拟机器实例(413、414、415、416、417、418、419、420),所述一个或多个虚拟机器实例已经被供给给服务提供商的客户以便代表那些客户执行各种应用程序和服务。每一个虚拟机器可以用其自己的操作系统(OS)来供给,所述操作系统(OS)包括内核、驱动器、过程管理等。
当客户希望获得虚拟机器实例时,客户可以首先将请求提交到服务供应商,表明他们想要使用的VM的类型。服务提供商可执行过程来供给虚拟机器实例,所述虚拟机器实例将托管在服务提供商的物理资源(例如,主机计算装置)上。虚拟机器实例随后可用于利用服务提供商的资源代表客户执行各种应用程序和服务。
如先前描述的,至少一些(或全部)的主机计算装置(406、407、408、409、410、411)可包括能够存储用于在发生故障的情况下恢复主机计算装置的证书的TPM。这些证书可用于使得主机计算装置能够向其他主机计算装置鉴别自己,启动各种服务以及另外安全地还原每一个主机计算装置的状态和功能性。
图5示出根据各种实施方案的用于将证书存储到可用于恢复主机计算装置的TPM上的示例性过程500。尽管这个附图可能以特定序列来描绘功能操作,但是过程不必要局限于示出的特定的顺序或操作。本领域技术人员将理解在这个附图或其他附图中描绘的各种操作可能被并行地改变、重新排列、执行或以各种方法来适配。此外,应理解,在不背离各种实施方案的范围的情况下,可以将某些操作或操作序列添加到过程或从过程中省略。此外,本文包含的过程示意图意图向本领域的普通技术人员展示工艺流程的概念,而不是指定代码执行的实际序列,所述实际序列可作为不同的流程或序列实施,为了性能优化,或以各种方式修改。
在操作501中,供给在主机计算装置上的TPM来存储一个或多个证书。TPM的供给可在主机计算装置的正常操作期间发生。替代地,TPM的供给可通过使主机计算装置下线以及供给TPM来执行。证书可包括密码密钥,所述密码密钥可用于在主机计算装置进入恢复模式时,解密在主机计算装置上的恢复图像。此外,存储在TPM上的证书可包括其他密码密钥、证书、和其他安全信息,所述其他安全信息可使得主机计算装置能够执行其功能性和状态的恢复。
在操作502中,启动主机计算装置。例如,可在电源故障或其他灾难性事件已经引起主机计算装置异常终止之后,执行主机计算装置的启动。在操作503中,在主机计算装置的启动期间,在主机计算装置上操作的固件(例如,BIOS)可分析一组条件,并且确定在最近过去(即,在主机计算装置的启动之前)有可能发生的故障。
在操作504中,在主机计算装置上操作的固件通过使用从主机计算装置上的TPM中检索的解密密钥来解密在主机计算装置上的恢复图像。如先前提到的,从TPM检索的解密密钥可用于解密另一个密钥(例如,加密的中间的密钥),并且另一个密钥用于解密恢复图像。恢复图像可以是系统图像,所述系统图像包含必要的功能性(如还原状态,与网络上的其他装置通信等)以便执行主机计算装置的恢复。在一个实施方案中,在将解密密钥提供到固件之前,TPM可首先检查在主机计算装置上操作的固件的启动固件图像,以便确保固件没有被损坏。如果固件被验证,那么TPM可将解密密钥提供到固件,并且固件可利用密钥来解密恢复图像。
在操作505中,一旦已经解密恢复图像,将恢复图像加载到主机计算装置的存储器中。一旦恢复图像已经被加载,TPM可通过访问密封在TPM中的一个或多个证书提供恢复图像。恢复图像可使用那些证书来执行主机计算装置的恢复。在一些实施方案中,在将证书提供到恢复图像之前,TPM可验证加载的恢复图像的启动固件测量,如先前描述的。
图6示出根据各种实施方案的用于通过TPM执行主机计算装置的远程证明的示例性过程600。在操作601中,将恢复图像加载到主机计算装置的存储器中,如上文描述的。在操作602中,TPM获得在主机计算装置上运行的恢复图像的启动固件测量。例如,通过散列与恢复图像相关联的存储器地址的值,可获得启动固件测量。如在操作603中示出的,然后将启动固件测量记录在TPM上。
在操作604中,TPM接收查询以便执行在主机计算装置上运行的恢复图像的证明。可从远程主机计算装置(如可信的主机、中央服务器等)接收查询。响应于请求,TPM可执行主机计算装置的证明。例如,如在操作605中示出的,可将存储在TPM中的启动固件测量传输到远程装置,以便用于主机计算装置的证明。在一些实施方案中,使用仅可使用私有密钥来解密的公共密钥来加密启动固件测量。在其他实施方案中,可使用私有密钥来签名启动固件测量,其中可通过使用公共密钥来验证启动固件测量的签名。在任何事件中,远程主机计算装置可接收启动固件测量,验证/解密所述启动固件测量并且使用启动固件测量来验证在主机计算装置上操作的恢复图像没有被损坏。
本公开的实施方案可鉴于以下条款来描述:
1.一种用于使用存储在安全存储装置中的信息执行主机恢复的计算机实施方法,所述方法包括:
在被配置有可执行指令的一个或多个计算机系统的控制下,
供给在主机计算装置上的可信平台模块(TPM)以存储包括密码密钥的一个或多个证书,所述主机计算装置包括加密的恢复图像,其中所述恢复图像能够使用所述密码密钥来解密;
重启所述主机计算装置;
基于在所述重启期间的一组条件,确定在重启所述主机计算装置之前故障有可能在所述主机计算装置上发生;
通过使用所述密码密钥解密在所述主机计算装置上的所述恢复图像;
将所述恢复图像加载到所述主机计算装置上;以及
通过访问存储在所述TPM中的所述一个或多个证书来提供在所述主机计算装置上运行的所述恢复图像,其中所述一个或多个证书用于开始在所述主机计算装置上的一个或多个服务。
2.根据条款1所述的计算机实施方法,其中供给在所述主机计算装置上的TPM还包括:
通过在所述主机计算装置上操作的固件,从远程主机计算装置接收所述一个或多个证书;以及
将来自在所述主机计算装置上操作的所述固件的所述一个或多个证书存储到所述TPM中。
3.根据条款1所述的计算机实施方法,其中通过访问存储在所述TPM中的所述一个或多个证书来提供在所述主机计算装置上运行的所述恢复图像还包括:
通过所述TPM获得所述加载恢复图像的启动固件测量;
通过所述TPM,基于所述获得的启动固件测量,验证已经加载所述恢复图像的正确版本;以及
响应于验证已经加载所述恢复图像的所述正确版本,通过访问所述一个或多个证书提供所述恢复图像。
4.一种计算机实施方法,其包括:
在被配置有可执行指令的一个或多个计算机系统的控制下,
在主机计算装置上的安全存储装置中存储一个或多个证书,所述主机计算装置包括能够利用存储在所述安全存储装置中的所述一个或多个证书的恢复图像;
重启所述主机计算装置;
在所述重启期间,确定在重启所述主机计算装置之前故障有可能在所述主机计算装置上发生;
将所述恢复图像加载到所述主机计算装置上;以及
通过访问存储在所述安全存储装置中的所述一个或多个证书来提供在所述主机计算装置上运行的所述恢复图像,其中所述一个或多个证书用于开始在所述主机计算装置上的一个或多个服务。
5.根据条款4所述的计算机实施方法,其中存储在所述安全存储装置中的所述证书还包括第一密码密钥,其能够用于解密第二密码密钥,所述第二密码密钥,其能够用于解密所述恢复图像。
6.根据条款4所述的计算机实施方法,其中存储在所述安全存储装置中的所述证书还包括密码密钥,其用于解密所述恢复图像。
7.根据条款4所述的计算机实施方法,其中由在所述主机计算装置上操作的固件执行确定故障有可能在所述主机计算装置上发生,所述固件被配置来分析一组条件,并且至少部分基于所述组的条件确定所述主机计算装置异常终止。
8.根据条款7所述的计算机实施方法,其中加载所述恢复图像还包括:
获得在所述主机计算装置上操作的所述固件的启动固件测量;
通过将所述启动固件测量与存储在所述安全存储装置中的参照固件测量相比较,验证在所述主机计算装置上操作的所述固件;
通过访问存储在所述安全存储装置中的密码密钥来提供所述固件,其中所述固件被配置来使用所述密码密钥解密所述恢复图像;以及
将所述解密的恢复图像加载到所述主机计算装置上。
9.根据条款4所述的计算机实施方法,其中通过访问存储在所述安全存储装置中的所述一个或多个证书来提供在所述主机计算装置上运行的所述恢复图像还包括:
获得所述加载恢复图像的启动固件测量;
基于所述获得的启动固件测量,验证已经加载所述恢复图像的正确版本;以及
响应于验证已经加载所述恢复图像的所述正确版本,通过访问所述一个或多个证书提供所述恢复图像。
10.根据条款4所述的计算机实施方法,其还包括:
所述主机计算装置从远程主机计算装置接收所述一个或多个证书;以及
将所述接收的一个或多个证书存储到所述安全存储装置中。
11.根据条款4所述的计算机实施方法,其中所述安全存储装置是在所述主机计算装置上的可信平台模块(TPM)。
12.根据条款4所述的计算机实施方法,其中所述主机计算装置托管为用户供给的一个或多个虚拟机器,所述一个或多个虚拟机器执行可由所述用户通过使用应用程序编程接口(API)在网络上访问的至少一个应用程序。
13.根据条款4所述的计算机实施方法,其中所述主机计算装置被配置来使用所述一个或多个证书以向在网络连接上的一个或多个远程装置鉴别所述主机计算装置。
14.一种计算装置,其包括:
安全存储装置;
至少一个处理器;以及
存储器,其包括指令,所述指令当由所述至少一个处理器执行时,促使所述计算装置:
将一个或多个证书存储在所述安全存储装置中;
启动所述计算装置;
基于在所述启动期间的一组条件,确定在启动所述计算装置之前故障有可能在所述计算装置上发生;
将所述恢复图像加载到所述计算装置的所述存储器中;以及
通过访问存储在所述安全存储装置中的所述一个或多个证书提供所述恢复图像,其中所述一个或多个证书用于开始在所述计算装置上的一个或多个服务。
15.根据条款14所述的计算装置,其中由在所述计算装置上操作的固件执行确定故障有可能在所述计算装置上发生,所述固件被配置来分析一组条件,并且至少部分基于所述组的条件确定所述计算装置异常终止。
16.根据条款15所述的计算装置,其中加载所述恢复图像还包括:
获得在所述计算装置上操作的所述固件的启动固件测量;
通过将所述启动固件测量与存储在所述安全存储装置中的参照固件测量相比较,验证在所述计算装置上操作的所述固件;
通过访问存储在所述安全存储装置中的密码密钥来提供所述固件,其中所述固件被配置来使用所述密码密钥解密所述恢复图像;以及
将所述解密的恢复图像加载到所述计算装置的所述存储器中。
17.根据条款14所述的计算装置,其中通过访问存储在所述安全存储装置中的所述一个或多个证书来提供在所述计算装置上运行的所述恢复图像还包括:
获得所述加载恢复图像的启动固件测量;
基于所述获得的启动固件测量,验证已经加载所述恢复图像的正确版本;以及
响应于验证已经加载所述恢复图像的所述正确版本,通过访问所述一个或多个证书来提供所述恢复图像。
18.根据条款14所述的计算装置,其中所述存储器还包括指令,所述指令由所述至少一个处理器执行以促使所述计算装置:
从远程主机计算装置接收所述一个或多个证书;以及
将所述接收的一个或多个证书存储到所述安全存储装置中。
19.根据条款14所述的计算装置,其中所述安全存储装置是在所述主机计算装置上的可信平台模块(TPM)。
20.一种非暂时性的计算机可读存储介质,其存储一个或多个指令序列,所述一个或多个指令序列由一个或多个处理器执行以促使所述一个或多个处理器:
在主机计算装置上的安全存储装置中存储一个或多个证书,所述主机计算装置包括能够利用存储在所述安全存储装置中的所述一个或多个证书的恢复图像;
重启所述主机计算装置;
在所述重启期间,确定在重启所述主机计算装置之前故障有可能在所述主机计算装置上发生;
将所述恢复图像加载到所述主机计算装置上;以及
通过访问存储在所述安全存储装置中的一个或多个证书来提供在所述主机计算装置上运行的所述恢复图像,其中所述一个或多个证书用于开始在所述主机计算装置上的一个或多个服务。
21.根据条款20所述的非暂时性的计算机可读存储介质,其中由在所述主机计算装置上操作的固件执行确定故障有可能在所述主机计算装置上发生,所述固件被配置来分析一组条件,并且至少部分基于所述组的条件确定所述主机计算装置异常终止。
22.根据条款19所述的非暂时性的计算机可读存储介质,其中加载所述恢复图像还包括:
获得在所述主机计算装置上操作的所述固件的启动固件测量;
通过将所述启动固件测量与存储在所述安全存储装置中的参照固件测量相比较,验证在所述主机计算装置上操作的所述固件;
通过访问存储在所述安全存储装置中的密码密钥提供所述固件,其中所述固件被配置来使用所述密码密钥解密所述恢复图像;以及
将所述解密的恢复图像加载到所述主机计算装置上。
23.根据条款20所述的非暂时性的计算机可读存储介质,其中通过访问存储在所述安全存储装置中的所述一个或多个证书来提供在所述主机计算装置上运行的所述恢复图像还包括:
获得所述加载恢复图像的启动固件测量;
基于所述获得的启动固件测量,验证已经加载所述恢复图像的正确版本;以及
响应于验证已经加载所述恢复图像的所述正确版本,通过访问所述一个或多个证书提供所述恢复图像。
24.根据条款20所述的非暂时性的计算机可读存储介质,其还包括指令,当所述指令由所述一个或多个处理器执行时,促使所述一个或多个处理器:
所述主机计算装置从远程主机计算装置接收所述一个或多个证书;并且
将所述接收的一个或多个证书存储到所述安全存储装置中。
25.一种用于验证主机计算装置的计算机实施方法,所述方法包括:
在被配置有可执行指令的一个或多个计算机系统的控制下,
在主机计算装置的启动时间期间分析一个或多个条件,以检测在启动时间之前异常故障有可能已经在所述主机计算装置上发生;
响应于检测所述异常故障有可能已经发生,将恢复图像加载到所述主机计算装置上,所述恢复图像被配置来还原在所述主机计算装置上的状态的至少一部分;
通过在所述主机计算装置上的可信平台模块(TPM),获得所述加载的恢复图像的启动固件测量;
将所述启动固件测量记录在所述主机计算装置上的所述TPM中;
接收从远程计算装置到所述TPM的请求,以执行加载到所述主机计算装置上的所述恢复图像的证明;
至少部分基于在所述TPM上记录的所述启动固件测量,向所述远程计算装置证明所述恢复图像。
26.根据条款25所述的计算机实施方法,其中证明所述恢复图像还包括:
由所述TPM通过至少一个密码密钥加密所述启动固件测量;以及
将所述加密的启动固件测量传输到所述远程计算装置,其中所述远程计算装置被配置来解密所述启动固件测量,并且使用所述启动固件测量以验证所述恢复图像的未损坏版本被加载到所述主机计算装置上。
27.根据条款25所述的计算机实施方法,其中响应于证明所述恢复图像,嵌入所述恢复图像中的一个或多个证书被所述远程计算装置信任。
28.一种计算机实施方法,其包括:
在被配置有可执行指令的一个或多个计算机系统的控制下,
在所述计算装置的启动时间期间,将恢复图像加载到所述计算装置上,所述恢复图像被配置来还原在所述计算装置上的状态的至少一部分;
获得所述加载的恢复图像的启动固件测量;
将所述启动固件测量记录在所述计算装置上的安全存储装置中;
从远程计算装置接收请求,以执行加载到所述计算装置上的所述恢复图像的证明;以及
至少部分基于所述启动固件测量,向所述远程计算装置证明所述加载的恢复图像。
29.根据条款28所述的计算机实施方法,其中证明加载在所述计算装置上的所述恢复图像还包括:
通过使用公钥基础设施(PKI),密封记录在所述安全存储装置中的所述启动固件测量;以及
将所述启动固件测量传输到所述远程计算装置,其中所述远程计算装置检验所述启动固件测量,以验证所述恢复图像的未损坏版本被加载到所述计算装置上。
30.根据条款28所述的计算机实施方法,其中通过将所述启动固件测量与存储的参照值比较,执行所述加载的恢复图像的所述证明,并验证所述启动固件测量匹配所述存储的参照值。
31.根据条款28所述的计算机实施方法,其中将所述恢复图像加载在所述计算装置上还包括:
在所述计算装置的启动时间期间,分析一个或多个条件;
至少部分基于所述一个或多个条件,检测促使所述计算装置异常终止的在所述计算装置上发生的故障;以及
响应于检测在所述计算装置上发生的所述故障,将所述恢复图像加载在所述计算装置上。
32.根据条款28所述的计算机实施方法,其中加密所述恢复图像,并且其中将所述恢复图像加载在所述计算装置上还包括以下各项中的至少一个:
通过使用存储在所述计算装置上的所述安全存储装置中的第一密码密钥,解密所述恢复图像;或
通过使用存储在所述安全存储装置中的所述第一密码密钥来解密第二密码密钥,并且通过使用所述第二密码密钥来解密所述恢复图像。
33.根据条款28所述的计算机实施方法,其中响应于证明所述恢复图像,嵌入所述恢复图像中的一个或多个证书被所述远程计算装置信任。
34.根据条款28所述的计算机实施方法,其中所述安全存储装置是在所述计算装置上的可信平台模块(TPM)。
35.根据条款28所述的计算机实施方法,其中所述计算装置还包括正常操作系统图像,并且其中在所述恢复图像已经完成还原在所述计算装置上的状态的所述至少一部分之后,重启所述计算装置,并且将所述正常操作系统图像加载到所述计算装置上。
36.根据条款28所述的计算机实施方法,其中所述计算装置托管为用户供给的一个或多个虚拟机器,所述一个或多个虚拟机器执行至少一个应用程序,所述至少一个应用程序可由所述用户通过使用应用程序编程接口(API)在网络上访问。
37.一种计算装置,其包括:
安全存储装置;
至少一个处理器;以及
存储器,其包括指令,所述指令当由所述至少一个处理器执行时,促使所述计算装置:
在所述计算装置的启动时间期间,将恢复图像加载到所述计算装置的所述存储器中,所述恢复图像被配置来还原在所述计算装置上的状态的至少一部分;
获得所述加载恢复图像的启动固件测量;
将所述启动固件测量记录在所述安全存储装置中;
从远程计算装置接收请求,以执行加载到所述计算装置上的所述恢复图像的证明;以及
至少部分基于存储在所述安全存储装置中的所述启动固件测量,向所述远程计算装置证明所述加载的恢复图像。
38.根据权利要求37所述的计算装置,其中证明加载在所述计算装置上的所述恢复图像还包括:
通过使用公钥基础设施(PKI),密封在所述安全存储装置中记录的所述启动固件测量;以及
将所述启动固件测量传输到所述远程计算装置,其中所述远程计算装置检验所述启动固件测量,以验证所述恢复图像的未损坏版本被加载到所述计算装置上。
39.根据条款37所述的计算装置,其中将所述恢复图像加载在所述计算装置上还包括:
在所述计算装置的启动时间期间,分析一个或多个条件;
至少部分基于所述一个或多个条件,检测促使所述计算装置异常终止的在所述计算装置上发生的故障;以及
响应于检测在所述计算装置上发生的所述故障,将所述恢复图像加载在所述计算装置上。
40.根据条款37所述的计算装置,其中加密所述恢复图像,并且其中将所述恢复图像加载在所述计算装置上还包括执行以下各项中的至少一个:
通过使用存储在所述计算装置上的所述安全存储装置中的第一密码密钥,解密所述恢复图像
通过使用存储在所述安全存储装置中的所述第一密码密钥来解密第二密码密钥,并且通过使用所述第二密码密钥来解密所述恢复图像。
41.根据条款37所述的计算装置,其中响应于证明所述恢复图像,嵌入所述恢复图像中的一个或多个证书被所述远程计算装置信任。
42.根据条款37所述的计算装置,其中所述安全存储装置是在所述计算装置上的可信平台模块(TPM)。
43.一种非暂时性的计算机可读存储介质,其存储一个或多个指令序列,所述一个或多个指令序列由一个或多个处理器执行以促使所述一个或多个处理器:
在所述计算装置的启动时间期间,将恢复图像加载到所述计算装置上,所述恢复图像被配置来还原在所述计算装置上的状态的至少一部分;
获得所述加载恢复图像的启动固件测量;
将所述启动固件测量记录在所述计算装置上的安全存储装置中;
从远程计算装置接收请求,以执行加载到所述计算装置上的所述恢复图像的证明;以及
至少基于部分所述启动固件测量,向所述远程计算装置证明所述加载的恢复图像。
44.根据条款43所述的非暂时性的计算机可读存储介质,其中证明在所述计算装置上的所述恢复图像还包括:
通过使用公钥基础设施(PKI),密封在所述安全存储装置中记录的所述启动固件测量;以及
将所述启动固件测量传输到所述远程计算装置,其中所述远程计算装置检验所述启动固件测量,以验证所述恢复图像的未损坏版本被加载在所述计算装置上。
45.根据条款43所述的非暂时性的计算机可读存储介质,其中将所述恢复图像加载在所述计算装置上还包括:
在所述计算装置的启动时间期间,分析一个或多个条件;
至少部分基于所述一个或多个条件,检测促使所述计算装置异常终止的发生在所述计算装置上的故障;以及
响应于检测在所述计算装置上发生的所述故障,将所述恢复图像加载在所述计算装置上。
46.根据条款43所述的非暂时性的计算机可读存储介质,其中加密所述恢复图像,并且其中将所述恢复图像加载在所述计算装置上还包括执行以下各项中的至少一个:
通过使用存储在所述计算装置上的所述安全存储装置中的第一密码密钥,解密所述恢复图像;
通过使用存储在所述安全存储装置中的所述第一密码密钥来解密第二密码密钥,并通过使用所述第二密码密钥来解密所述恢复图像。
47.根据条款43所述的非暂时性的计算机可读存储介质,其中响应于证明所述恢复图像,嵌入所述恢复图像中的一个或多个证书被所述远程计算装置信任。
48.根据条款43所述的非暂时性的计算机可读存储介质,其中所述计算装置还包括正常操作系统图像,并且其中在所述恢复图像已经完成还原在所述计算装置上的状态的所述至少一部分之后,重启所述计算装置,并且将所述正常操作系统图像加载到所述计算装置上。
图7示出示例性计算装置700的一组通用部件的逻辑布置。在这个实施例中,装置包括用于执行可存储在存储器装置或元件704中的指令的处理器702。如将对本领域一般技术人员显而易见的,装置可以包括许多类型的存储器、数据存储、或非暂时性的计算机可读存储介质,如用于由处理器702执行的程序指令的第一数据存储、用于图像或数据的独立存储、用于与其他装置共享信息的可移除的存储器等。装置典型地将包括某种类型的显示元件706,如触摸屏或液晶显示器(LCD),尽管如便携式媒体播放器的装置可通过其他方式(如通过音频扬声器)传达信息。如所论述,在许多实施方案中的装置将包括能够从用户中接收常规输入的至少一个输入元件708。这种常规输入例如可包括按钮、触摸板、触摸屏、方向盘、操纵杆、键盘、鼠标、按键或用户可以借助用来向装置输入命令的任何其他此类装置或元件。然而,在一些实施方案中,这种装置可能根本不包括任何按钮,并且可能仅通过视觉命令和音频命令的组合来控制,以使得用户可在无需与装置接触的情况下控制装置。在一些实施方案中,图7的计算装置700可以包括用于在各种网络上通信的一个或多个网络接口元件708,如Wi-Fi、蓝牙、RF、有线通信系统或无线通信系统。许多实施方案中的装置可与网络(如因特网)通信,并且可以能够与其他此类装置通信。
如所论述,可以根据所描述的实施方案在各种环境中实施不同的方法。例如,图8示出根据各种实施方案的用于实施各方面的环境800的实施例。如将了解,尽管出于解释目的使用基于网络的环境,但是可视情况使用不同的环境来实施各种实施方案。系统包括电子客户端装置802,所述电子客户端装置802可包括可操作以便通过适当的网络804发送和接收请求、消息或信息并且将信息传送回装置用户的任何适当装置。此类客户端装置的实施例包括个人计算机、手机、手持式消息传递装置、膝上计算机、机顶盒、个人数据助理、电子书阅读器等。网络可包括任何适当网络,所述适当网络包括内部网、互联网、蜂窝网、局域网或任何其他此类网络或其的组合。用于此类系统的组件可以至少部分地取决于所选择的网络和/或环境的类型。用于通过此类网络通信的协议和部件是众所周知的,并且本文将不再详细论述。通过网络的通信可以通过有线或无线连接及其组合来启用。在这个实施例中,网络包括互联网,因为环境包括用于接收请求且响应于所述请求而服务内容的Web服务器806,尽管对于其他网络,可使用服务类似目的的替代性装置,如对于本领域普通技术人员显而易见的。
所示出的环境包括至少一个应用程序服务器808和数据存储装置810。应当理解,可以存在可以链接起来或以其他方式来配置的若干应用程序服务器、层或其他元件、过程或部件,所述应用程序服务器、层或其他元件、过程或部件可交互来执行如从适当的数据存储器获取数据的任务。如本文所使用的,术语“数据存储器”指代能够存储、访问和检索数据的任何装置或装置组合,所述装置和装置组合可包括任何标准、分布式或集群式环境中的任何组合和任何数目的数据服务器、数据库、数据存储装置和数据存储介质。应用程序服务器可包括任何适当的硬件和软件,所述硬件和软件用于视执行客户端装置的一个或多个应用程序的方面的需要与数据存储器集成,并且处理应用程序的大多数的数据访问和业务逻辑。应用程序服务器提供与数据存储器协作的访问控制服务,并且能够产生将被传送到用户的如文本、图形、音频和/或视频的内容,在这个实施例中所述内容可能以HTML、XML或另一适当的结构化语言的形式通过Web服务器向用户提供服务。所有请求和响应的处理以及客户端装置802与应用程序服务器808之间的内容递送可由Web服务器806来处理。应当理解,Web服务器和应用程序服务器不是必要的以及仅仅是示例性组件,因为本文所讨论的结构化代码可在如本文其他地方所讨论的任何适当的装置或主机上执行。
数据存储器810可包括用于存储与特定方面相关的数据的若干单独的数据表、数据库或其他数据存储机构和介质。例如,所示出的数据存储器包括用于存储产生数据812和用户信息816的机构,所述机构可用来服务用于产生侧的内容。数据存储器还被示出为包括用于储存日志或会话数据814的机构。应当理解,可能存在可能需要存储在数据存储器中的许多其他方面(如页面图像信息和访问权信息),所述方面可视情况存储在上文列出的机构中的任何机构中或存储在数据存储器810中的附加机构中。数据存储器810可通过与其关联的逻辑来操作,以便从应用程序服务器808接收指令,并且响应于所述指令而获取、更新或以其他方式处理数据。在一个实施例中,用户可以提交针对某种类型的项目的搜索请求。在此状况下,数据存储器可能访问用户信息以便验证用户的身份,并且可访问目录详细信息以便获取有关那种类型的项目的信息。信息随后可能如以网页上的结果列表的形式返回给用户,所述用户能够通过用户装置802上的浏览器来查看所述结果列表。可在浏览器的专用页面或窗口中查看到感兴趣的特定项目的信息。
每个服务器通常将包括操作系统,所述操作系统提供用于所述服务器的一般管理和操作的可执行程序指令,并且每个服务器通常将包括存储指令的计算机可读介质,所述指令当由服务器的处理器执行时可允许服务器执行它的预期功能。操作系统的适当实施方式和服务器的一般功能性是已知的或可商购的,并且易于由本领域普通技术人员实施,尤其是根据本文中的公开来实施。
在一个实施方案中,环境是利用通过通信链路、使用一个或多个计算机网络或直接连接来互连的若干计算机系统和组件的分布式计算环境。然而,本领域普通技术人员将理解,这种系统可与具有比图8所示的部件更少或更多的部件的系统同样良好地操作。因此,图8中的系统800的描述本质上应视为说明性的,并且不限制本公开的范围。
如上文讨论的或建议的各个实施方案可在广泛范围的操作环境中实施,所述操作环境在一些状况下可包括一个或多个用户计算机、计算装置或可用于操作多个应用程序中的任何一个应用程序的处理装置。用户或客户端装置可包括多个通用个人计算机中的任何通用个人计算机,如运行标准操作系统的台式计算机或笔记本计算机,以及运行移动软件并且能够支持多个网络连接和发信协议的蜂窝装置、无线装置和手持装置。这种系统还可包括多个工作站,所述工作站运行各种可商购得的操作系统和用于如开发和数据库管理的目的的其他已知应用程序中的任一个。这些装置还可包括其他电子装置,如虚拟终端、薄型客户端、游戏系统和能够通过网络通信的其他装置。
大多数实施方案利用对于本领域技术人员来说是熟悉的至少一个网络,用于支持使用各种可商购的协议(如TCP/IP、OSI、FTP、UPnP、NFS、CIFS和AppleTalk)中的任一个的通信。例如,网络可为局域网、广域网、虚拟专用网、互联网、内部网、外联网、公共交换电话网、红外线网络、无线网络和上述网络的任何组合。
在利用Web服务器的实施方案中,Web服务器可运行各种服务器应用程序或中间层应用程序中的任何应用程序,包括HTTP服务器、FTP服务器、CGI服务器、数据服务器、Java服务器、和业务应用程序服务器。所述服务器还可以能够响应来自用户装置的请求而执行程序或脚本,如通过执行可以被实施作为以任何编程语言(如C、C#或C++)或任何脚本语言(如Perl、Python或TCL)及其组合编写的一个或多个脚本或程序的一个或多个网络应用程序。所述服务器还可以包括数据库服务器,包括但不限于可商购自 和的那些。
环境可包括如上文所讨论的各种各样数据存储器以及其他存储器和存储介质。这些可驻留在各种位置中,如在一个或多个计算机本地(和/或驻留在一个或多个计算机中)的存储介质上,或远离网络上的任何或所有的计算机。在一组特定的实施方案中,信息可以驻留在对本领域技术人员熟悉的存储区域网络(“SAN”)中。类似地,用于执行归属于计算机、服务器或其他网络装置的功能的任何必要文件可视情况本地存储和/或远程存储。在系统包括计算机化装置的情况下,每个此类装置可包括可通过总线电耦合的硬件元件,所述元件包括,例如,至少一个中央处理器(CPU)、至少一个输入装置(例如,鼠标、键盘、控制器、触摸屏或按键)和至少一个输出装置(例如,显示器装置、打印机或扬声器)。这种系统还可包括一个或多个存储装置,如磁盘驱动器、光存储装置和固态存储装置(如随机存取存储器(“RAM”)或只读存储器(“ROM”))、以及可移除的媒体装置、存储卡、闪存卡等。
此类装置还可包括计算机可读存储介质读取器、通信装置(例如,调制解调器、网络卡(无线或有线)、红外线通信装置等)、和工作存储器,如上文所描述的。计算机可读存储介质读取器可与计算机可读存储介质连接或被配置来接收计算机可读存储介质,从而表示远程、本地、固定和/或可移除的存储装置以及用于临时和/或更永久地包含、存储、传输和检索计算机可读信息的存储介质。系统和各种装置通常也将包括多个软件应用程序、模块、服务或位于至少一个工作存储器装置内的其他元件,包括操作系统和应用程序(如客户端应用程序或Web浏览器)。应当了解,替代性实施方案可具有与上述实施方案不同的众多变体。例如,定制硬件也可被使用,和/或特定元件可实施在硬件、软件(包括便携式软件,如小程序)或者硬件和软件中实施。此外,可以采用与其他计算装置(如网络输入/输出装置)的连接。
含有代码或部分代码的存储介质和计算机可读介质可包括本领域已知或已使用的任何适合介质,包括存储介质和通信介质,如(但不限于)用于存储和/或传输信息(如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中所实施的易失性和非易失性、可移动和不可移动介质,包括RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字通用光盘(DVD)或其他光学存储器、磁盒、磁带、磁盘存储器或其他磁性存储装置,或可用于存储所要信息且可供系统装置访问的任何其他介质。基于本文所提供的公开内容和教义,本技术领域普通技术人员将了解实施各个实施方案的其他方式和/或方法。
因此,应在说明性意义而不是限制性意义上理解本说明书和附图。然而,将显而易见的是:在不脱离如在权利要求书中阐述的本发明的更宽广精神和范围的情况下,可以对其做出各种修改和改变。
Claims (15)
1.一种计算机实施方法,其包括:
在多组织计算环境的主机计算装置上的安全存储装置中存储一个或多个证书,所述主机计算装置包括能够利用存储在所述安全存储装置中的所述一个或多个证书的恢复图像,所述多组织计算环境包括用于在所述多组织计算环境中执行任务的多个远程计算装置;
重启所述主机计算装置;
在所述重启期间,确定与所述主机计算装置的先前关闭相关的一组条件;
至少部分地基于多个远程计算的状态和该组条件确定在重启所述主机计算装置之前导致异常关闭的意想不到的故障有可能在所述主机计算装置上发生;
将所述恢复图像加载到所述主机计算装置上;以及
通过访问存储在所述安全存储装置中的所述一个或多个证书来提供在所述主机计算装置上运行的所述恢复图像,其中所述一个或多个证书用于开始在所述主机计算装置上的一个或多个服务。
2.根据权利要求1所述的计算机实施方法,其中存储在所述安全存储装置中的所述证书还包括第一密码密钥,其能够用于解密第二密码密钥,所述第二密码密钥,其能够用于解密所述恢复图像。
3.根据权利要求1所述的计算机实施方法,其中存储在所述安全存储装置中的所述证书还包括密码密钥,其用于解密所述恢复图像。
4.根据权利要求1所述的计算机实施方法,其中由在所述主机计算装置上操作的固件执行确定故障有可能在所述主机计算装置上发生,所述固件被配置来分析一组条件,并且至少部分基于该组条件确定所述主机计算装置异常终止。
5.根据权利要求4所述的计算机实施方法,其中加载所述恢复图像还包括:
获得在所述主机计算装置上操作的所述固件的启动固件测量;
通过将所述启动固件测量与存储在所述安全存储装置中的参照固件测量相比较,验证在所述主机计算装置上操作的所述固件;
通过访问存储在所述安全存储装置中的密码密钥来提供所述固件,其中所述固件被配置来使用所述密码密钥解密所述恢复图像;以及
将所述解密的恢复图像加载到所述主机计算装置上。
6.根据权利要求1所述的计算机实施方法,其中通过访问存储在所述安全存储装置中的所述一个或多个证书来提供在所述主机计算装置上运行的所述恢复图像还包括:
获得所述加载恢复图像的启动固件测量;
基于所述获得的启动固件测量,验证已经加载所述恢复图像的正确版本;以及
响应于验证已经加载所述恢复图像的所述正确版本,通过访问所述一个或多个证书提供所述恢复图像。
7.根据权利要求1所述的计算机实施方法,其还包括:
所述主机计算装置从远程主机计算装置接收所述一个或多个证书;以及
将所述接收的一个或多个证书存储到所述安全存储装置中。
8.根据权利要求1所述的计算机实施方法,其中所述安全存储装置是在所述主机计算装置上的可信平台模块(TPM)。
9.根据权利要求1所述的计算机实施方法,其中所述主机计算装置托管为用户供给的一个或多个虚拟机器,所述一个或多个虚拟机器执行可由所述用户通过使用应用程序编程接口(API)在网络上访问的至少一个应用程序。
10.根据权利要求1所述的计算机实施方法,其中所述主机计算装置被配置来使用所述一个或多个证书以向在网络连接上的一个或多个远程装置鉴别所述主机计算装置。
11.一种主机计算装置,所述主机计算装置在多组织计算环境中,所述多组织计算环境包括用于在所述多组织计算环境中执行任务的多个远程计算装置,所述主机计算装置包括:
安全存储装置;
至少一个处理器;以及
存储器,其包括指令,所述指令当由所述至少一个处理器执行时,促使所述主机计算装置:
将一个或多个证书存储在所述安全存储装置中;
重启所述主机计算装置;
在所述重启期间,确定与所述主机计算装置的先前关闭相关的一组条件;
至少部分地基于该组条件确定在重启所述主机计算装置之前导致异常关闭的意想不到的故障有可能在所述主机计算装置上发生;
将恢复图像加载到所述主机计算装置的所述存储器中;并且
通过访问存储在所述安全存储装置中的所述一个或多个证书提供所述恢复图像,其中所述一个或多个证书用于开始在所述主机计算装置上的一个或多个服务。
12.根据权利要求11所述的主机计算装置,其中由在所述主机计算装置上操作的固件执行确定故障有可能在所述主机计算装置上发生,所述固件被配置来分析一组条件,并且至少部分基于该组条件确定所述主机计算装置异常终止。
13.根据权利要求12所述的主机计算装置,其中加载所述恢复图像还包括:
获得在所述主机计算装置上操作的所述固件的启动固件测量;
通过将所述启动固件测量与存储在所述安全存储装置中的参照固件测量相比较,验证在所述主机计算装置上操作的所述固件;
通过访问存储在所述安全存储装置中的密码密钥来提供所述固件,其中所述固件被配置来使用所述密码密钥解密所述恢复图像;以及
将所述解密的恢复图像加载到所述主机计算装置的所述存储器中。
14.根据权利要求11所述的主机计算装置,其中通过访问存储在所述安全存储装置中的所述一个或多个证书提供在所述主机计算装置上运行的所述恢复图像还包括:
获得所述加载恢复图像的启动固件测量;
基于所述获得的启动固件测量,验证已经加载所述恢复图像的正确版本;以及
响应于验证已经加载所述恢复图像的所述正确版本,通过访问所述一个或多个证书提供所述恢复图像。
15.根据权利要求11所述的主机计算装置,其中所述存储器还包括指令,所述指令由所述至少一个处理器执行以促使所述主机计算装置:
从远程主机计算装置接收所述一个或多个证书;以及
将所述接收的一个或多个证书存储到所述安全存储装置中。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/862,923 US9594638B2 (en) | 2013-04-15 | 2013-04-15 | Host recovery using a secure store |
US13/863,296 US9619238B2 (en) | 2013-04-15 | 2013-04-15 | Remote attestation of host devices |
US13/863,296 | 2013-04-15 | ||
US13/862,923 | 2013-04-15 | ||
PCT/US2014/033882 WO2014172205A1 (en) | 2013-04-15 | 2014-04-11 | Host recovery using a secure store |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105324779A CN105324779A (zh) | 2016-02-10 |
CN105324779B true CN105324779B (zh) | 2018-08-28 |
Family
ID=51731771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480033784.6A Active CN105324779B (zh) | 2013-04-15 | 2014-04-11 | 使用安全存储装置的主机恢复 |
Country Status (7)
Country | Link |
---|---|
EP (2) | EP2987107B1 (zh) |
JP (1) | JP6130050B2 (zh) |
CN (1) | CN105324779B (zh) |
AU (1) | AU2014254276B2 (zh) |
CA (1) | CA2909436C (zh) |
SG (1) | SG11201508500VA (zh) |
WO (1) | WO2014172205A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9619238B2 (en) | 2013-04-15 | 2017-04-11 | Amazon Technologies, Inc. | Remote attestation of host devices |
US9594638B2 (en) | 2013-04-15 | 2017-03-14 | Amazon Technologies, Inc. | Host recovery using a secure store |
CN108306740B (zh) * | 2018-01-22 | 2020-07-31 | 华中科技大学 | 一种Intel SGX状态一致保护方法和系统 |
CN110188530A (zh) * | 2019-05-30 | 2019-08-30 | 苏州浪潮智能科技有限公司 | 一种安全认证方法、装置、设备及可读存储介质 |
US20220179960A1 (en) * | 2019-06-10 | 2022-06-09 | Google Llc | Secure Verification of Firmware |
CN110308917B (zh) * | 2019-06-26 | 2024-02-23 | 深圳前海微众银行股份有限公司 | 小程序发布方法、装置、设备及计算机存储介质 |
US11409880B2 (en) * | 2019-07-11 | 2022-08-09 | International Business Machines Corporation | Blackbox security for containers |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100389206B1 (ko) * | 2001-04-25 | 2003-06-27 | 주식회사 성진씨앤씨 | 컴퓨터 운영 시스템 보호 방법 및 장치 |
US7017085B2 (en) * | 2002-05-30 | 2006-03-21 | Capital One Financial Corporation | Systems and methods for remote tracking of reboot status |
US7415115B2 (en) * | 2003-05-14 | 2008-08-19 | Broadcom Corporation | Method and system for disaster recovery of data from a storage device |
US7725703B2 (en) * | 2005-01-07 | 2010-05-25 | Microsoft Corporation | Systems and methods for securely booting a computer with a trusted processing module |
US7506380B2 (en) | 2005-01-14 | 2009-03-17 | Microsoft Corporation | Systems and methods for boot recovery in a secure boot process on a computer with a hardware security module |
US8239688B2 (en) * | 2007-01-07 | 2012-08-07 | Apple Inc. | Securely recovering a computing device |
US8291480B2 (en) * | 2007-01-07 | 2012-10-16 | Apple Inc. | Trusting an unverified code image in a computing device |
KR101209252B1 (ko) * | 2007-02-02 | 2012-12-06 | 삼성전자주식회사 | 전자기기의 부팅 방법 및 부팅 인증 방법 |
JP4903071B2 (ja) * | 2007-03-15 | 2012-03-21 | 株式会社リコー | 情報処理装置、ソフトウェア更新方法及び画像処理装置 |
JP5213428B2 (ja) * | 2007-12-13 | 2013-06-19 | キヤノン株式会社 | 画像形成装置監視システム、画像形成装置、ファームウェア変更方法、及びプログラム |
US8250379B2 (en) * | 2009-10-13 | 2012-08-21 | Microsoft Corporation | Secure storage of temporary secrets |
JP5337675B2 (ja) * | 2009-11-26 | 2013-11-06 | 株式会社日立製作所 | 端末管理システム及び方法 |
WO2011116459A1 (en) * | 2010-03-25 | 2011-09-29 | Enomaly Inc. | System and method for secure cloud computing |
US8745386B2 (en) * | 2010-06-21 | 2014-06-03 | Microsoft Corporation | Single-use authentication methods for accessing encrypted data |
JP2012009938A (ja) * | 2010-06-22 | 2012-01-12 | Toshiba Tec Corp | 情報処理装置及びプログラム |
US8732527B2 (en) * | 2011-08-16 | 2014-05-20 | Google Inc. | Secure recovery apparatus and method |
-
2014
- 2014-04-11 SG SG11201508500VA patent/SG11201508500VA/en unknown
- 2014-04-11 WO PCT/US2014/033882 patent/WO2014172205A1/en active Application Filing
- 2014-04-11 EP EP14785721.3A patent/EP2987107B1/en active Active
- 2014-04-11 CA CA2909436A patent/CA2909436C/en active Active
- 2014-04-11 JP JP2016508981A patent/JP6130050B2/ja active Active
- 2014-04-11 CN CN201480033784.6A patent/CN105324779B/zh active Active
- 2014-04-11 EP EP19156042.4A patent/EP3499397B1/en active Active
- 2014-04-11 AU AU2014254276A patent/AU2014254276B2/en active Active
Non-Patent Citations (1)
Title |
---|
CloudVisor:Retrofitting Protection of Virtual Machines in Muli-tenant Cloud with Nested Virtualization;FENGZHE ZHANG ET AL;《ACM》;20111023;正文第207页第1栏,第211页第1栏 * |
Also Published As
Publication number | Publication date |
---|---|
AU2014254276A1 (en) | 2015-11-26 |
EP2987107A4 (en) | 2016-11-16 |
WO2014172205A1 (en) | 2014-10-23 |
CA2909436C (en) | 2019-07-16 |
EP2987107B1 (en) | 2019-03-27 |
JP2016519827A (ja) | 2016-07-07 |
CN105324779A (zh) | 2016-02-10 |
CA2909436A1 (en) | 2014-10-23 |
AU2014254276B2 (en) | 2016-11-17 |
EP3499397B1 (en) | 2022-07-27 |
EP3499397A1 (en) | 2019-06-19 |
EP2987107A1 (en) | 2016-02-24 |
JP6130050B2 (ja) | 2017-05-17 |
SG11201508500VA (en) | 2015-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10810015B2 (en) | Remote attestation of host devices | |
US11228449B2 (en) | Secure interface for invoking privileged operations | |
CN105324779B (zh) | 使用安全存储装置的主机恢复 | |
JP6687641B2 (ja) | サーバまたは他の装置からのエントロピーに基づくクライアント装置の認証 | |
US9576155B2 (en) | Trusted computing host | |
US9594638B2 (en) | Host recovery using a secure store | |
US9509692B2 (en) | Secured access to resources using a proxy | |
US8572692B2 (en) | Method and system for a platform-based trust verifying service for multi-party verification | |
AU2014209471B2 (en) | Securing results of privileged computing operations | |
CA2898908C (en) | Secure virtual machine migration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |