CN109992972A - 一种云环境内信任链的建立方法及系统 - Google Patents
一种云环境内信任链的建立方法及系统 Download PDFInfo
- Publication number
- CN109992972A CN109992972A CN201910285205.1A CN201910285205A CN109992972A CN 109992972 A CN109992972 A CN 109992972A CN 201910285205 A CN201910285205 A CN 201910285205A CN 109992972 A CN109992972 A CN 109992972A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- host
- trust chain
- tpcm
- virtual
- 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.)
- Granted
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
-
- 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/572—Secure firmware programming, e.g. of basic input output system [BIOS]
Abstract
本发明公开了一种云环境内信任链的建立方法及系统,方法包括:S1、以TPCM为起始点,建立宿主机的信任链;S2、当宿主机上运行的虚拟机启动时,通过虚拟机监视器调用虚拟机对应的虚拟TPCM作为虚拟机的可信根,建立虚拟机的信任链;S3、将宿主机的信任链与每个虚拟机的信任链进行连接。本发明所提供的方法及系统,采用“一条主链多条分链”的设计思想,保证基于TPCM的信任关系能够被传递到宿主机上每台虚拟机内部的应用程序,为云计算环境提供了基于TPCM和虚拟TPCM的可信保障。
Description
技术领域
本发明涉及虚拟云安全领域,具体涉及一种云环境内信任链的建立方法及系统。
背景技术
目前,针对现有云安全方案存在的一系列安全方面的问题,通过可信计算技术加强云环境安全机制的可信性,保障云安全机制的可靠运行,已经成为国内外云产品开发商、云安全开发商和云架构规范制定者的共识。可信计算是近二十年来兴起的一种新型安全技术,其核心思想是:从物理上安全的可信根出发,在计算环境中构筑从可信根到应用的完整可信链条,以向系统中的安全机制提供可信度量、可信存储、可信报告等可信支撑功能,支持安全机制的可信运行。对云环境的物理机节点而言,信任根一般使用镶嵌在系统主板上,有物理保护功能的安全芯片。信任链的传递则是以密码技术为基础,以信任根为可信源头,可信主板为平台,可信基础支撑软件为核心,实现信任链从信任根到整个网络环境的扩展。云环境的物理机节点具备完整的信任链,而对云环境的虚拟机节点而言,依然无法保障虚拟机环境的可信性,如何将物理机节点的信任链传递到虚拟机节点内部,以保障虚拟机环境的可信性是目前需要解决的技术问题。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种云环境内信任链的建立方法及系统,可以保证基于TPCM的信任关系被传递到宿主机上每台虚拟机内部的应用程序,为虚拟机的深度远程证明过程建立了可信基础,进而为云计算环境提供了基于TPCM和虚拟TPCM的可信保障。
为实现上述目的,本发明采用的技术方案如下:
一种云环境内信任链的建立方法,包括:
S1、以TPCM为起始点,建立宿主机的信任链;
S2、当所述宿主机上运行的虚拟机启动时,通过虚拟机监视器调用所述虚拟机对应的虚拟TPCM作为所述虚拟机的可信根,建立所述虚拟机的信任链;
S3、将所述宿主机的信任链与每个虚拟机的信任链进行连接。
进一步,如上所述的一种云环境内信任链的建立方法,步骤S1包括:
S11、在所述宿主机加电后,所述宿主机的BIOS启动之前,所述TPCM对所述BIOS的代码及其配置信息进行度量,度量通过后将控制权转移给所述BIOS;
S12、当控制权转移给所述BIOS之后,执行所述BIOS,所述BIOS对所述宿主机的OSLoader代码进行度量,度量通过后将控制权转移给所述宿主机的OSLoader;
S13、当控制权转移给所述宿主机的OSLoader代码之后,执行所述宿主机的OSLoader代码,所述宿主机的OSLoader代码对所述宿主机的操作系统内核进行度量,度量通过后将控制权转移给所述宿主机的操作系统;
S14、当控制权转移给所述宿主机的操作系统之后,执行所述宿主机的操作系统,所述宿主机的操作系统对所述宿主机的可信软件基进行度量,度量通过后将控制权转移给所述宿主机的可信软件基;
S15、当控制权转移给所述宿主机的可信软件基之后,所述宿主机的可信软件基对所述宿主机的后续组件、应用及各种类型的可执行文件进行度量,所述宿主机的信任链建立完成。
进一步,如上所述的一种云环境内信任链的建立方法,步骤S2包括:
S21、当虚拟机启动时,通过虚拟机监视器调用所述虚拟机对应的虚拟TPCM,所述虚拟TPCM对所述虚拟机的BIOS的代码和内存区域进行度量,度量通过后将控制权转移给所述虚拟机的BIOS;
S22、当控制权转移给所述虚拟机的BIOS之后,执行所述虚拟机的BIOS,所述虚拟机的BIOS对所述虚拟机的OSLoader代码进行度量,度量通过后将控制权转移给所述虚拟机的OSLoader;
S23、当控制权转移给所述虚拟机的OSLoader代码之后,执行所述虚拟机的OSLoader代码,所述虚拟机的OSLoader代码对所述虚拟机的操作系统进行度量,度量通过后将控制权转移给所述虚拟机的操作系统;
S24、当控制权转移给所述虚拟机的操作系统之后,执行所述虚拟机的操作系统,所述虚拟机的操作系统对所述虚拟机的可信软件基进行度量,度量通过后将控制权转移给所述虚拟机的可信软件基;
S25、当控制权转移给所述虚拟机的可信软件基之后,所述虚拟机的可信软件基对所述虚拟机的后续组件、应用及各种类型的可执行文件进行度量,所述虚拟机的信任链建立完成。
进一步,如上所述的一种云环境内信任链的建立方法,步骤S3包括:
S31、在虚拟机启动之前,所述宿主机的可信软件基对所述虚拟机监视器的代码进行度量,度量通过后将控制权转移给所述虚拟机监视器;
S32、当控制权转移给所述虚拟机监视器之后,执行所述虚拟机监视器,所述虚拟机监视器对所述虚拟机对应的虚拟TPCM的代码及其配置信息进行度量,度量通过后将控制权转移给所述虚拟TPCM;
S33、当控制权转移给所述虚拟TPCM之后,执行所述虚拟TPCM,所述宿主机的信任链与所述虚拟机的信任链连接完成。
进一步,如上所述的一种云环境内信任链的建立方法,步骤S2中,采用以下任一方式建立所述虚拟机的信任链:
一个虚拟机启动且建立信任链;
多个虚拟机依次启动且依次建立信任链;
多个虚拟机同时启动且同时建立信任链。
进一步,如上所述的一种云环境内信任链的建立方法,步骤S1之前,还包括:
通过所述虚拟机监视器给每个虚拟机提供一个虚拟TPCM作为虚拟机的可信根,或者通过所述虚拟机监视器调用所述TPCM中已经虚拟好的虚拟TPCM作为虚拟机的可信根。
一种云环境内信任链的建立系统,包括:
宿主机信任链建立模块,用于以TPCM为起始点,建立宿主机的信任链;
虚拟机信任链建立模块,用于当所述宿主机上运行的虚拟机启动时,通过虚拟机监视器调用所述虚拟机对应的虚拟TPCM作为所述虚拟机的可信根,建立所述虚拟机的信任链;
信任链连接模块,用于将所述宿主机的信任链与每个虚拟机的信任链进行连接。
进一步,如上所述的一种云环境内信任链的建立方法,所述宿主机信任链建立模块具体用于:
在所述宿主机加电后,所述宿主机的BIOS启动之前,所述TPCM对所述BIOS的代码及其配置信息进行度量,度量通过后将控制权转移给所述BIOS;
当控制权转移给所述BIOS之后,执行所述BIOS,所述BIOS对所述宿主机的OSLoader代码进行度量,度量通过后将控制权转移给所述宿主机的OSLoader;
当控制权转移给所述宿主机的OSLoader代码之后,执行所述宿主机的OSLoader代码,所述宿主机的OSLoader代码对所述宿主机的操作系统内核进行度量,度量通过后将控制权转移给所述宿主机的操作系统;
当控制权转移给所述宿主机的操作系统之后,执行所述宿主机的操作系统,所述宿主机的操作系统对所述宿主机的可信软件基进行度量,度量通过后将控制权转移给所述宿主机的可信软件基;
当控制权转移给所述宿主机的可信软件基之后,所述宿主机的可信软件基对所述宿主机的后续组件、应用及各种类型的可执行文件进行度量,所述宿主机的信任链建立完成。
一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一种云环境内信任链的建立方法。
一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一种云环境内信任链的建立方法。
本发明的有益效果在于:本发明所提供的方法及系统,采用“一条主链多条分链”的设计思想,保证基于TPCM的信任关系能够被传递到宿主机上每台虚拟机内部的应用程序,为虚拟机的深度远程证明过程建立了可信基础,进而为云计算环境提供了基于TPCM和虚拟TPCM的可信保障。
附图说明
图1为本发明实施例一中提供的一种云环境内信任链的建立方法的流程示意图;
图2为本发明实施例二中提供的宿主机信任链的建立方法的流程示意图;
图3为本发明实施例二中提供的宿主机信任链的建立方法的框架示意图;
图4为本发明实施例三中提供的虚拟机信任链的建立方法的流程示意图;
图5为本发明实施例四中提供的宿主机信任链与虚拟机信任链的连接方法的流程示意图;
图6为本发明实施例四中提供的一种云环境内信任链的建立方法的整体框架示意图;
图7为本发明实施例四中提供的另一种云环境内信任链的建立方法的整体框架示意图;
图8为本发明实施例五中提供的一种云环境内信任链的建立系统的结构示意图。
具体实施方式
下面结合说明书附图与具体实施方式对本发明做进一步的详细说明。
术语解释
可信软件基(Trusted Software Base,TSB),也即可信基础软件,软件中,是为计算平台的可信性提供支持的所有软件元素的集合。宿主基础软件是指系统中实现常规功能部分软件的总称,大致相当于传统基础软件。
可信平台控制模块(trusted platform control module,TPCM)是一种集成在可信计算平台中,用于建立和保障信任源点的硬件核心模块,为可信计算提供完整性度量、安全存储、可信报告以及密码服务等功能。
VTPCM,即Virtual TPCM,虚拟TPCM。
虚拟机监控器(Virtual Machine Monitor,VMM),它包括规划、部署、管理和优化虚拟基础结构等端到端功能。
实施例一
下面对本发明提出的一种云环境内信任链的建立方法的流程进行描述。
如图1所示,一种云环境内信任链的建立方法,包括:
S1、以TPCM为起始点,建立宿主机的信任链;
S2、当宿主机上运行的虚拟机启动时,通过虚拟机监视器调用虚拟机对应的虚拟TPCM作为虚拟机的可信根,建立虚拟机的信任链;
采用以下任一方式建立虚拟机的信任链:
一个虚拟机启动且建立信任链;
多个虚拟机依次启动且依次建立信任链;
多个虚拟机同时启动且同时建立信任链。
步骤S1之前,还包括:
通过虚拟机监视器给每个虚拟机提供一个虚拟TPCM作为虚拟机的可信根,或者通过虚拟机监视器调用所述TPCM中已经虚拟好的虚拟TPCM作为虚拟机的可信根。
方案一:在虚拟机监视器(VMM)内为每个虚拟机虚拟出虚拟机的TPCM,即虚拟TPCM;
方案二:利用TPCM本身对虚拟技术的支持的特性,如SR-IOV技术,就允许一个物理PCIe设备把自身虚拟为多个虚拟PCIe设备。
通过虚拟化技术,构建VTPCM(虚拟TPCM)作为虚拟机的可信根。VTPCM以物理TPCM提供的保障为基础。与物理TPCM类似,VTPCM主动度量虚拟机启动过程的部件,逐步建立虚拟机可信的信任链,直到可信基础软件启动,这样信任链传递到虚拟机内部;VTPCM所有涉及虚拟机计算的密码部分,VTPCM都转发给物理TPCM执行。与物理计算环境类似,虚拟机计算环境可信由虚拟机内部可信基础软件利用VTPCM的支撑进行保护。虚拟机内部可信基础软件与单节点完全一样,VTPCM对可信基础软件而言是真实的TPCM。需要说明的是,给虚拟机分配VTPCM是在系统第一次正式运行、初始化的时候完成的。
对于通过TPCM本身虚拟技术的实现方案,在宿主机系统启动后启动虚拟机监视器、再启动虚拟机,该虚拟机的TPCM也是该TPCM。
本发明支持完全虚拟化技术(如IBM CP/CMS,VirtualBox,VMware Workstation),也支持硬件辅助虚拟化技术(VMware Workstation,Xen,KVM)、准虚拟化/超虚拟化技术和操作系统级虚拟化(如Parallels Virtuozzo Containers,Unix-like系统上的chroot,Solaris上的Zone)以及应用容器引擎(Docker)。
S3、将宿主机的信任链与每个虚拟机的信任链进行连接。
通过一级度量一级、一级验证一级的方式建立的一种具有上下层次的信任关系,即信任链。TPCM是信任链建立的基础,首先以TPCM为起始点,通过逐级度量的方法自下而上地建立宿主机的信任链。然后通过对TPCM进行虚拟化,以虚拟化的TPCM(虚拟TPCM)作为虚拟机的起始点,通过逐级度量的方法自下而上地建立虚拟机的信任链。最后在宿主机信任链上添加对于虚拟机监视器(如VMware Workstation,Xen,KVM)和虚拟TPCM的信任传递机制,并以新添加的信任机制为锚点连接两条信任链,最终VMM和虚拟TPCM将宿主机信任链上的信任关系通过虚拟机的信任链传递到虚拟机的内部。信任链由宿主机的物理TPCM传递到虚拟机监视器,再由虚拟机监视器传递到每个虚拟机。
本发明采用“一条主链多条分链”的设计思想,保证基于TPCM的信任关系能够被传递到宿主机上每台虚拟机内部的应用程序,为虚拟机的深度远程证明过程建立了可信基础,进而为云计算环境提供了基于TPCM和虚拟TPCM的可信保障。
实施例二
下面对宿主机信任链的建立过程进行详细描述。
如图2所示,图1中的步骤S1包括:
S11、在宿主机加电后,宿主机的BIOS启动之前,TPCM对BIOS的代码及其配置信息进行度量,度量通过后将控制权转移给BIOS;在此步骤中,可以将BIOS替换成“BMC和BIOS”、PNOR或UBOOT。
S12、当控制权转移给BIOS之后,执行BIOS,BIOS对宿主机的OSLoader代码进行度量,度量通过后将控制权转移给宿主机的OSLoader;
S13、当控制权转移给宿主机的OSLoader代码之后,执行宿主机的OSLoader代码,宿主机的OSLoader代码对宿主机的操作系统内核进行度量,度量通过后将控制权转移给宿主机的操作系统;
OSLoader程序还用于装载操作系统内核文件和驱动程序。宿主机的OSLoader代码至少包括:MBR代码、GRUB stage1代码、GRUB stage2代码等。
S14、当控制权转移给宿主机的操作系统之后,执行宿主机的操作系统,宿主机的操作系统对宿主机的可信软件基进行度量,度量通过后将控制权转移给宿主机的可信软件基;
S15、当控制权转移给宿主机的可信软件基之后,宿主机的可信软件基对宿主机的后续组件、应用及各种类型的可执行文件进行度量,宿主机的信任链建立完成。
如图3所示,宿主机信任链的建立,以TPCM为可信度量根,TPCM作为信任链的起始点,并且在宿主机加电后且在BIOS固件启动之前启动,按照宿主机启动所需要启动的各组件的启动顺序,依次度量、启动各组件并将控制权向下转移,从而使得信任链依次传递下去,直至宿主机启动所需要启动的各组件均度量、启动完毕,至此宿主机信任链建立完成。
需要说明的是,云环境的每个物理节点(宿主机),包括计算节点(为虚拟机提供计算能力的节点)和非计算节点,都配置TPCM物理芯片。TPCM芯片一般镶嵌在系统主板上,并具有物理保护功能。通过主板电路设计,物理芯片在系统启动时,主动度量系统启动代码的初始部分(一般是BIOS固件),再由度量过的启动代码逐级度量下一级启动代码,直到操作系统和可信软件基启动。至此完成并通过信任链建立。之后可信软件基以TPCM芯片的为支撑,保障物理节点和物理网络环境的可信。可信软件基和物理TPCM芯片协同工作,保障了物理计算环境可信,并可以根据策略对云环境各种服务进行度量,保障他们在启动之前和运行过程中始终处于可信状态,并可以让外部系统和管理平台监控运行环境的可信状态。
实施例三
下面对虚拟机信任链的建立过程进行详细描述。
如图4所示,图1中的步骤S2包括:
S21、当虚拟机启动时,通过虚拟机监视器调用虚拟机对应的虚拟TPCM,虚拟TPCM对虚拟机的BIOS的代码和内存区域进行度量,度量通过后将控制权转移给虚拟机的BIOS;虚拟机的BIOS,可以是,比如SEABIOS和BIOS;
S22、当控制权转移给虚拟机的BIOS之后,执行虚拟机的BIOS,虚拟机的BIOS对虚拟机的OSLoader代码进行度量,度量通过后将控制权转移给虚拟机的OSLoader;
S23、当控制权转移给虚拟机的OSLoader代码之后,执行虚拟机的OSLoader代码,虚拟机的OSLoader代码对虚拟机的操作系统进行度量,度量通过后将控制权转移给虚拟机的操作系统;
S24、当控制权转移给虚拟机的操作系统之后,执行虚拟机的操作系统,虚拟机的操作系统对虚拟机的可信软件基进行度量,度量通过后将控制权转移给虚拟机的可信软件基;
S25、当控制权转移给虚拟机的可信软件基之后,虚拟机的可信软件基对虚拟机的后续组件、应用及各种类型的可执行文件进行度量,虚拟机的信任链建立完成。
通过虚拟化技术,构建VTPCM作为虚拟机的可信根。VTPCM以物理TPCM(硬件TPCM)提供的保障为基础。与物理TPCM类似,VTPCM主动度量虚拟机启动过程的部件,逐步建立虚拟机可信的信任链,直到可信软件基启动,这样信任链传递到虚拟机内部;VTPCM所有涉及虚拟机计算的密码部分,VTPCM都转发给物理TPCM(硬件TPCM)执行。与物理计算环境(宿主机计算环境)类似,虚拟机计算环境可信由虚拟机内部可信软件基利用VTPCM的支撑进行保护。虚拟机内部可信软件基与单节点完全一样,VTPCM对可信软件基而言是真实的TPCM。虚拟机内部可信软件基主动监控截获系统调用行为,解释策略库的度量策略,通过支撑机制交由VTPCM执行。
VTPCM是VMM层上对其硬件TPCM的一种模拟,但是VTPCM中关于秘钥相关的操作必须被剖离出来,并将这些操作放到硬件TPCM中执行。本发明以VTPCM为虚拟机信任链的起始点,通过逐级度量的方法向虚拟机内部延伸信任链。当虚拟机启动的时候,VMM首先启动VTPCM,然后VTPCM对虚拟机接下来要执行的SEABIOS的代码、内存区域进行度量、拓展PCR、验证、日志记录、控制权转移;当控制权被转移给BIOS后的执行流程和宿主机上信任链的建立是一致的。
需要说明的是,BIOS程序是计算机上电后,CPU第一个开始运行的程序,用于完成对系统硬件的初始化,并且为启动操作系统做好准备。SEABIOS也像正常的BIOS一样,在虚拟机上电的时候,会被加载到地址空间0xFFFFFFF0处,并且该处是一条跳转指令,虚拟机的虚拟CPU会去执行SEABIOS的代码,完成虚拟硬件的初始化,中断服务函数的设置,ACPI表、SMBIOS表等的创建,最后引导启动操作系统。
实施例四
下面对宿主机信任链与虚拟机信任链的连接过程进行详细描述。
如图5所示,图1中的步骤S3包括:
S31、在虚拟机启动之前,宿主机的可信软件基对虚拟机监视器的代码进行度量,度量通过后将控制权转移给虚拟机监视器;
S32、当控制权转移给虚拟机监视器之后,执行虚拟机监视器,虚拟机监视器对虚拟机对应的虚拟TPCM的代码及其配置信息进行度量,度量通过后将控制权转移给虚拟TPCM;
S33、当控制权转移给虚拟TPCM之后,执行虚拟TPCM,宿主机的信任链与虚拟机的信任链连接完成。
从图1可知,在宿主机的信任链上添加对于虚拟机监视器和VTPCM(虚拟TPCM)的信任传递机制,并以信任传递机制为锚点连接宿主机的信任链与至少一个虚拟机的信任链。结合实施例一、实施例二、实施例三、实施例四可知,实施例一中的信任传递机制为可信软件基-虚拟机监视器-VTPCM这一段的度量过程,通过信任传递机制将宿主机信任链与虚拟机信任链连接起来,将宿主机的信任关系传递到虚拟机内部。连接完成后,整个系统的信任链传递过程为:硬件TPCM-宿主机的BIOS-宿主机的OSLoader-宿主机的操作系统-宿主机的TSB-VMM-VTPCM-虚拟机的BIOS-虚拟机的OSLoader-虚拟机的操作系统-虚拟机的TSB,虚拟机所使用的VTPCM由VMM自身提供的情况如图6所示,虚拟机所使用的VTPCM由VMM从TPCM中已经虚拟好的VTPCM中调用的情况如图7所示。
需要说明的是,云计算环境下,一台宿主机上可以运行多个虚拟机,宿主机和虚拟机分别有一个信任链,于是存在着宿主机信任链只有一条、虚拟机信任链多条的状态。本发明使用“一条主链多条分链”的设计思想,通过在宿主机上对于VMM和VTPCM的度量操作建立一个锚点,在逻辑上把所有的虚拟机对应的信任链的起始点连接到宿主机信任链的某个位置上,将宿主机的信任关系传递到虚拟机内部。
具体地,宿主机通过VMM来建立并启动VTPCM,在宿主机信任链建立的基础上,在虚拟机启动之前对创建虚拟机的各个软件及其配置进行度量、拓展PCR、验证、日志记录、控制权转移,度量对象主要包括:KVM内核模块、QEMU进程、虚拟机配置文件、虚拟机依赖的其他文件和信息等。当VMM得到控制权之后,VMM得以执行,VMM对于接下来要启动的VTPCM代码和配置进行度量、拓展PCR、验证、日志记录、控制权转移。当VTPCM得到控制权之后,VTPCM得以执行,于是继续上述虚拟机启动时其内部信任链的建立过程。
优选地,虚拟机的信任链还可以以VTPCM为虚拟信任根,通过VTPCM内设置的多个虚拟度量模块分别对虚拟机各组件自下而上进行度量的方式建立信任链,而VTPCM则由宿主机的TSB对其进行度量从而保证自身环境是可信的,多个虚拟度量模块则并不需要进行自下而上的度量才能保证自身的可信性,同理,宿主机的信任链也可以以TPCM为信任根,通过TPCM内设置的多个度量模块分别对宿主机各组件自下而上进行度量的方式建立信任链,此时信任传递机制则为宿主机的TSB同时对VTPCM内部的多个虚拟度量模块进行度量,从而保证VTPCM的内部环境是可信的,为云计算环境提供了基于TPCM和VTPCM的可信保障。云环境信任链建立过程包括以下步骤:
步骤1、通过TPCM内部设置的多个度量模块依次对宿主机的BIOS、OSLoader、操作系统和TSB进行度量,建立宿主机的信任链;如果度量结果均为可信则宿主机的信任链建立完成,如果任一度量结果为不可信,则中断度量,建立失败。
步骤2、将TPCM虚拟化,得到虚拟TPCM;
步骤3、通过VMM启动虚拟TPCM,通过虚拟TPCM内部设置的多个虚拟度量模块依次对至少一个虚拟机的BIOS、OSLoader、操作系统和TSB进行度量,建立至少一个虚拟机的信任链;如果度量结果均为可信则至少一个虚拟机的信任链建立完成,如果任一度量结果为不可信,则中断度量,建立失败。
步骤4、通过宿主机的TSB对VMM和虚拟TPCM进行度量,将宿主机的信任链与至少一个虚拟机的信任链进行连接。如果度量结果为可信,则宿主机的信任链与至少一个虚拟机的信任链连接成功。
实施例五
下面对实施例一的一种云环境内信任链的建立方法对应的系统结构进行详细描述。
如图8所示,一种云环境内信任链的建立系统,包括:
一种云环境内信任链的建立系统,包括:
宿主机信任链建立模块1,用于以TPCM为起始点,通过度量的方法自下而上地建立宿主机的信任链;
虚拟机信任链建立模块2,用于当宿主机上运行的虚拟机启动时,通过虚拟机监视器调用虚拟机对应的虚拟TPCM作为虚拟机的可信根,通过度量的方法自下而上地建立虚拟机的信任链;
信任链连接模块3,用于将宿主机的信任链与每个虚拟机的信任链进行连接。
虚拟机信任链建立模块2具体用于采用以下任一方式建立虚拟机的信任链:一个虚拟机启动且建立信任链,或者多个虚拟机依次启动且依次建立信任链,或者多个虚拟机同时启动且同时建立信任链;
一种云环境内信任链的建立系统,还包括可信根配置模块,用于通过虚拟机监视器给每个虚拟机提供一个虚拟TPCM作为虚拟机的可信根,或者通过虚拟机监视器调用TPCM中已经虚拟好的虚拟TPCM作为虚拟机的可信根。
宿主机信任链建立模块1具体用于:
在宿主机加电后,宿主机的BIOS启动之前,TPCM对BIOS的代码及其配置信息进行度量,度量通过后将控制权转移给BIOS;
当控制权转移给BIOS之后,执行BIOS,BIOS对宿主机的OSLoader代码进行度量,度量通过后将控制权转移给宿主机的OSLoader;
当控制权转移给宿主机的OSLoader代码之后,执行宿主机的OSLoader代码,宿主机的OSLoader代码对宿主机的操作系统内核进行度量,度量通过后将控制权转移给宿主机的操作系统;
当控制权转移给宿主机的操作系统之后,执行宿主机的操作系统,宿主机的操作系统对宿主机的可信软件基进行度量,度量通过后将控制权转移给宿主机的可信软件基;
当控制权转移给宿主机的可信软件基之后,宿主机的可信软件基对宿主机的后续组件、应用及各种类型的可执行文件进行度量,宿主机的信任链建立完成。
虚拟机信任链建立模块2具体用于:
当虚拟机启动时,通过虚拟机监视器调用虚拟机对应的虚拟TPCM,虚拟TPCM对虚拟机的BIOS的代码和内存区域进行度量,度量通过后将控制权转移给虚拟机的BIOS;
当控制权转移给虚拟机的BIOS之后,执行虚拟机的BIOS,虚拟机的BIOS对虚拟机的OSLoader代码进行度量,度量通过后将控制权转移给虚拟机的OSLoader;
当控制权转移给虚拟机的OSLoader代码之后,执行虚拟机的OSLoader代码,虚拟机的OSLoader代码对虚拟机的操作系统进行度量,度量通过后将控制权转移给虚拟机的操作系统;
当控制权转移给虚拟机的操作系统之后,执行虚拟机的操作系统,虚拟机的操作系统对虚拟机的可信软件基进行度量,度量通过后将控制权转移给虚拟机的可信软件基;
当控制权转移给虚拟机的可信软件基之后,虚拟机的可信软件基对虚拟机的后续组件、应用及各种类型的可执行文件进行度量,虚拟机的信任链建立完成。
信任链连接模块3具体用于:
在虚拟机启动之前,宿主机的可信软件基对虚拟机监视器的代码进行度量,度量通过后将控制权转移给虚拟机监视器;
当控制权转移给虚拟机监视器之后,执行虚拟机监视器,虚拟机监视器对虚拟机对应的虚拟TPCM的代码及其配置信息进行度量,度量通过后将控制权转移给虚拟TPCM;
当控制权转移给虚拟TPCM之后,执行虚拟TPCM,宿主机的信任链与虚拟机的信任链连接完成。
实施例六
本发明还提供一种存储介质,存储介质中存储有计算机程序,其中,计算机程序运行时可以执行本发明的一种云环境内信任链的建立方法。该存储介质包括以下至少之一:软盘、光盘、DVD、硬盘、闪存、U盘、CF卡、SD卡、MMC卡、SM卡、记忆棒(Memory Stick)、xD卡等,将本发明的一种云环境内信任链的建立方法转化成数据(计算机程序)刻录到上述存储介质中,比如将刻有本发明方法的计算机程序的硬盘放入电脑运行,则可以实现本发明的一种云环境内信任链的建立方法。
实施例七
本发明还提供一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行本发明的一种云环境内信任链的建立方法。该存储器属于实施例六中的存储介质,能够存储本发明方法的计算机程序,该处理器可以对存储器中的数据进行处理,该电子装置可以是计算机、手机或者其他包括存储器和处理器的任何装置。在计算机启动后,启动处理器运行存储器中的本发明方法的计算机程序,则可以实现本发明的一种云环境内信任链的建立方法。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种云环境内信任链的建立方法,其特征在于,包括:
S1、以TPCM为起始点,建立宿主机的信任链;
S2、当所述宿主机上运行的虚拟机启动时,通过虚拟机监视器调用所述虚拟机对应的虚拟TPCM作为所述虚拟机的可信根,建立所述虚拟机的信任链;
S3、将所述宿主机的信任链与每个所述虚拟机的信任链进行连接。
2.根据权利要求1所述的一种云环境内信任链的建立方法,其特征在于,步骤S1包括:
S11、在所述宿主机加电后,所述宿主机的BIOS启动之前,所述TPCM对所述BIOS的代码及其配置信息进行度量,度量通过后将控制权转移给所述BIOS;
S12、当控制权转移给所述BIOS之后,执行所述BIOS,所述BIOS对所述宿主机的OSLoader代码进行度量,度量通过后将控制权转移给所述宿主机的OSLoader;
S13、当控制权转移给所述宿主机的OSLoader代码之后,执行所述宿主机的OSLoader代码,所述宿主机的OSLoader代码对所述宿主机的操作系统内核进行度量,度量通过后将控制权转移给所述宿主机的操作系统;
S14、当控制权转移给所述宿主机的操作系统之后,执行所述宿主机的操作系统,所述宿主机的操作系统对所述宿主机的可信软件基进行度量,度量通过后将控制权转移给所述宿主机的可信软件基;
S15、当控制权转移给所述宿主机的可信软件基之后,所述宿主机的可信软件基对所述宿主机的后续组件、应用及各种类型的可执行文件进行度量,所述宿主机的信任链建立完成。
3.根据权利要求1所述的一种云环境内信任链的建立方法,其特征在于,步骤S2包括:
S21、当虚拟机启动时,通过虚拟机监视器调用所述虚拟机对应的虚拟TPCM,所述虚拟TPCM对所述虚拟机的BIOS的代码和内存区域进行度量,度量通过后将控制权转移给所述虚拟机的BIOS;
S22、当控制权转移给所述虚拟机的BIOS之后,执行所述虚拟机的BIOS,所述虚拟机的BIOS对所述虚拟机的OSLoader代码进行度量,度量通过后将控制权转移给所述虚拟机的OSLoader;
S23、当控制权转移给所述虚拟机的OSLoader代码之后,执行所述虚拟机的OSLoader代码,所述虚拟机的OSLoader代码对所述虚拟机的操作系统进行度量,度量通过后将控制权转移给所述虚拟机的操作系统;
S24、当控制权转移给所述虚拟机的操作系统之后,执行所述虚拟机的操作系统,所述虚拟机的操作系统对所述虚拟机的可信软件基进行度量,度量通过后将控制权转移给所述虚拟机的可信软件基;
S25、当控制权转移给所述虚拟机的可信软件基之后,所述虚拟机的可信软件基对所述虚拟机的后续组件、应用及各种类型的可执行文件进行度量,所述虚拟机的信任链建立完成。
4.根据权利要求1所述的一种云环境内信任链的建立方法,其特征在于,步骤S3包括:
S31、在虚拟机启动之前,所述宿主机的可信软件基对所述虚拟机监视器的代码进行度量,度量通过后将控制权转移给所述虚拟机监视器;
S32、当控制权转移给所述虚拟机监视器之后,执行所述虚拟机监视器,所述虚拟机监视器对所述虚拟机对应的虚拟TPCM的代码及其配置信息进行度量,度量通过后将控制权转移给所述虚拟TPCM;
S33、当控制权转移给所述虚拟TPCM之后,执行所述虚拟TPCM,所述宿主机的信任链与所述虚拟机的信任链连接完成。
5.根据权利要求1至4中任一项所述的一种云环境内信任链的建立方法,其特征在于,步骤S2中,采用以下任一方式建立所述虚拟机的信任链:
一个虚拟机启动且建立信任链;
多个虚拟机依次启动且依次建立信任链;
多个虚拟机同时启动且同时建立信任链。
6.根据权利要求1至4中任一项所述的一种云环境内信任链的建立方法,其特征在于,步骤S1之前还包括:
通过所述虚拟机监视器给每个虚拟机提供一个虚拟TPCM作为虚拟机的可信根,或者通过所述虚拟机监视器调用所述TPCM中已经虚拟好的虚拟TPCM作为虚拟机的可信根。
7.一种云环境内信任链的建立系统,其特征在于,包括:
宿主机信任链建立模块,用于以TPCM为起始点,建立宿主机的信任链;
虚拟机信任链建立模块,用于当所述宿主机上运行的虚拟机启动时,通过虚拟机监视器调用所述虚拟机对应的虚拟TPCM作为所述虚拟机的可信根,建立所述虚拟机的信任链;
信任链连接模块,用于将所述宿主机的信任链与每个所述虚拟机的信任链进行连接。
8.根据权利要求7所述的一种云环境内信任链的建立系统,其特征在于,所述宿主机信任链建立模块具体用于:
在所述宿主机加电后,所述宿主机的BIOS启动之前,所述TPCM对所述BIOS的代码及其配置信息进行度量,度量通过后将控制权转移给所述BIOS;
当控制权转移给所述BIOS之后,执行所述BIOS,所述BIOS对所述宿主机的OSLoader代码进行度量,度量通过后将控制权转移给所述宿主机的OSLoader;
当控制权转移给所述宿主机的OSLoader代码之后,执行所述宿主机的OSLoader代码,所述宿主机的OSLoader代码对所述宿主机的操作系统内核进行度量,度量通过后将控制权转移给所述宿主机的操作系统;
当控制权转移给所述宿主机的操作系统之后,执行所述宿主机的操作系统,所述宿主机的操作系统对所述宿主机的可信软件基进行度量,度量通过后将控制权转移给所述宿主机的可信软件基;
当控制权转移给所述宿主机的可信软件基之后,所述宿主机的可信软件基对所述宿主机的后续组件、应用及各种类型的可执行文件进行度量,所述宿主机的信任链建立完成。
9.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至6任一项中所述一种云环境内信任链的建立方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至6任一项中所述的一种云环境内信任链的建立方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910285205.1A CN109992972B (zh) | 2019-04-10 | 2019-04-10 | 一种云环境内信任链的建立方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910285205.1A CN109992972B (zh) | 2019-04-10 | 2019-04-10 | 一种云环境内信任链的建立方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109992972A true CN109992972A (zh) | 2019-07-09 |
CN109992972B CN109992972B (zh) | 2021-04-20 |
Family
ID=67132792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910285205.1A Active CN109992972B (zh) | 2019-04-10 | 2019-04-10 | 一种云环境内信任链的建立方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109992972B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110347479A (zh) * | 2019-07-10 | 2019-10-18 | 大唐高鸿信安(浙江)信息科技有限公司 | 一种可信链的构建方法及系统 |
CN111147252A (zh) * | 2019-12-19 | 2020-05-12 | 北京可信华泰信息技术有限公司 | 一种云环境可信连接方法 |
CN111158906A (zh) * | 2019-12-19 | 2020-05-15 | 北京可信华泰信息技术有限公司 | 一种主动免疫可信云系统 |
CN111158854A (zh) * | 2019-12-19 | 2020-05-15 | 北京可信华泰信息技术有限公司 | 一种云环境虚拟机迁移时信任链的恢复方法 |
CN112491545A (zh) * | 2020-11-30 | 2021-03-12 | 山东可信云信息技术研究院 | 一种可信的混合云管理平台、接入方法及系统 |
CN112988272A (zh) * | 2021-03-22 | 2021-06-18 | 成都申威科技有限责任公司 | 一种在uboot中支持多路pcie rc的方法、装置及存储介质 |
CN113641463A (zh) * | 2021-10-14 | 2021-11-12 | 云宏信息科技股份有限公司 | 虚拟化系统可信认证方法、系统及计算机可读存储介质 |
CN113824683A (zh) * | 2021-08-13 | 2021-12-21 | 中国光大银行股份有限公司 | 可信域的建立方法、装置及数据系统 |
CN114116026A (zh) * | 2021-11-12 | 2022-03-01 | 四川大学 | 一种云平台信任链分层模型构建方法 |
CN114385248A (zh) * | 2020-10-22 | 2022-04-22 | 四零四科技股份有限公司 | 处理信任链的计算系统及装置 |
CN114756335A (zh) * | 2022-06-15 | 2022-07-15 | 中电云数智科技有限公司 | 混合架构的可信云服务器的信任链构建方法及服务器 |
CN115002181A (zh) * | 2022-07-22 | 2022-09-02 | 北京工业大学 | 一种虚拟可信根及其虚拟信任链方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104200165A (zh) * | 2014-07-30 | 2014-12-10 | 中国电子科技集团公司第三十研究所 | 一种基于国产cpu的主动可信度量方法 |
CN105095768A (zh) * | 2015-08-20 | 2015-11-25 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟化的可信服务器信任链的构建方法 |
CN109165079A (zh) * | 2018-08-07 | 2019-01-08 | 郑州云海信息技术有限公司 | 基于虚拟化的云数据中心可信平台、信任链构建方法、迁移方法 |
CN109583214A (zh) * | 2018-11-28 | 2019-04-05 | 北京可信华泰信息技术有限公司 | 一种安全控制方法 |
-
2019
- 2019-04-10 CN CN201910285205.1A patent/CN109992972B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104200165A (zh) * | 2014-07-30 | 2014-12-10 | 中国电子科技集团公司第三十研究所 | 一种基于国产cpu的主动可信度量方法 |
CN105095768A (zh) * | 2015-08-20 | 2015-11-25 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟化的可信服务器信任链的构建方法 |
CN109165079A (zh) * | 2018-08-07 | 2019-01-08 | 郑州云海信息技术有限公司 | 基于虚拟化的云数据中心可信平台、信任链构建方法、迁移方法 |
CN109583214A (zh) * | 2018-11-28 | 2019-04-05 | 北京可信华泰信息技术有限公司 | 一种安全控制方法 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110347479A (zh) * | 2019-07-10 | 2019-10-18 | 大唐高鸿信安(浙江)信息科技有限公司 | 一种可信链的构建方法及系统 |
CN111158906B (zh) * | 2019-12-19 | 2023-04-28 | 北京可信华泰信息技术有限公司 | 一种主动免疫可信云系统 |
CN111147252A (zh) * | 2019-12-19 | 2020-05-12 | 北京可信华泰信息技术有限公司 | 一种云环境可信连接方法 |
CN111158906A (zh) * | 2019-12-19 | 2020-05-15 | 北京可信华泰信息技术有限公司 | 一种主动免疫可信云系统 |
CN111158854A (zh) * | 2019-12-19 | 2020-05-15 | 北京可信华泰信息技术有限公司 | 一种云环境虚拟机迁移时信任链的恢复方法 |
CN111147252B (zh) * | 2019-12-19 | 2022-03-15 | 北京可信华泰信息技术有限公司 | 一种云环境可信连接方法 |
CN114385248A (zh) * | 2020-10-22 | 2022-04-22 | 四零四科技股份有限公司 | 处理信任链的计算系统及装置 |
CN114385248B (zh) * | 2020-10-22 | 2024-04-23 | 四零四科技股份有限公司 | 处理信任链的计算系统及装置 |
CN112491545A (zh) * | 2020-11-30 | 2021-03-12 | 山东可信云信息技术研究院 | 一种可信的混合云管理平台、接入方法及系统 |
CN112988272A (zh) * | 2021-03-22 | 2021-06-18 | 成都申威科技有限责任公司 | 一种在uboot中支持多路pcie rc的方法、装置及存储介质 |
CN113824683A (zh) * | 2021-08-13 | 2021-12-21 | 中国光大银行股份有限公司 | 可信域的建立方法、装置及数据系统 |
CN113641463A (zh) * | 2021-10-14 | 2021-11-12 | 云宏信息科技股份有限公司 | 虚拟化系统可信认证方法、系统及计算机可读存储介质 |
CN114116026A (zh) * | 2021-11-12 | 2022-03-01 | 四川大学 | 一种云平台信任链分层模型构建方法 |
CN114116026B (zh) * | 2021-11-12 | 2023-04-07 | 四川大学 | 一种云平台信任链分层模型构建方法 |
CN114756335A (zh) * | 2022-06-15 | 2022-07-15 | 中电云数智科技有限公司 | 混合架构的可信云服务器的信任链构建方法及服务器 |
CN115002181A (zh) * | 2022-07-22 | 2022-09-02 | 北京工业大学 | 一种虚拟可信根及其虚拟信任链方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109992972B (zh) | 2021-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109992972A (zh) | 一种云环境内信任链的建立方法及系统 | |
US8516481B2 (en) | Virtual machine manager system and methods | |
US10146571B2 (en) | Apparatus for hardware accelerated runtime integrity measurement | |
US9465652B1 (en) | Hardware-based mechanisms for updating computer systems | |
US9229705B2 (en) | In-band hypervisor-managed firmware updates | |
US9436827B2 (en) | Attesting a component of a system during a boot process | |
US9323563B2 (en) | Determining virtual machine migration in view of a migration rule | |
US7689817B2 (en) | Methods and apparatus for defeating malware | |
US20160371105A1 (en) | Deployment and installation of updates in a virtual environment | |
CN101488173B (zh) | 支持零宕机的可信虚拟域启动文件完整性度量的方法 | |
JP5307196B2 (ja) | シリコンに一体化されたコードのシステムへの提供 | |
Wu et al. | System call redirection: A practical approach to meeting real-world virtual machine introspection needs | |
KR102607127B1 (ko) | 클라우드 컴퓨팅에 사용 가능한 신뢰 상태로의 베어 메탈 리소스의 클리어런스 | |
WO2014143588A1 (en) | Dynamically loaded measured environment for secure code launch | |
CN103827824A (zh) | 虚拟机和嵌套虚拟机管理器的验证发起 | |
US8205197B2 (en) | Apparatus, system, and method for granting hypervisor privileges | |
US11556458B2 (en) | Efficient fuzz testing of low-level virtual devices | |
US10983877B1 (en) | Backup monitoring with automatic verification | |
CN110334522A (zh) | 启动度量的方法及装置 | |
WO2019103902A1 (en) | Software packages policies management in a securela booted enclave | |
US20210182047A1 (en) | Installing Patches During Upgrades | |
US20130219499A1 (en) | Apparatus and method for providing security for virtualization | |
CN111966470B (zh) | 虚拟机监控器的加载方法、装置和电子设备 | |
US10684904B2 (en) | Information handling systems and methods to selectively control ownership of a hardware based watchdog timer (WDT) | |
US10664573B2 (en) | Computing apparatus and method with persistent memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |