CN117574464A - 一种防护部件、安全度量方法及防护系统 - Google Patents
一种防护部件、安全度量方法及防护系统 Download PDFInfo
- Publication number
- CN117574464A CN117574464A CN202311575859.0A CN202311575859A CN117574464A CN 117574464 A CN117574464 A CN 117574464A CN 202311575859 A CN202311575859 A CN 202311575859A CN 117574464 A CN117574464 A CN 117574464A
- Authority
- CN
- China
- Prior art keywords
- measurement object
- information
- trusted
- measured
- address
- 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.)
- Pending
Links
- 238000000691 measurement method Methods 0.000 title abstract description 9
- 238000005259 measurement Methods 0.000 claims abstract description 277
- 238000013507 mapping Methods 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims description 41
- 238000006243 chemical reaction Methods 0.000 claims description 34
- JBWKIWSBJXDJDT-UHFFFAOYSA-N triphenylmethyl chloride Chemical compound C=1C=CC=CC=1C(C=1C=CC=CC=1)(Cl)C1=CC=CC=C1 JBWKIWSBJXDJDT-UHFFFAOYSA-N 0.000 claims description 16
- 238000013519 translation Methods 0.000 claims description 15
- 239000002699 waste material Substances 0.000 abstract description 11
- 230000006870 function Effects 0.000 description 120
- 238000010586 diagram Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 17
- 238000007726 management method Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 10
- 238000012795 verification Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001681 protective effect Effects 0.000 description 2
- 101150071434 BAR1 gene Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开一种防护部件、安全度量方法及防护系统,所述防护部件独立于微处理器架构设置,防护部件包括PC I e接口和可信核,PC I e接口的两端分别与可信核和微处理器架构相连,PC I e接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。
Description
技术领域
本发明涉及处理器技术领域,尤其涉及一种防护部件、安全度量方法及防护系统。
背景技术
随着技术的发展,人们对系统的安全性提出了越来越高的要求,由此出现了可信计算技术,如可信平台控制模块(Trusted platform control module,TPCM)。目前基于防护部件的安全管理,一般都是通过单块板卡来对一类被防护部件进行安全管理,单板卡基本只能实现一个度量对象的安全管理,无法适用于对多个度量对象进行度量的场景,只能通过增加板卡的数量来实现这一要求。随着安全管理要求越来越多样性,单纯的增加板卡数量会加剧硬件的资源消耗。
发明内容
本发明实施例提供了一种防护部件、安全度量方法及防护系统,以解决相关技术中的对多个度量对象的安全度量需使用多个防护部件导致的硬件资源浪费的技术问题。
第一方面,本发明实施例提供了一种防护部件,所述防护部件独立于微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端用于与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能,
所述可信核用于执行以下操作:
通过第一虚拟功能接收第一度量对象的待度量信息,其中,所述第一虚拟功能为所述至少一个虚拟功能中的任意一个虚拟功能,所述第一度量对象为所述至少一个度量对象中的与所述第一虚拟功能对应的度量对象;
根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
本发明实施例通过设置一种独立于微处理器架构的防护部件,防护部件包括PCIe接口和可信核,PCIe接口的两端分别与可信核和微处理器架构相连,PCIe接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。
在第一方面的一种可能的实施方式中,所述防护部件还包括地址转换模块和存储模块,其中,所述可信核分别与所述地址转换模块和所述存储模块相连;
所述可信核还用于执行以下操作:
接收所述地址转换模块发送的第一可信区域地址,以所述第一可信区域地址对应的存储空间作为所述可信核在执行所述根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告时所需的存储空间;
其中,所述第一可信区域由所述地址转换模块基于预设的地址映射关系,对所述第一虚拟功能上报的基址信息进行地址转换得到的所述存储模块中的第一可信区域地址,所述基址信息用于指示接收所述第一度量对象的待度量信息的所述第一虚拟功能及与所述待度量信息关联的操作类型对应的基址寄存器。
本实施例中,地址转换模块通过第一虚拟功能接收第一度量对象的待度量信息,对该待度量信息进行解析,得到其附带的基址信息,该基址信息用于指示第一虚拟功能以及与该待度量信息关联的操作类型对应的基址寄存器,然后利用预先设置的地址映射关系,将基址信息转换成第一可信区域地址,并将第一可信区域和待度量信息上传给可信核,使得存储模块中的第一可信区域对应的存储空间作为可信核在执行根据第一度量对象的待度量信息生成第一度量对象的度量报告时所需的存储空间,其中,地址映射关系可根据实际需求,通过软件进行修改,内存模块的存储空间不会被固定分配,内存模块的存储空间能够灵活分配给不同的安全度量进程。
在第一方面的一种可能的实施方式中,所述防护部件为TCM、TPCM和TPM中的一种。
在第一方面的一种可能的实施方式中,所述微处理器架构包括至少一个主机,所述度量对象为所述主机或运行在所述主机上的虚拟机。
本实施例中,在第一度量对象为指定主机时,防护部件通过利用第一虚拟功能从微处理器架构的指定主机获取待度量信息,以根据获取的待度量信息对指定主机进行安全度量;在第一度量对象为指定虚拟机时,防护部件通过利用第一虚拟功能从微处理器架构中的运行指定虚拟机的主机处获取指定虚拟机的待度量信息,以根据获取的待度量信息对指定虚拟机进行安全度量。由此可知,防护部件可通过多个虚拟功能实现与虚拟功能一一对应的主机或虚拟机的安全度量,无需额外增加防护部件,降低了硬件资源的消耗。
第二方面,本发明实施例提供了一种安全度量方法,所述方法适用于防护部件,所述防护部件独立于微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端用于与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能,所述方法由所述可信核执行,所述方法包括:
通过第一虚拟功能接收第一度量对象的待度量信息,其中,所述第一虚拟功能为所述至少一个虚拟功能中的任意一个虚拟功能,所述第一度量对象为所述至少一个计算节点中的与所述第一虚拟功能对应的度量对象;
根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
在第二方面的一种可能的实施方式中,所述防护部件还包括地址转换模块和存储模块,所述方法还包括:
接收所述地址转换模块发送的第一可信区域地址,以所述第一可信区域地址对应的存储空间作为所述可信核在执行所述根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告时所需的存储空间;
其中,所述第一可信区域由所述地址转换模块基于预设的地址映射关系,对所述第一虚拟功能上报的基址信息进行地址转换得到的所述存储模块中的第一可信区域地址,所述基址信息用于指示接收所述第一度量对象的待度量信息的所述第一虚拟功能及与所述待度量信息关联的操作类型对应的基址寄存器。
在第二方面的一种可能的实施方式中,所述防护部件为TCM、TPCM和TPM中的一种。
在第二方面的一种可能的实施方式中,所述微处理器架构包括至少一个主机,所述度量对象为所述主机或运行在所述主机上的虚拟机。
需要说明的是,本发明实施例提供的一种安全度量方法的实施例的具体实现方案和有益效果,与上述第二方面提供的一种防护部件的各实施例的具体实现方案和有益效果对应相同,在此不作赘述。
第三方面,本发明实施例提供了一种防护系统,所述防护系统包括防护部件和微处理器架构,所述防护部件独立于所述微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能;
所述微处理器架构用于执行以下操作:
将第一度量对象的待度量信息通过第一虚拟功能发送给所述可信核,所述第一度量对象为所述至少一个度量对象中的任意一个度量对象,所述第一虚拟功能为与所述第一度量对象对应的虚拟功能;
所述防护部件用于执行以下操作:
通过所述可信核根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
与现有技术相比,本发明实施例提供的一种防护部件、安全度量方法及防护系统,防护部件包括PCIe接口和可信核,PCIe接口的两端分别与可信核和微处理器架构相连,PCIe接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,解决了对多个度量对象的安全度量需使用多个防护部件导致的硬件资源浪费的技术问题,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。
附图说明
图1是本发明一实施例提供的相关技术中的防护系统的结构示意图;
图2是本发明一实施例提供的相关技术中防护部件的结构示意图;
图3是本发明一实施例提供的防护系统的结构示意图;
图4是本发明一实施例提供的防护系统的结构示意图;
图5是本发明一实施例提供的一种防护部件的结构示意图;
图6是本发明一实施例提供的一种防护系统的结构示意图;
图7是本发明一实施例提供的一种防护系统的结构示意图;
图8是本发明一实施例提供的一种防护部件的结构示意图;
图9是本发明一实施例提供的一种防护系统的结构示意图;
图10是本发明一实施例提供的一种安全度量方法的流程示意图;
图11是本发明一实施例提供的一种非暂时性计算机可读存储介质的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
随着用户对设备安全性要求的不断提高,越来越多的安全技术应用到计算机设备中。随着设备软件功能的日趋丰富,以及设备数据量的不断增加,越来越多以及越来越多样化的数据和程序运行于设备处理器架构中,由此使得保障处理器架构的系统安全成为了保障计算机设备安全的重要手段。因此,有必要研究能够保障处理器架构系统安全的技术方案,以提高设备安全性。
可信计算(Trusted Computing,TC)是一项由TCG(Trusted Computing Group,可信计算组织)推动和开发的技术。可信的核心目标之一是保证系统和应用的完整性,从而确定系统或软件运行在设计目标期望的可信状态。在系统和应用中加入可信验证能够减少由于使用未知或遭到篡改的系统/软件遭到攻击的可能性。以PC机可信举例,通俗来讲,可信就是在每台PC机启动时检测BIOS和操作系统的完整性和正确性,保障你在使用PC时硬件配置和操作系统没有被篡改过,所有系统的安全措施和设置都不会被绕过;在启动后,对所有的应用,如社交软件、音乐软件、视频软件等应用可进行实时监控,若发现应用被篡改立即采取止损措施。
可信主要通过度量和验证的技术手段实现。度量就是采集所检测的软件或系统的状态,验证是将度量结果和参考值比对看是否一致,如果一致表示验证通过,如果不一致则表示验证失败。可信计算通过芯片厂家植入在可信硬件中的算法和密钥,以及集成的专用微控制器对软件栈进行度量和验证来确保可信。根据安全芯片和其上运行的可信软件基(Trusted Software Stack)分类,业界目前主流的可信计算标准主要有三种:TrustedPlatform Module(TPM,可信平台模块)、Trusted Cryptography Module(TCM,可信密码模块)和Trusted Platform Control Module(TPCM,可信平台控制模块)。
以TPCM作为示例,图1示出了相关技术中的防护系统的结构示意图,如图1所示出的防护系统10可以包括计算部件(如主机11)和防护部件(如TPCM)。TPCM从主机11获取待度量的数据,根据待度量的数据对主机11进行安全度量,生成度量报告。
接下来对相关技术中的防护系统的各个组成部分进行简单介绍。
计算部件内有一个代理模块,代理模块根据度量策略拦截系统调用行为,获取行为相关的主体、客体、操作、环境等信息,依据控制策略将信息发送给防护部件进行度量,并接受判定机制的判定结果,进行相关的控制。防护部件主要是对计算部件进行可信度量,并形成度量报告;度量报告用于表示计算部件当前的可信状态,一般包括启动度量过程中生成的各阶段度值、运行阶段的动态度量结果以及由此计算的可信状态,根据度量报告,防护部件可能进行一些控制,如可信连接或接入控制等。
如图1所示,以TPCM作为示例,TPCM主要由硬件资源、操作系统等组成。硬件资源主要有中央处理器(Central Processing Unit,CPU),存储模块等。操作系统提供了必要的底层服务和运行环境,TPCM的操作系统由基本功能和可信功能二层构成,基本功能主要包括任务调度、资源管理、系统服务等操作系统具备的基本功能;可信功能则是控制驱动、密码资源管理、可信状态记录、可信策略、基准管理以及等可信专用服务。值得说明的是,上述介绍的防护系统只是对现有技术的防护系统进行简单举例,相关技术中的防护系统的具体组成并不局限于上述具体的结构。
接下来针对相关技术中的安全度量流程进行简单介绍。
1、防护部件优先于上电,通过chiprom(片上rom存储)对防护部件的固件进行度量验证(自检),完成度量验证后跳到防护部件的固件的代码入口处开始执行。
2、防护部件完成初始化后,对计算部件的计算环境bootloader的启动镜像进行度量计算,度量完成后才会唤醒计算部件的处理器核。其中,bootloader是硬件启动的引导程序,是运行操作系统的前提。
3、计算部件开始执行计算环境bootloader。
4、防护部件对计算环境的操作系统(Operating System,OS)进行度量,然后进入等待状态。
5、计算部件根据防护部件对OS的度量结果执行计算环境的OS。
6、OS执行防护部件代理模块(如TPCM代理模块)。
7、防护部件的代理模块向防护部件发送计算环境的基本信息(如代码、数据分布情况等)。
8、防护部件记录计算环境的基本信息。
9、业务处理(防护部件的代理模块向防护部件发送计算部件的行为信息)。
10、防护部件根据策略和接收到的基本信息、行为信息等对计算节点进行度量。
然而,现有技术中,防护部件通过PCIe接口与计算部件进行信息交互,由于PCIe接口只有单个功能,该功能只能对应一个度量对象,只能实现对一个度量对象的安全度量。其中,PCI-Express(peripheral component interconnect express),简称PCIe,是一种高速串行计算机扩展总线标准。
示例性的,图2示出了相关技术中一种防护部件的结构示意图,防护部件100包含有可信核101、PCIe接口、存储模块102和片上网络(network-on-chip,NOC),PCIe接口只有一个功能function(如图2所示的func0),PCIe接口的配置空间中设置了6个基址寄存器(图中未示出),基址寄存器的具体数量根据实际情况设置,包括内存空间基址寄存器、I/O空间基址寄存器和扩展ROM基址寄存器等,其具体类型根据实际情况设置,通过利用基址寄存器存储的信息访问存储模块的物理空间,存储模块102作为可信核101在执行根据待度量的数据生成度量报告所需的存储空间,片上网络NOC作为存储模块102与可信核101、可信核101与PCIe接口的数据传输通道。微处理器架构中包括至少一个主机,主机通常包括中央处理器(Central Processing Unit,CPU)、内存、主板、硬盘、光驱、电源、散热系统以及其他输入输出控制器和接口等,主机属于计算机系统的硬件;固件一般存储于内存中,是计算机启动时连接硬件和操作系统的底层代码;操作系统(Operating System,OS)是一组主管并控制计算机操作、运用和运行硬件、软件资源和提供公共服务来组织用户交互的相互关联的系统软件程序;虚拟机是一个软件,它是建立在真实计算机中的一个虚拟电脑,必须依靠主机的硬件资源运行。图3示出了一种防护系统的结构示意图,防护系统包括微处理器架构200和防护部件100,微处理器架构200和防护部件100是独立设置的,图4示出了一种防护系统的结构示意图,微处理器架构200中的主机201的逻辑架构包括CPU、固件2011、操作系统OS和多个虚拟机(Virtual Machine,VM)(如VM1、VM2,具体的虚拟机数量可根据实际情况设置)。由于相关技术中防护部件的PCIe接口只有一个功能function,因此防护部件只能由单个功能function与防护部件代理模块进行交互,防护部件代理模块位于操作系统OS内,因此只能对操作系统OS下的进程进行度量。由于PCIe接口只有单个功能,只能对一个度量对象进行安全度量,比如,当防护部件对主机进行度量时,由于防护部件是通过PCIe接口与主机相连的,而PCIe接口只有单个功能,防护部件只能通过单个功能获取一个主机的待度量信息来对该主机进行安全度量,无法对多个主机进行安全度量,同理,当防护部件对虚拟机进行度量时,只能对一个虚拟机进行安全度量,无法实现对多个虚拟机的安全度量,另外,当防护部件需要度量虚拟机内部运行的多个对象时,只能通过单个功能对其中一个运行对象(如某个进程或线程等)进行安全度量,无法对多个运行对象进行安全度量。
基于此,本发明一实施例提供了一种防护部件,可以很好的解决上述问题。SR-IOV(Single Root I/OVirtualization)是一种虚拟化技术,将其与安全度量技术深入融合,可以实现一个防护部件度量多个度量对象。例如,每一台主机或虚拟机对应一个SR-IOV的虚拟功能function,主机或虚拟机通过各自对应的虚拟功能function与防护部件进行交互,不会相互干扰。
具体地,所述防护部件独立于微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端用于与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能,
所述可信核用于执行以下操作:
通过第一虚拟功能接收第一度量对象的待度量信息,其中,所述第一虚拟功能为所述至少一个虚拟功能中的任意一个虚拟功能,所述第一度量对象为所述至少一个度量对象中的与所述第一虚拟功能对应的度量对象;
根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
示例性的,参见图5,图5是本发明实施例提供的一种防护部件的结构示意图,防护部件300包括可信核301和PCIe接口,通过SR-IOV技术为PCIe接口增加n个虚拟功能function(func0~func(n-1)),每一虚拟function均配置有六个基址寄存器bar0~bar5(图中未示出)。参见图6,图6是本发明实施例提供的一种防护系统的结构示意图,防护系统包括防护部件300和微处理器架构400,防护部件300和微处理器架构400是独立设置的,本发明实施例提供的防护部件300具备多个虚拟function(比如func0~func(n-1)),可以实现对操作系统OS下运行的每个虚拟机(比如VM1、VM2)内部的进程进行度量。具体地,微处理器架构400中的主机401的逻辑架构包括CPU、固件4011、操作系统OS、虚拟机VM1和虚拟机VM2。示例性的,以虚拟机VM1和虚拟机VM2作为度量对象,可信核301通过func0接收虚拟机VM1的待度量信息,虚拟机VM1的待度量信息包括虚拟机VM1的bootloader的启动镜像、虚拟机VM1的操作系统的代码段、虚拟机VM1的基本信息(如虚拟机VM1的bootloader和操作系统的内存占用情况)以及虚拟机VM1内部运行的进程的相关信息,可信核301上运行有可信代码,用于分别对虚拟机VM1的各类待度量信息进行哈希运算,得到各类待度量信息的哈希值,防护部件300内部存储有与虚拟机VM1的每一类待度量信息一一对应的预期哈希值,将计算得到的哈希值与对应的预期哈希值进行比对,若虚拟机VM1的所有待度量信息的比对结果均一致,则说明虚拟机VM1的可信状态为可信,否则,说明虚拟机VM1的可信状态为不可信;可信核301通过func1接收虚拟机VM2的待度量信息,虚拟机VM2的待度量信息包括虚拟机VM2的bootloader的启动镜像、虚拟机VM2的操作系统的代码段、虚拟机VM2的基本信息(如虚拟机VM2的bootloader和操作系统的内存占用情况)以及虚拟机VM2内部运行的进程的相关信息,可信核301上运行可信代码,用于分别对虚拟机VM2的各类待度量信息进行哈希运算,得到各类待度量信息的哈希值,防护部件300内部存储有与虚拟机VM2的每一类待度量信息一一对应的预期哈希值,可信核301将计算得到的哈希值与对应的预期哈希值进行比对,若虚拟机VM2的所有待度量信息的比对结果均一致,则说明虚拟机VM2的可信状态为可信,否则,说明虚拟机VM2的可信状态为不可信。值得说明的是,上述的哈希计算的目的是为了将待度量信息转换为数据量较小的哈希值,便于后续的数据比对,降低比对运算量,提高安全度量效率,可以理解的是,待度量信息的数据量降低方式并不局限于上述具体的哈希计算,可根据实际情况选择具体方式来将待度量信息转换为数据量更小的数据,在此不做具体限定。
值得说明的是,PCIe接口的虚拟功能的数量并不局限于上述具体数值,可根据实际的度量对象的数量进行设置,但该具体数值受到PCIe接口本身的PCIe协议规定限制,最高可达216个虚拟功能。
与现有技术相比,本发明实施例提供的防护部件,独立于微处理器架构设置,PCIe接口和可信核,PCIe接口的两端分别与可信核和微处理器架构相连,PCIe接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。
可选地,所述防护部件为TCM、TPCM和TPM中的一种。
可选地,所述微处理器架构包括至少一个主机,所述度量对象为所述主机或运行在所述主机上的虚拟机。微处理器架构中的主机的数量以及运行在各个主机上的虚拟机的数量并不局限于上述具体的数值,可根据实际情况设置。
本发明又一实施例提供了一种防护部件,具体地,所述防护部件独立于微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端用于与所述微处理器架构相连,且所述PCIe接口具有分别与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能,
所述可信核用于执行以下操作:
通过第一虚拟功能接收第一度量对象的待度量信息,其中,所述第一虚拟功能为所述至少一个虚拟功能中的任意一个虚拟功能,所述第一度量对象为所述至少一个度量对象中的与所述第一虚拟功能对应的度量对象;
根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
具体地,参见图7,图7是本发明实施例提供的一种防护系统的结构示意图,防护系统包括独立设置的防护部件300和和微处理器架构400,防护部件300包括可信核301和PCIe接口,通过SR-IOV技术为PCIe接口增加n个虚拟功能function(func0~func(n-1)),每一虚拟function均配置有六个基址寄存器bar0~bar5(图中未示出);微处理器架构400中包括主机401和主机402。以主机401和主机402作为度量对象,可信核301通过func0接收主机401的待度量信息,包括主机401的bootloader的启动镜像、主机401的操作系统的代码段、主机401的基本信息(如主机401的bootloader和操作系统的内存占用情况)以及主机401内运行的进程的相关信息,可信核301上运行有可信代码,用于分别对主机401的各类待度量信息进行哈希运算,得到各类待度量信息的哈希值,防护部件300内部存储有与主机401的每一类待度量信息一一对应的预期哈希值,将计算得到的哈希值与对应的预期哈希值进行比对,若主机401的所有待度量信息的比对结果均一致,则说明主机401的可信状态为可信,否则,说明主机401的可信状态为不可信;可信核301通过func1接收主机402的待度量信息,包括主机402的bootloader的启动镜像、主机402的操作系统的代码段、主机402的基本信息(如主机402的bootloader和操作系统的内存占用情况)以及主机402内运行的进程的相关信息,可信核301上运行可信代码,用于分别对主机402的各类待度量信息进行哈希运算,得到各类待度量信息的哈希值,防护部件300内部存储有与主机402的每一类待度量信息一一对应的预期哈希值,可信核301将计算得到的哈希值与对应的预期哈希值进行比对,若主机402的所有待度量信息的比对结果均一致,则说明主机402的可信状态为可信,否则,说明主机402的可信状态为不可信。值得说明的是,上述的哈希计算的目的是为了将待度量信息转换为数据量较小的哈希值,便于后续的数据比对,降低比对运算量,提高安全度量效率,可以理解的是,待度量信息的数据量降低方式并不局限于上述具体的哈希计算,可根据实际情况选择具体方式来将待度量信息转换为数据量更小的数据,在此不做具体限定。
与现有技术相比,本发明实施例提供的防护部件,独立于微处理器架构设置,PCIe接口和可信核,PCIe接口的两端分别与可信核和微处理器架构相连,PCIe接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。
本发明又一实施例提供了一种防护部件,所述防护部件独立于微处理器架构设置,所述防护部件包括PCIe接口、可信核、地址转换模块和存储模块,所述可信核分别与所述地址转换模块和所述存储模块相连,所述PCIe接口的一端通过所述地址转换模块与所述可信核相连,所述PCIe接口的另一端用于与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能;
所述可信核用于执行以下操作:
通过第一虚拟功能接收第一度量对象的待度量信息,其中,所述第一虚拟功能为所述至少一个虚拟功能中的任意一个虚拟功能,所述第一度量对象为所述至少一个度量对象中的与所述第一虚拟功能对应的度量对象;
接收所述地址转换模块发送的第一可信区域地址,以所述第一可信区域地址对应的存储空间作为所述可信核在执行所述根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告时所需的存储空间;其中,所述第一可信区域由所述地址转换模块基于预设的地址映射关系,对所述第一虚拟功能上报的基址信息进行地址转换得到的所述存储模块中的第一可信区域地址,所述基址信息用于指示接收所述第一度量对象的待度量信息的所述第一虚拟功能及与所述待度量信息关联的操作类型对应的基址寄存器;
根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
具体地,参见图8,图8是本发明实施例提供的一种防护部件的结构示意图,防护部件300包括可信核301、PCIe接口、地址转换模块302和存储模块303,进一步地,防护部件300还包括片上网络NOC,可信核301通过片上网络NOC分别与存储模块303、地址转换模块302相连。可以理解的是,通过在PCIe接口的顶层设置了地址转换模块302,地址转换模块302具备地址转换功能。示例性的,通过PCIe接口的func0接收到的度量对象的待度量信息携带有基址信息,该基址信息用于指示func0以及该待度量信息关联的操作类型对应的基址寄存器,地址转换模块302通过对该待度量信息进行解析,得到基址信息,根据该基址信息查询预设的地址映射关系,找到与该基址信息对应的存储模块中的可信区域地址,将该可信区域地址上传给可信核301,以作为可信核301在执行根据当前接收到的待度量信息进行安全度量时所需的存储空间,实现了为每一度量对象的安全管理各分配一个对应的存储空间,使得各个度量对象的安全管理互不影响。
示例性的,基址信息中,高3位(addr[44:42])的值用于做6个地址区间范围的划分,分别对应六个基址寄存器bar0~bar5;其它位用于虚拟功能的区分。比如地址高3位的值为3'b001的地址区间作为PCIe接口202的bar1基址;地址高3位的值为3'b010的地址区间作为PCIe接口202的bar2基址;地址高3位的值为3'b011的地址区间作为PCIe接口202的bar3基址;地址高3位的值为3'b100的地址区间作为PCIe接口202的bar4基址;地址高3位的值为3'b101的地址区间作为PCIe接口202的bar5基址;地址高3位的值为其它值时的地址区间作为PCIe接口202的bar0基址。
具体地,参见图9,图9是本发明实施例提供的一种防护系统的结构示意图,防护系统包括防护部件300和微处理器架构400,防护部件300和微处理器架构400是独立设置的。防护部件300具备多个虚拟function(比如func0~func(n-1)),可以实现多个度量对象的安全度量;微处理器架构400中的主机401的逻辑架构包括CPU、固件4011、操作系统OS和虚拟机VM1。以虚拟机VM1和主机401作为度量对象,PCIe接口的func0与虚拟机VM1对应,PCIe接口的func0与主机401对应,通过PCIe接口的func0接收到的虚拟机VM1的待度量信息以及通过PCIe接口的func1接收到的主机401的待度量信息都分别携带有相应的基址信息,虚拟机VM1对应的基址信息用于指示func0以及虚拟机VM1的待度量信息关联的操作类型对应的基址寄存器,主机401对应的基址信息用于指示func1以及主机401的待度量信息关联的操作类型对应的基址寄存器,地址转换模块302分别通过对虚拟机VM1的待度量信息和主机401的待度量信息进行解析,得到虚拟机VM1对应的基址信息和主机401对应的基址信息,分别根据虚拟机VM1对应的基址信息和主机401对应的基址信息查询预设的地址映射关系,找到虚拟机VM1对应的基址信息所对应的存储模块中的可信区域地址,以及主机401对应的基址信息所对应的存储模块中的可信区域地址,将虚拟机VM1对应的可信区域地址和虚拟机VM1的待度量信息上传给可信核301;可信核301通过func0接收虚拟机VM1的待度量信息,包括虚拟机VM1的bootloader的启动镜像、虚拟机VM1的操作系统的代码段、虚拟机VM1的基本信息(如虚拟机VM1的bootloader和操作系统的内存占用情况)以及虚拟机VM1内部运行的进程的相关信息,可信核301上运行有可信代码,用于分别对虚拟机VM1的各类待度量信息进行哈希运算,得到各类待度量信息的哈希值,防护部件300内部存储有与虚拟机VM1的每一类待度量信息一一对应的预期哈希值,将计算得到的哈希值与对应的预期哈希值进行比对,若虚拟机VM1的所有待度量信息的比对结果均一致,则说明虚拟机VM1的可信状态为可信,否则,说明虚拟机VM1的可信状态为不可信,在该度量过程中,以虚拟机VM1对应的可信区域地址作为可信核301在执行根据虚拟机VM1的待度量信息进行安全度量时所需的存储空间;将主机401对应的可信区域地址和主机401的待度量信息上传给可信核301,主机401的待度量信息,包括主机401的bootloader的启动镜像、主机401的操作系统的代码段、主机401的基本信息(如主机401的bootloader和操作系统的内存占用情况)以及主机401运行的进程的相关信息,可信核301上运行可信代码,用于分别对主机401的各类待度量信息进行哈希运算,得到各类待度量信息的哈希值,防护部件300内部存储有与主机401的每一类待度量信息一一对应的预期哈希值,可信核301将计算得到的哈希值与对应的预期哈希值进行比对,若主机401的所有待度量信息的比对结果均一致,则说明主机401的可信状态为可信,否则,说明主机401的可信状态为不可信,在该度量过程中,以主机401对应的可信区域地址作为可信核301在执行根据主机401的待度量信息进行安全度量时所需的存储空间,实现了为虚拟机VM1和主机401的安全管理各分配一个独立的对应的存储空间,使得主机401和虚拟机VM1安全管理互不影响。
值得说明的是,上述的哈希计算的目的是为了将待度量信息转换为数据量较小的哈希值,便于后续的数据比对,降低比对运算量,提高安全度量效率,可以理解的是,待度量信息的数据量降低方式并不局限于上述具体的哈希计算,可根据实际情况选择具体方式来将待度量信息转换为数据量更小的数据,在此不做具体限定。
与现有技术相比,本发明实施例提供的防护部件,独立于微处理器架构设置,PCIe接口和可信核,PCIe接口的两端分别与可信核和微处理器架构相连,PCIe接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。另外,地址转换模块通过第一虚拟功能接收第一度量对象的待度量信息,对该待度量信息进行解析,得到其附带的基址信息,该基址信息用于指示第一虚拟功能以及与该待度量信息关联的操作类型对应的基址寄存器,然后利用预先设置的地址映射关系,将基址信息转换成第一可信区域地址,并将第一可信区域和待度量信息上传给可信核,使得存储模块中的第一可信区域对应的存储空间作为可信核在执行根据第一度量对象的待度量信息生成第一度量对象的度量报告时所需的存储空间,其中,地址映射关系可根据实际需求,通过软件进行修改,内存模块的存储空间不会被固定分配,内存模块的存储空间能够灵活分配给不同的安全度量进程。
可选地,所述防护部件为TCM、TPCM和TPM中的一种。
可选地,所述微处理器架构包括至少一个主机,所述度量对象为所述主机或运行在所述主机上的虚拟机。可以理解的是,在第一度量对象为指定主机时,防护部件通过利用第一虚拟功能从微处理器架构的指定主机获取待度量信息,以根据获取的待度量信息对指定主机进行安全度量;在第一度量对象为指定虚拟机时,防护部件通过利用第一虚拟功能从微处理器架构中的运行指定虚拟机的主机处获取指定虚拟机的待度量信息,以根据获取的待度量信息对指定虚拟机进行安全度量。由此可知,防护部件可通过多个虚拟功能实现与虚拟功能一一对应的主机或虚拟机的安全度量,无需额外增加防护部件,降低了硬件资源的消耗。
本发明一实施例提供了一种安全度量方法,所述方法适用于防护部件,所述防护部件独立于微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端用于与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能,所述方法由所述可信核执行,参见图10,图10是本发明实施例提供的一种安全度量方法的流程示意图,所述方法包括步骤S1~S2:
S1、通过第一虚拟功能接收第一度量对象的待度量信息,其中,所述第一虚拟功能为所述至少一个虚拟功能中的任意一个虚拟功能,所述第一度量对象为所述至少一个计算节点中的与所述第一虚拟功能对应的度量对象;
S2、根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
本发明实施例所提供的方法适用于防护部件,防护部件独立于微处理器架构设置,防护部件包括PCIe接口和可信核,PCIe接口的两端分别与可信核和微处理器架构相连,PCIe接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。
可选地,所述防护部件还包括地址转换模块和存储模块,所述方法还包括:
接收所述地址转换模块发送的第一可信区域地址,以所述第一可信区域地址对应的存储空间作为所述可信核在执行所述根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告时所需的存储空间;
其中,所述第一可信区域由所述地址转换模块基于预设的地址映射关系,对所述第一虚拟功能上报的基址信息进行地址转换得到的所述存储模块中的第一可信区域地址,所述基址信息用于指示接收所述第一度量对象的待度量信息的所述第一虚拟功能及与所述待度量信息关联的操作类型对应的基址寄存器。
本实施例中,地址转换模块通过第一虚拟功能接收第一度量对象的待度量信息,对该待度量信息进行解析,得到其附带的基址信息,该基址信息用于指示第一虚拟功能以及与该待度量信息关联的操作类型对应的基址寄存器,然后利用预先设置的地址映射关系,将基址信息转换成第一可信区域地址,并将第一可信区域和待度量信息上传给可信核,使得存储模块中的第一可信区域对应的存储空间作为可信核在执行根据第一度量对象的待度量信息生成第一度量对象的度量报告时所需的存储空间,其中,地址映射关系可根据实际需求,通过软件进行修改,内存模块的存储空间不会被固定分配,内存模块的存储空间能够灵活分配给不同的安全度量进程。
可选地,所述防护部件为TCM、TPCM和TPM中的一种。
可选地,所述微处理器架构包括至少一个主机,所述度量对象为所述主机或运行在所述主机上的虚拟机。
本实施例中,在第一度量对象为指定主机时,防护部件通过利用第一虚拟功能从微处理器架构的指定主机获取待度量信息,以根据获取的待度量信息对指定主机进行安全度量;在第一度量对象为指定虚拟机时,防护部件通过利用第一虚拟功能从微处理器架构中的运行指定虚拟机的主机处获取指定虚拟机的待度量信息,以根据获取的待度量信息对指定虚拟机进行安全度量。由此可知,防护部件可通过多个虚拟功能实现与虚拟功能一一对应的主机或虚拟机的安全度量,无需额外增加防护部件,降低了硬件资源的消耗。
可以理解的,本发明实施例所提供的安全管理方法能够适用于以上结合附图描述的实施例的防护部件,并能够实现类似地功能以及实现相似的技术效果,基于此,关于根据本发明实施例的安全管理方法所实现的具体步骤在此不再重复描述。
本发明实施例还提供了一种防护系统。所述防护系统包括防护部件和微处理器架构,所述防护部件独立于所述微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能;
所述微处理器架构用于执行以下操作:
将第一度量对象的待度量信息通过第一虚拟功能发送给所述可信核,所述第一度量对象为所述至少一个度量对象中的任意一个度量对象,所述第一虚拟功能为与所述第一度量对象对应的虚拟功能;
所述防护部件用于执行以下操作:
通过所述可信核根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
示例性的,结合图6,微处理器架构400包括主机401,虚拟机VM1和虚拟机VM2运行在主机401上,微处理器架构400将虚拟机VM1的待度量信息通过func0发送给可信核301,由防护部件300通过可信核301根据接收到的虚拟机VM1的待度量信息生成虚拟机VM1的度量报告,微处理器架构400将虚拟机VM2的待度量信息通过func1发送给可信核301,由防护部件300通过可信核301根据接收到的虚拟机VM2的待度量信息生成虚拟机VM2的度量报告。
本发明实施例通过设置一种包括防护部件和微处理器架构的防护系统,防护部件独立于微处理器架构设置,防护部件包括PCIe接口和可信核,PCIe接口的两端分别与可信核和微处理器架构相连,PCIe接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。
可选地,所述防护部件还包括地址转换模块和存储模块,其中,所述可信核分别与所述地址转换模块和所述存储模块相连;
所述防护部件还用于执行以下操作:
通过所述地址转换模块基于预设的地址映射关系,对所述第一虚拟功能上报的基址信息进行地址转换得到的所述存储模块中的第一可信区域地址,所述基址信息用于指示接收所述第一度量对象的待度量信息的所述第一虚拟功能及与所述待度量信息关联的操作类型对应的基址寄存器;
通过可信核接收所述地址转换模块发送的第一可信区域地址,以所述第一可信区域地址对应的存储空间作为所述可信核在执行所述根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告时所需的存储空间。
在本实施例中,地址转换模块通过第一虚拟功能接收第一度量对象的待度量信息,对该待度量信息进行解析,得到其附带的基址信息,该基址信息用于指示第一虚拟功能以及与该待度量信息关联的操作类型对应的基址寄存器,然后利用预先设置的地址映射关系,将基址信息转换成第一可信区域地址,并将第一可信区域和待度量信息上传给可信核,使得存储模块中的第一可信区域对应的存储空间作为可信核在执行根据第一度量对象的待度量信息生成第一度量对象的度量报告时所需的存储空间,其中,地址映射关系可根据实际需求,通过软件进行修改,内存模块的存储空间不会被固定分配,内存模块的存储空间能够灵活分配给不同的安全度量进程。
本发明实施例还提供了一种非暂时性计算机可读存储介质,图11示出了根据本实施例的非暂时性计算机可读存储介质的示意图,计算机可读存储介质500上存储有指令501,指令501例如是计算机可读指令。当计算机可读指令由可信核运行时,可以执行参照以上附图描述的安全管理方法。计算机可读存储介质包括但不限于例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。例如,计算机可读存储介质可以连接于防护部件,接着,在防护部件运行计算机可读存储介质上存储的计算机可读指令的情况下,可以进行如上所描述的安全管理方法。
本发明实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序包括计算机可读指令,该计算机可读指令存储在计算机可读存储介质中。计算设备的处理器可以从计算机可读存储介质读取该计算机可读指令,处理器执行该计算机可读指令,使得该计算设备执行上述各个实施例中描述的安全管理方法。
利用本发明实施例提供的防护部件、安全管理方法和防护系统,防护部件独立于微处理器架构设置,防护部件包括PCIe接口和可信核,PCIe接口的两端分别与可信核和微处理器架构相连,PCIe接口具有至少一个虚拟功能,每一虚拟功能能够分别与微处理器架构中的每一度量对象建立起一一对应的映射关系,从而使得防护部件能够利用虚拟功能和度量对象的映射关系,从微处理器架构获取多个度量对象的待度量信息以进行安全度量,实现了使用一个防护部件对多个度量对象进行安全度量的目的,无需额外增加防护部件,降低了硬件资源的浪费。
本领域技术人员能够理解,本发明所披露的内容可以出现多种变型和改进。例如,以上所描述的各种设备或组件可以通过硬件实现,也可以通过软件、固件、或者三者中的一些或全部的组合实现。
此外,虽然本发明对根据本发明实施例的系统中的某些单元做出了各种引用,然而,任何数量的不同单元可以被使用并运行在客户端和/或服务器上。单元仅是说明性的,并且系统和方法的不同方面可以使用不同单元。
本发明中使用了流程图用来说明根据本发明的实施例的方法的步骤。应当理解的是,前面或后面的步骤不一定按照顺序来精确的进行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中。
本领域普通技术人员可以理解上述方法中的全部或部分的步骤可通过计算机程序来指令相关硬件完成,程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明并不限制于任何特定形式的硬件和软件的结合。
除非另有定义,这里使用的所有术语具有与本发明所属领域的普通技术人员共同理解的相同含义。还应当理解,诸如在通常字典里定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。
以上是对本发明的说明,而不应被认为是对其的限制。尽管描述了本发明的若干示例性实施例,但本领域技术人员将容易地理解,在不背离本发明的新颖教学和优点的前提下可以对示例性实施例进行许多修改。因此,所有这些修改都意图包含在权利要求书所限定的本发明范围内。应当理解,上面是对本发明的说明,而不应被认为是限于所公开的特定实施例,并且对所公开的实施例以及其他实施例的修改意图包含在所附权利要求书的范围内。本发明由权利要求书及其等效物限定。
Claims (10)
1.一种防护部件,其特征在于,所述防护部件独立于微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端用于与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能,
所述可信核用于执行以下操作:
通过第一虚拟功能接收第一度量对象的待度量信息,其中,所述第一虚拟功能为所述至少一个虚拟功能中的任意一个虚拟功能,所述第一度量对象为所述至少一个度量对象中的与所述第一虚拟功能对应的度量对象;
根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
2.如权利要求1所述的防护部件,其特征在于,所述防护部件还包括地址转换模块和存储模块,其中,所述可信核分别与所述地址转换模块和所述存储模块相连;
所述可信核还用于执行以下操作:
接收所述地址转换模块发送的第一可信区域地址,以所述第一可信区域地址对应的存储空间作为所述可信核在执行所述根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告时所需的存储空间;
其中,所述第一可信区域由所述地址转换模块基于预设的地址映射关系,对所述第一虚拟功能上报的基址信息进行地址转换得到的所述存储模块中的第一可信区域地址,所述基址信息用于指示接收所述第一度量对象的待度量信息的所述第一虚拟功能及与所述待度量信息关联的操作类型对应的基址寄存器。
3.如权利要求1所述的防护部件,其特征在于,所述防护部件为TCM、TPCM和TPM中的一种。
4.如权利要求1所述的防护部件,其特征在于,所述微处理器架构包括至少一个主机,所述度量对象为所述主机或运行在所述主机上的虚拟机。
5.一种安全度量方法,其特征在于,所述方法适用于防护部件,所述防护部件独立于微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端用于与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能,所述方法由所述可信核执行,所述方法包括:
通过第一虚拟功能接收第一度量对象的待度量信息,其中,所述第一虚拟功能为所述至少一个虚拟功能中的任意一个虚拟功能,所述第一度量对象为所述至少一个计算节点中的与所述第一虚拟功能对应的度量对象;
根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
6.如权利要求5所述的安全度量方法,其特征在于,所述防护部件还包括地址转换模块和存储模块,所述方法还包括:
接收所述地址转换模块发送的第一可信区域地址,以所述第一可信区域地址对应的存储空间作为所述可信核在执行所述根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告时所需的存储空间;
其中,所述第一可信区域由所述地址转换模块基于预设的地址映射关系,对所述第一虚拟功能上报的基址信息进行地址转换得到的所述存储模块中的第一可信区域地址,所述基址信息用于指示接收所述第一度量对象的待度量信息的所述第一虚拟功能及与所述待度量信息关联的操作类型对应的基址寄存器。
7.如权利要求5所述的安全度量方法,其特征在于,所述防护部件为TCM、TPCM和TPM中的一种。
8.如权利要求5所述的安全度量方法,其特征在于,所述微处理器架构包括至少一个主机,所述度量对象为所述主机或运行在所述主机上的虚拟机。
9.一种防护系统,其特征在于,所述防护系统包括防护部件和微处理器架构,所述防护部件独立于所述微处理器架构设置,所述防护部件包括PCIe接口和可信核,所述PCIe接口的一端与所述可信核相连,所述PCIe接口的另一端与所述微处理器架构相连,且所述PCIe接口具有与所述微处理器架构中的至少一个度量对象一一对应的至少一个虚拟功能;
所述微处理器架构用于执行以下操作:
将第一度量对象的待度量信息通过第一虚拟功能发送给所述可信核,所述第一度量对象为所述至少一个度量对象中的任意一个度量对象,所述第一虚拟功能为与所述第一度量对象对应的虚拟功能;
所述防护部件用于执行以下操作:
通过所述可信核根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告,所述度量报告用于指示所述第一度量对象的可信状态。
10.如权利要求9所述的防护系统,其特征在于,所述防护部件还包括地址转换模块和存储模块,其中,所述可信核分别与所述地址转换模块和所述存储模块相连;
所述防护部件还用于执行以下操作:
通过所述地址转换模块基于预设的地址映射关系,对所述第一虚拟功能上报的基址信息进行地址转换得到的所述存储模块中的第一可信区域地址,所述基址信息用于指示接收所述第一度量对象的待度量信息的所述第一虚拟功能及与所述待度量信息关联的操作类型对应的基址寄存器;
通过可信核接收所述地址转换模块发送的第一可信区域地址,以所述第一可信区域地址对应的存储空间作为所述可信核在执行所述根据所述第一度量对象的待度量信息生成所述第一度量对象的度量报告时所需的存储空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311575859.0A CN117574464A (zh) | 2023-11-23 | 2023-11-23 | 一种防护部件、安全度量方法及防护系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311575859.0A CN117574464A (zh) | 2023-11-23 | 2023-11-23 | 一种防护部件、安全度量方法及防护系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117574464A true CN117574464A (zh) | 2024-02-20 |
Family
ID=89862139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311575859.0A Pending CN117574464A (zh) | 2023-11-23 | 2023-11-23 | 一种防护部件、安全度量方法及防护系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117574464A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118260027A (zh) * | 2024-05-29 | 2024-06-28 | 飞腾信息技术有限公司 | 一种安全虚拟机管理方法和相关设备 |
-
2023
- 2023-11-23 CN CN202311575859.0A patent/CN117574464A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118260027A (zh) * | 2024-05-29 | 2024-06-28 | 飞腾信息技术有限公司 | 一种安全虚拟机管理方法和相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3582129B1 (en) | Technologies for secure hardware and software attestation for trusted i/o | |
US10152600B2 (en) | Methods and systems to measure a hypervisor after the hypervisor has already been measured and booted | |
JP5905586B2 (ja) | 仮想マシンおよびネストにされた仮想マシンマネージャの認証されたランチ | |
KR20200036732A (ko) | 신뢰 컨테이너들의 고속 론칭을 위한 기술들 | |
US9208292B2 (en) | Entering a secured computing environment using multiple authenticated code modules | |
US11281768B1 (en) | Firmware security vulnerability verification service | |
JP4990055B2 (ja) | ハードウェアプラットフォームクラスの識別を高速化するシステム及び方法 | |
WO2009123640A1 (en) | Virtual machine manager system and methods | |
EP2817755B1 (en) | Directed wakeup into a secured system environment | |
US9806959B2 (en) | Baseboard management controller (BMC) to host communication through device independent universal serial bus (USB) interface | |
US10289832B2 (en) | System and method for securing embedded controller communications by verifying host system management mode execution | |
US11531760B1 (en) | Baseboard management controller (BMC)-based security processor | |
CN117574464A (zh) | 一种防护部件、安全度量方法及防护系统 | |
US11475131B2 (en) | Hypervisor level signature checks for encrypted trusted execution environments | |
US11321077B1 (en) | Live updating of firmware behavior | |
US20190138730A1 (en) | System and Method to Support Boot Guard for Original Development Manufacturer BIOS Development | |
US10860512B2 (en) | Processor interconnect link training system | |
US11775649B2 (en) | Perform verification check in response to change in page table base register | |
US7844809B2 (en) | Verifying a trusted SMI handler | |
US20170249458A1 (en) | Application memory protection using a host page table switching virtual machine function | |
US9792437B2 (en) | System and method for securing embedded controller communications by providing a security handshake | |
US20190179788A1 (en) | Hot plugging of virtual bridges in a virtual pci system | |
US11847226B1 (en) | Baseboard Management Controller (BMC)-based security processor | |
US20240202018A1 (en) | Facilitating Power Management of a Hardware Device by a Virtual Machine | |
Svensson | Strict separation between OS and USB driver using a hypervisor |
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 |