CN110770729B - 用于证明虚拟机完整性的方法和设备 - Google Patents

用于证明虚拟机完整性的方法和设备 Download PDF

Info

Publication number
CN110770729B
CN110770729B CN201780087951.9A CN201780087951A CN110770729B CN 110770729 B CN110770729 B CN 110770729B CN 201780087951 A CN201780087951 A CN 201780087951A CN 110770729 B CN110770729 B CN 110770729B
Authority
CN
China
Prior art keywords
attestation
report
nonce
server
vek
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
Application number
CN201780087951.9A
Other languages
English (en)
Other versions
CN110770729A (zh
Inventor
米哈伊·塞尔维亚
伊万-西尔维乌·弗勒斯恰努
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN110770729A publication Critical patent/CN110770729A/zh
Application granted granted Critical
Publication of CN110770729B publication Critical patent/CN110770729B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities

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)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及一种通过证明服务器(230)来证明服务器(210)上运行的虚拟机监视器(hypervisor,简称HV)支持的虚拟机(virtual machine,简称VM)的完整性的方法。所述方法包括以下步骤:使用虚拟签注密钥(virtual endorsement key,简称vEK)加密第一随机数;向所述VM(212)发送VM证明请求,并向所述HV(214)发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;从所述VM(212)接收VM证明报告并从所述HV(214)接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM(212)和所述HV(214)生成;验证所述VM证明报告是否基于所述第一随机数;基于所述VM证明报告的验证和所述HV证明报告确认所述VM(212)的完整性。此外,本发明还涉及相应的系统(200)以及相应的服务器(230、210)。

Description

用于证明虚拟机完整性的方法和设备
技术领域
本发明大体涉及虚拟化计算机系统的证明领域。更具体地说,本发明涉及用于证明虚拟机完整性的方法和设备。
背景技术
可信计算组织(trusted computing group,简称TCG)已经定义了一些手段,通过这些手段可以度量平台的软件完整性,并且随后由远程验证程序或证明服务器进行验证。验证平台完整性的过程称为证明或远程证明(请参阅“常规BIOS的TCG PC客户端特定实施规范”,http://www.trustedcomputinggroup.org/wp-content/uploads/TCG_PCClientImplementation_1-21_1_00.pdf),以便强调所述完整性度量的验证应该由不在将要证明的平台上运行的实体执行这一事实。
随着虚拟化软件的出现,已经出现了远程证明研究的新方向,即虚拟平台的远程证明。尤其是,TCG已经定义了(参见“虚拟化可信平台架构规范”,http://www.trustedcomputinggroup.org/wpcontent/uploads/TCG_VPWG_Architecture_V1-0_R0-26_FINAL.pdf)虚拟平台远程证明的两个基本要求:深度证明和层绑定。
为更好地说明如何执行虚拟平台的远程证明,图1示出了服务器不同组件的示意图,其中支持虚拟可信平台模块(virtual trusted platform module,简称vTPM)和虚拟可信度量核心根(virtual core roots of trust for measurement,简称vCRTM)的虚拟机监视器(hypervisor,简称HV)在支持物理可信度量核心根(physical core root of trustfor measurement,简称pCRTM)和物理可信平台模块(physical trusted platformmodule,简称pTPM)的物理平台(计算节点)上运行。此外,两台虚拟机(virtual machine,简称VM)将在所述虚拟机监视器上运行。
所述虚拟机(virtual machine,简称VM)依赖虚拟可信根(virtual root oftrust,简称vRoT),其在软件中实现并且等同于物理平台的物理可信(physical root oftrust,简称pRoT)。所述vRoT在所述虚拟机监视器上运行,并协助执行分配给它们的虚拟机或平台的证明过程。它们在所述虚拟平台本身也被视为具有内在可信性,因为(如在pRoT的情况下)它们使用与其应该证明完整性的其中一种软件不同的执行域。对于所述pRoT,通过所述pRoT在不同芯片(即,pTPM)内执行这一事实提供执行域分离。对于所述vRoT,通过所述虚拟机监视器或虚拟化层的功能提供所述执行域分离,以将所述虚拟平台代码与执行所述vRoT的HV代码的执行分开。此外,所述pTPM和所述vTPM分别提供实现物理平台或虚拟平台远程证明所需的pRoT/vRoT实现方式。
如上所述,所述vRoT是在与应予以证明的其中一种软件不同的执行环境中运行的软件组件。根据所述深度证明要求,对于虚拟平台或虚拟机的远程证明,不仅需要验证其软件度量,还需要验证实现所述vRoT的底层虚拟化层的度量。这可以通过对所述虚拟化层或HV和所述虚拟平台或VM使用远程证明来实现,并且仅基于其度量验证和虚拟化层的综合结果来判断后者的完整性状态。
根据深度证明的要求,通过远程证明对虚拟化层度量的成功验证提供了一些保证,即所述vRoT(在所述虚拟化层或HV中实现)未被篡改,并且所述虚拟化层按预期方式运行。
根据该验证结果,还可以推断出所述虚拟化层已经将正确的一组vRoT实例(例如,vCRTM和vTPM实例)分配给所述虚拟平台。然而,由于以下原因,这还不够。所述虚拟化层负责运行多个虚拟平台的vRoT实例集,但没有提供有关将特定vRoT实例集分配给特定虚拟平台的明确保证。甚至没有以下明确保证:分配给所述虚拟平台的vRoT实例集确实在该虚拟化层上运行。TCG还将此问题称为层绑定问题(请参阅上面提到的参考文件“虚拟化可信平台架构规范”)。应提供远程验证程序,证明所述虚拟平台正在使用在指定虚拟化层上运行的指定vRoT实例集。在没有这种证明的情况下,所述完整性验证结果的可靠性会降低,因为用于生成完整性报告的vRoT存在不确定性,并且验证结果本身无法完全可信。
鉴于上述情况,不满足深度证明和层绑定要求的远程证明过程仍然能够计算虚拟平台的完整性状态,但是该状态的相关性可能会令人质疑。特别是,在缺乏深度证明和层绑定提供的保证的情况下,可能难以确定所述虚拟平台所依赖的虚拟可信根(virtual rootof trust,简称vRoT)是否已被篡改或伪造。
相反,满足深度证明和层绑定要求的远程证明过程可确保对所述vRoT(以及由它们生成的完整性报告)的信任,因为它们可以有效地成为从硬件RoT开始的信任链的一部分,例如,物理可信度量核心根(physical core root of trust measurement,简称pCRTM)和物理TPM(参见“TCG证明PTS协议:绑定到TNC IF-M”,http://www.trustedcomputinggroup.org/resources/tcg_attestation_pts_protocol_binding_to_tnc_ifm)。
然而,尚未提供允许以有效的可扩展方式在软件级别实现深度证明和层绑定要求的解决方案。
在WO2016085592 A1中,描述了一种解决深度证明和层绑定问题的可扩展解决方案,其中该解决方案基于安全区域(即,英特尔SGX技术)以提供vTPM在指定HV上运行的证据。该解决方案可以同时扩展并满足深度证明和层绑定的要求,但是它高度依赖于所述物理平台中的特定硬件支持(即SGX支持、TXT支持、一次写入寄存器等)。
因此,需要用于证明虚拟机完整性的改进方法和设备。
发明内容
本发明的目的在于提供用于证明虚拟机完整性的改进方法和设备。所述设备可以是计算设备,例如数据中心服务器、个人计算机或终端设备。在整个说明书中,“服务器”一词指的是上文定义的设备。
上述和其它目的通过独立权利要求的主题来实现。根据从属权利要求、说明书以及附图,进一步的实现形式是显而易见的。
根据第一方面,本发明涉及一种通过证明服务器来证明服务器上运行的虚拟机监视器(hypervisor,简称HV)支持的虚拟机(virtual machine,简称VM)的完整性的方法。所述方法包括以下步骤:使用虚拟签注密钥(virtual endorsement key,简称vEK)加密第一随机数;向所述VM发送VM证明请求并向所述HV发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;从所述VM接收VM证明报告并从所述HV接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM和所述HV生成;验证所述VM证明报告是否基于所述第一随机数;基于所述VM证明报告的验证和所述HV证明报告确认所述VM的完整性。
根据所述第一方面,在所述方法的第一种可能的实现方式中,所述方法还包括以下步骤:验证所述HV证明报告是否包括所述vEK和所述第一随机数;如果所述VM证明报告基于所述第一随机数且所述HV证明报告包括所述vEK和所述第一随机数,则确认所述VM的完整性。
根据所述第一方面或其第一种实现方式,在所述方法的第二种可能的实现方式中,根据可信计算组织(trusted computing group,简称TCG)定义的隐私CA(privacycertificate authority,简称PCA)协议来执行所述第一随机数的加密。
根据第二方面,本发明涉及一种通过服务器上运行的虚拟机(virtual machine,简称VM)和虚拟机监视器(hypervisor,简称HV)生成证明报告的方法。所述方法包括以下步骤:所述VM接收VM证明请求,且所述HV接收HV证明请求,其中所述VM证明请求包括使用虚拟签注密钥(virtual endorsement key,简称vEK)加密的已加密第一随机数;所述HV上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)根据存储在所述vTPM中的vEK解密所述已加密第一随机数,以响应来自所述VM的解密请求;所述VM从所述vTPM接收第一引用,其中所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数;所述VM生成有关所述VM的VM证明报告,其中所述VM证明报告包括所述第一引用;所述HV生成有关所述HV的HV证明报告。
根据所述第二方面,在所述方法的第一种可能的实现方式中,所述方法还包括以下步骤:所述vTPM存储所述第一随机数和所述vEK,所述已存储的第一随机数和vEK可通过所述HV访问;所述HV读取所述已存储的第一随机数和vEK,其中所述已生成的HV证明报告包括所述已存储的第一随机数和vEK。
根据所述第二方面或其第一种实现方式,在所述方法的第二种可能的实现方式中,所述方法还包括以下步骤:所述VM对所述第一随机数进行散列;所述VM根据所述已散列的第一随机数生成第一引用;所述HV对所述第一随机数和所述vEK进行散列;所述HV从所述服务器的物理可信平台模块(physical trusted platform module,简称pTPM)接收第二引用,其中所述第二引用是基于所述已散列第一随机数和所述vEK生成的,所述第二引用使用物理证明标识密钥(physical attestation identity key,简称pAIK)签名;所述HV将所述第二引用包含在有关所述HV的HV证明报告中。
根据第三方面,本发明涉及一种证明服务器,用于证明服务器上运行的虚拟机监视器(hypervisor,简称HV)支持的虚拟机(virtual machine,简称VM)完整性,其中所述证明服务器包括:处理器,用于使用虚拟签注密钥(virtual endorsement key,简称vEK)加密第一随机数;发送单元,用于向所述VM发送VM证明请求并向所述HV发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;接收单元,用于从所述VM接收VM证明报告并从所述HV接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM和所述HV生成。所述处理器还用于验证所述VM证明报告是否基于所述第一随机数,并基于所述VM证明报告的验证和所述HV证明报告确认所述VM的完整性。所述发送单元和接收单元可以通过收发器或单独的独立单元来实现。
根据所述第三方面,在所述证明服务器的第一种可能的实现方式中,所述证明服务器包括所述vEK的公共部分(vEKPUB)、虚拟证明标识密钥(virtual attestationidentity key,简称vAIK)的公共部分(vAIKPUB)、物理签注密钥(physical endorsementkey,简称pEK)的公共部分(pEKPUB)和物理证明标识密钥(physical attestation identitykey,简称pAIK)的公共部分(pAIKPUB);所述处理器还用于:通过所述VM证明报告、所述vAIKPUB和所述vEKPUB确认所述VM的完整性,并通过所述HV证明报告、所述pAIKPUB和所述pEKPUB确认所述HV的完整性。
根据第四方面,本发明涉及一种服务器,其用于运行虚拟机(virtual machine,简称VM)和虚拟机监视器(hypervisor,简称HV)。所述虚拟机VM用于接收VM证明请求,其中所述VM证明请求包括使用虚拟签注密钥(virtual endorsement key,简称vEK)加密的已加密第一随机数。所述虚拟机监视器(hypervisor,简称HV)用于:接收HV证明请求;由所述HV上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)根据存储在所述vTPM中的vEK解密所述已加密第一随机数,以响应来自所述VM的解密请求。所述虚拟机VM还用于:从所述vTPM接收第一引用,其中所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数;生成有关所述VM的VM证明报告,其中所述VM证明报告包括所述第一引用。所述虚拟机监视器HV还用于生成有关所述HV的HV证明报告。
根据第五方面,本发明涉及一种包括证明服务器和服务器的系统。所述证明服务器包括:处理器,用于使用虚拟签注密钥(virtual endorsement key,简称vEK)加密第一随机数;收发器,用于:向所述VM发送VM证明请求并向所述HV发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;用于从所述VM接收VM证明报告并从所述HV接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM和所述HV生成。所述处理器还用于验证所述VM证明报告是否基于所述第一随机数,并基于所述VM证明报告的验证和所述HV证明报告确认所述VM的完整性。所述服务器包括在所述服务器上运行的虚拟机(virtualmachine,简称VM)和虚拟机监视器(hypervisor,简称HV)。所述虚拟机VM用于接收VM证明请求,其中所述VM证明请求包括使用虚拟签注密钥(virtual endorsement key,简称vEK)加密的已加密第一随机数。所述虚拟机监视器HV用于:接收HV证明请求;由所述HV上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)根据存储在所述vTPM中的vEK解密所述已加密第一随机数,以响应来自所述VM的解密请求。所述虚拟机VM还用于:从所述vTPM接收第一引用,其中所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数;生成有关所述VM的VM证明报告,其中所述VM证明报告包括所述第一引用。所述虚拟机监视器(hypervisor,简称HV)还用于生成有关所述HV的HV证明报告。
根据第六方面,本发明涉及一种计算机程序,其包括程序代码,用于在计算机上运行时,执行所述第一方面或其实现方式中的任一种所述的方法,或所述第二方面或其实现方式中的任一种所述的方法。
本发明可以硬件和/或软件的方式来实现。
附图说明
本发明的具体实施例将结合以下附图进行描述,其中:
图1示出了包括虚拟机监视器和两台虚拟机的服务器的示意图;
图2示出了实施例提供的包括证明服务器和服务器(包括虚拟机监视器和虚拟机)的系统的示意图;
图3示出了实施例提供的包括证明服务器和服务器(包括虚拟机监视器和虚拟机)的系统的示意图;
图4示出了实施例提供的包括证明服务器和服务器(包括虚拟机监视器和虚拟机)的系统的示意图;
图5示出了实施例提供的用于证明虚拟机完整性的方法的若干步骤的示意图;
图6示出了实施例提供的用于证明虚拟机监视器完整性的方法的若干步骤的示意图;
图7示出了实施例提供的用于证明虚拟机完整性的方法的示意图;
图8示出了实施例提供的用于通过服务器上运行的虚拟机和虚拟机监视器生成证明报告的方法的示意图。
在各附图中,相同的或至少功能等同的特征使用相同的标号。
具体实施方式
以下结合附图进行描述,所述附图是本发明的一部分,并通过图解说明的方式示出可以实施本发明的具体方面。可以理解的是,在不脱离本发明范围的情况下,可以利用其它方面,并做出结构或逻辑上的改变。因此,以下详细的描述并不当作限定,本发明的范围由所附权利要求书界定。
例如,可以理解的是,与所描述方法有关的披露对于用于执行所述方法的对应设备或系统也同样适用,反之亦然。例如,如果描述了特定方法步骤,则对应设备可以包括用于执行所描述的方法步骤的单元,即使此类单元没有在图中明确描述或图示。此外,应理解,本文所描述的各种示例性方面的特性可以相互组合,除非另外明确说明。
图2示出了实施例提供的包括证明服务器230和服务器210(包括虚拟机监视器214和虚拟机212)的系统200的示意图。
在一实施例中,所述证明服务器230和所述服务器210可以通过通信信道220(例如,有线或无线通信信道220)进行通信。
所述证明服务器230可以证明所述服务器210上运行的虚拟机监视器(hypervisor,简称HV)214支持的虚拟机(virtual machine,简称VM)212的完整性。在一实施例中,所述证明服务器230包括:处理器232,用于使用虚拟签注密钥(virtualendorsement key,简称vEK)加密第一随机数;收发器234。所述收发器234可以用于:向所述VM 212发送VM证明请求并向所述HV 214发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;从所述VM 212接收VM证明报告并从所述HV 214接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM 212和所述HV 214生成。此外,所述处理器232还用于验证所述VM证明报告是否基于所述第一随机数,并基于所述VM证明报告的验证和所述HV证明报告确认所述VM 212的完整性。
虽然前一段落中提到了收发器,但可以明确的是这并非唯一可能的实现方式。该实施例和以下实施例中的发送和接收功能也可以由单独的独立单元执行,例如发送器(发送单元)和接收器(接收单元)。
所述服务器210可以通过所述VM和所述HV生成在所述服务器210上运行的虚拟机VM 212和所述虚拟机监视器HV 214的证明报告。在一实施例中,所述虚拟机VM 212和所述虚拟机监视器HV 214用于分别从所述证明服务器230接收所述VM证明请求和所述HV证明请求。
所述VM证明请求可以包括使用虚拟签注密钥(virtual endorsement key,简称vEK)加密的已加密第一随机数。此外,所述HV 214可用于由所述HV 214上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)根据存储在所述vTPM中的vEK解密所述已加密第一随机数,以响应来自所述VM 212的解密请求。所述虚拟机VM 212还可用于:从所述vTPM接收第一引用,其中所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数;生成有关所述VM的VM证明报告,其中所述VM证明报告包括所述第一引用。
所述虚拟机监视器HV 214还可用于有关所述HV 214的HV证明报告。
在本发明的实施例中,在所述证明服务器230或远程验证程序收到所述VM证明报告或完整性报告之后,启动所述HV 214的证明。在本发明的实施例中,不同的信道用于证明所述VM 212和所述HV 214,即所述证明服务器230独立连接至VM 212和HV 214,如图3中的示意图所示。本发明的该实施例允许进行多个信道的独立深度证明并且具有以可扩展的方式执行所述VM 212和所述HV 214的深度证明的优点。
此外,在本发明的实施例中,所述服务器210可以支持在同一HV 214上运行的多个VM,并且所述证明服务器230一次可以证明多个VM。所述远程验证程序或证明服务器230收到多个VM的所有完整性报告或证明报告之后,所述证明服务器230即可启动所述HV214的证明。由于所述HV 214的证明是在所有VM的证明之后执行的,因此可以扩展该解决方案。
本发明的实施例还允许在前述多信道独立深度证明中实现可扩展的层绑定。为实现这一目标,在本发明的实施例中,层绑定机制适合多信道独立深度证明的架构,并且可扩展性有利地保持不变,如以下步骤中的解释。
首先,使用VM证明期间的已加密随机数,其只能由vRoT(即,所述HV 214上运行的vTPM)解密,所述vRoT保存所述vRoT实例标识密钥和所述vRoT实例完整性报告签名密钥的私有部分。
其次,在所述vRoT实例(在HV 214上运行)解密所述随机数期间,所示标识密钥的公共部分(用于解密的密钥)和所述已解密随机数被添加到HV 214中维护的列表中。
再次,在所述HV证明期间,多次执行上述步骤创建的列表包含在所述HV完整性报告或HV证明报告中,并且随后在验证所述VM完整性报告或VM证明报告期间将考虑该列表,以确定是否满足层绑定要求。
因此,本发明的实施例提供了解决方案的优点:该解决方案允许以有效的可扩展方式在软件级别实现深度证明和层绑定要求。
图4A-4B示出了所述系统200的实施例的示意图,所述系统包括实施例提供的证明服务器230和实施例提供的服务器210,所述服务器210包括所述虚拟机监视器214、所述虚拟机212和所述物理平台或计算节点216。
在本发明的该实施例中,所述证明服务器230用于根据上述多个信道独立深度证明方法执行所述VM 212的VM证明和所述HV 214的HV证明。所述VM 212和所述HV 214中的每一个都可以作为独立平台进行证明,而随后所述证明服务器230可以将每个VM证明结果与所述HV 214(VM在其上运行)中的一个关联。该实施例具有以下优点:适当地满足了深度证明要求,并且所述VM完整性报告或证明报告建立在基于HV 214的pRoT的CoT之上。
由于所述VM和所述HV 214可以视为独立平台,根据本发明的实施例,用于签署每个平台的完整性报告及其黄金度量的密钥(AIK–证明标识密钥)在所述证明服务器230中预注册,其中所述黄金度量定义一组测量值,所述测量值描述被视为未被篡改的平台软件状态。有几种现成的方法可用于收集和注册所述证明服务器230中的黄金度量,这些方法在本发明的范围之外,注册AIK的方法也是如此。
满足上述前提条件后,即可执行TCG定义的证明协议(参见“TCG证明PTS协议:绑定到TNC IF-M”:http://www.trustedcomputinggroup.org/resources/tcg_attestation_pts_protocol_binding_to_tnc_ifm),以便为每个平台创建完整性报告或证明报告并将其传递到所述证明服务器230,以进行评估。
在本发明的实施例中,此类证明协议的主要步骤可以总结如下:
首先,所述证明服务器230通过所述通信信道220与目标平台(即,VM 212或HV214)上运行的证明代理建立网络连接。
其次,所述证明服务器230生成随机数并将其包含在发送至所述VM 212或HV214的证明代理的证明请求中(图4A中的步骤1.1和2.1)。
再次,所述证明代理收集完整性数据并从所述pTPM/vTPM请求签名或引用(图4A中的步骤1.3和2.3)。然后,它还会提供从所述证明服务器230接收的随机数,以使其也包括在所述签名数据中。这确保了信息的新鲜度(即,反重放保护)。最后,所述完整性数据与所述引用(共同构成所述完整性报告)将一起发送回所述证明服务器230,以进行评估(图4A中的步骤1.4和2.4)。
根据深度证明要求,只有在所述证明服务器230成功收到在其上运行的所有目标VM的完整性报告之后,才应该执行所述HV证明。所述证明服务器230的处理器232可以用于执行该序列,即仅在所述VM证明完成后才启动所述HV证明。如果所述处理器232无法执行该序列,则所述VM完整性报告或证明报告可能无法完全可信,因为潜在的攻击者可以具有(可以说是短的)时间窗口来危害所述vRoT而不在当前证明周期内被检测到。
在本发明的实施例中,所述证明服务器230收到所述VM完整性报告和相应的HV完整性报告后,所述证明服务器230即可验证两种平台类型(即VM和HV 214)的完整性状态。在开始验证在其上运行的VM的任何完整性报告之前,验证所述HV的完整性报告。这确保仅在通过所述HV完整性报告验证可以表明其各自vRoT未被篡改的情况下才验证VM的完整性报告。
上述TCG规范“TCG证明PTS协议:绑定到TNC IF-M”中描述了用于执行平台完整性报告验证的过程的一个示例,并且下文给出了该过程的主要步骤。
第1步:使用之前为该特定平台注册的AIK公共部分验证所述引用的签名。这可以有效地证明(或反驳)所述完整性报告中其余数据的完整性。
第2步:根据所述证明服务器230在证明请求的证明过程开始时发送的值,来检查作为所述引用中签名数据的一部分的随机数(图4B中的步骤3.2.1和步骤3.1.1)。
第3步:如果已签名引用和随机数的验证成功,则所述证明服务器230将根据为该平台注册的黄金度量或适用于该平台的配置文件(它通常不能扩展至为每个平台注册黄金度量,因为多个平台具有相同的软件配置)验证所述完整性报告中的测量值。
根据本发明的实施例生成的证明报告提供强深度证明和层绑定证明。
图5示出了实施例提供的用于证明虚拟机VM 212完整性的方法的若干步骤的示意图。
在该实施例中,首先,所述证明服务器230或证明机构(attestation authority,简称AA)使用虚拟签注密钥(virtual endorsement key,简称vEK)的公共部分来加密发送至所述VM 212的随机数。类似于pTPM的EK的vEK在创建所述vTPM实例时生成(分配给所述VM212)并且无法删除。其目的在于充当所述vTPM实例的标识符(另请参见图4A中的步骤1.1)。可以根据TCG定义的隐私CA(privacy certificate authority,简称PCA)协议来执行所述加密,TPM 1.2系列(参见TPM主规范第3部分“命令”第15.2条:“TPM_ActivateIdentify”:http://trustedcomputinggroup.org/wp-content/uploads/TPM-main-1.2-Rev94-part-3.pdf)和TPM2.0系列(可信平台模块库第3部分:命令,第12.5条:“TPM2_ActivateCredential”:http://www.trustedcomputinggroup.org/wp-content/uploads/TPM-R ev-2.0-Part-3-Commands-01.16-code.pdf)规范支持该协议。解密只能在包含vEK和vAIK私有部分的vTPM中执行(之后可用于对所述引用进行签名)。
其次,所述VM 212的VM证明代理使用vTPM对所述随机数进行解密,所述vTPM可包含vEK和vAIK私有部分。仅当所述VM 212可以访问指定的vTPM实例时,它才能成功执行该步骤(另请参见图4A中的步骤1.2)。此外,所述vTPM可以在HV文件系统中存储(例如,写入文件)所述已解密的随机数和用于解密该随机数的vEK(vEKPUB)的公共部分。
再次,所述VM 212的VM证明代理从使用所述vAIK签名的vTPM请求引用(另请参见图4A中的步骤1.3)。此外,所述VM证明代理可以向vTPM提供先前解密的随机数的散列,以包括在所述引用中。对所述随机数进行散列可以提供以下优点:即使在非安全连接上执行协议(攻击者无法重放证明序列),只有所述证明服务器230或AA以及可以访问正确的vTPM实例的VM 212了解实际的随机数值。
图6示出了实施例提供的用于证明虚拟机监视器214完整性的方法的若干步骤的示意图。
在该实施例中,首先,在所述HV证明过程期间,所述HV 214上运行的证明代理可以创建列表,该列表具有与每个活动vTPM实例的vEK公共部分以及用于解密的随机数相关的信息(另请参见图4A中的步骤2.2)。所述列表由所述HV证明代理基于每个vTPM实例导出至所述HV文件系统的数据创建(另请结合图5做出的步骤1.2的描述)。
其次,可以对所述vEKPUB列表和相关的已解密随机数列表进行散列,并且该散列可以包含在作为所述HV完整性报告的一部分的pTPM签名引用中(另请参见图4A中的步骤2.3)。所生成的散列可以与所述证明服务器230提供的随机数或所述HV证明请求中的AA组合(对两者进行的散列)。这可以提供以下优点:与此同时,攻击者无法执行重放攻击,且所述引用签名也证明了所述列表的完整性。
再次,发送回所述证明服务器230或AA的完整性报告还可以包括vEK和随机数的列表(另请参见图4A中的步骤2.4)。
所述HV证明代理可以确保从所述文件系统中删除由vTPM实例导出的vEKPUB和随机数,其包含在作为所述HV完整性报告一部分发送的列表中。由于所述随机数仅与一个(当前)证明周期相关,因此随着时间的推移积累该信息没有优势。这还可以减少所述HV完整性报告中的数据负载。
此外,在所述HV 214完整性报告验证期间,可以使用包含vEK公共部分和它们可以在所述HV 214上解密的随机数的列表内容来更新数据库。所述数据库可以记录HV身份、vEK和由vEK解密的随机数之间的链接,作为已识别HV上运行的vTPM实例的一部分(参见图4B中的步骤3.1.3)。
此外,在所述VM完整性报告验证期间,可以执行两项额外的检查。可以检查所述引用中的随机数是否实际上是在所述证明请求中加密的已发送随机数的散列。成功验证所述随机数意味着,所述VM 212可以访问包含vEK和vAIK私有部分的适当vTPM实例(另请参见图4B中的步骤3.2.1)。在所述HV完整性报告验证期间,还可以根据图4所示步骤3.1.3中更新的数据库检查所述随机数(另请所述HV 214验证方法的上述步骤)。如果在所述数据库中发现使用预期vEK并在预期HV 214上处理的随机数,则可以提供足够的证据证明层绑定已得到妥善处理(另请参见图4B中的步骤3.2.3)。
本发明实施例提供的VM 212和HV 214证明方法的优点在于:它提供了加密证明,即VM证明中使用的vTPM在所述预期HV 214上运行。这是因为只有具有适当vEK和vAIK的vTPM可以解密由所述证明服务器230或AA加密的已发送随机数。此外,所述HV证明协议通过在该特定HV 214上执行随机数解密操作的引用来提供签名证明。
虚拟机和HV 214证明方法的实施例的另一个优点在于:它可以扩展,支持在同一HV 214上运行的大量VM的部署。这使得在多个不同VM的证明之后,仅需要一个HV证明,且对安全性没有任何影响。
此外,所述证明方法还有助于限制攻击面,因为它不需要其它HV组件对vTPM敏感内部数据进行侵入性内省。所述HV可以通过简单的“推送”机制收集源自所述vTPM实例的vEKPUB和随机数:所述vTPM实例可以将这些值写入所述HV文件系统的指定区域。这可以是有效的单向、只写通信信道,所述通道可以通过现有的限制技术(例如,SELinux)来实施和保护。相反,通过所述vTPM实例与另一HV组件(可能是所述HV证明代理)之间的基于请求/响应的数据交换接口来执行此操作可能会增加VM 212和HV 214上的攻击面。此接口中的任何漏洞都可能导致未经授权的内省(HV到VM攻击)或VM突破(VM到HV攻击)。
图7示出了实施例提供的用于证明虚拟机VM 212完整性的方法700的示意图。
所述方法700包括以下步骤:使用虚拟签注密钥(virtual endorsement key,简称vEK)加密(702)第一随机数;向所述VM发送(704)VM证明请求并向所述HV发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;从所述VM接收(706)VM证明报告并从所述HV接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM和所述HV生成;验证(708)所述VM证明报告是否基于所述第一随机数;基于所述VM证明报告的验证和所述HV证明报告确认(710)所述VM的完整性。
所述方法700可以由图2的上下文中描述的证明服务器230来执行。所述方法700的其它特征直接来自所述证明服务器230的功能及其不同的实现方式。
图8示出了实施例提供的用于通过服务器210上运行的虚拟机VM 212和虚拟机监视器HV 214生成证明报告的方法800的示意图。
所述方法800包括以下步骤:所述VM 212接收(802)VM证明请求,且所述HV214接收HV证明请求,其中所述VM证明请求包括使用虚拟签注密钥(virtual endorsement key,简称vEK)加密的已加密第一随机数;所述HV 214上运行的虚拟可信平台模块(virtualtrusted platform module,简称vTPM)根据存储在所述vTPM中的vEK解密(804)所述已加密第一随机数,以响应来自所述VM 212的解密请求;所述VM 212从所述vTPM接收(806)第一引用,其中所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestationidentity key,简称vAIK)签名并包括所述第一随机数;所述VM 212生成(808)有关所述VM212的VM证明报告,其中所述VM证明报告包括所述第一引用;所述HV 214生成(810)有关所述HV 214的HV证明报告。
所述方法800可以由图2的上下文中描述的服务器210执行。所述方法800的其它特征直接来自所述服务器210的功能及其不同的实现方式。
尽管本发明的特定特征或方面可能已经仅结合几种实施方式或实施例中的一种进行公开,但此类特征或方面可以和其它实施方式或实施例中的一个或多个特征或方面相结合,只要对任何给定或特定的应用有需要或有利即可。而且,在一定程度上,术语“包括”、“有”、“具有”或这些词的其它变形在详细的说明书或权利要求书中使用,这类术语和所述术语“包括”是类似的,都是表示包括的含义。同样,术语“示例性的”、“例如”和“如”仅表示为示例,而不是最好或最佳的。可以使用术语“耦合”和“连接”及其派生词。应当理解,这些术语可以用于指示两个元件彼此协作或交互,不管是直接物理接触还是电接触,或者彼此不直接接触。
尽管本文中已说明和描述特定方面,但本领域普通技术人员应了解,多种替代和/或等效实现形式可在不脱离本发明的范围的情况下替代所示和描述的特定方面。本申请旨在覆盖本文论述的特定方面的任何修改或变更。
尽管以上权利要求书中的元件是利用对应的标签按照特定顺序列举的,但是除非对权利要求的阐述另有暗示用于实施部分或所有这些元件的特定顺序,否则这些元件不必限于以所述特定顺序来实施。
通过以上启示,对于本领域技术人员来说,许多替代、修改和变化是显而易见的。当然,本领域技术人员容易认识到除本文所述的应用之外,还存在本发明的众多其它应用。虽然已参考一个或多个特定实施例描述了本发明,但本领域技术人员将认识到在不偏离本发明的范围的前提下,仍可对本发明作出许多改变。因此,应理解,只要是在所附权利要求书及其等效物的范围内,可以用不同于本文具体描述的方式来实施本发明。

Claims (10)

1.一种通过证明服务器(230)来证明服务器(210)上运行的虚拟机监视器(hypervisor,简称HV)(214)支持的虚拟机(virtual machine,简称VM)(212)的完整性的方法(700),其特征在于,所述方法(700)包括以下步骤:
使用虚拟签注密钥(virtual endorsement key,简称vEK)加密(702)第一随机数,得到已加密第一随机数;
向所述VM(212)发送(704)VM证明请求并向所述HV(214)发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;
从所述VM(212)接收(706)VM证明报告并从所述HV(214)接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM(212)和所述HV(214)生成,所述VM证明报告中包括第一引用,所述第一引用是所述VM(212)从所述HV(214)上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)接收的,所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数,所述HV证明报告中包括第二引用,所述第二引用是所述HV(214)从所述服务器(210)的物理可信平台模块(physical trusted platform module,简称pTPM)接收的,所述第二引用基于已散列的所述第一随机数和所述vEK生成,所述第二引用使用物理证明标识密钥(physical attestation identity key,简称pAIK)签名;
验证所述VM证明报告中的所述第一引用中是否包括所述第一随机数,如果所述第一引用中包括所述第一随机数,则确定所述VM证明报告基于所述第一随机数;
验证所述HV证明报告中的所述第二引用是否基于已散列的所述第一随机数和所述vEK生成;
如果所述VM证明报告基于所述第一随机数且所述HV证明报告中的所述第二引用基于已散列的所述第一随机数和所述vEK生成,则确认所述VM(212)的完整性。
2.根据权利要求1所述的方法(700),其特征在于,根据可信计算组织(trustedcomputing group,简称TCG)定义的隐私CA(privacy certificate authority,简称PCA)协议来执行所述第一随机数的加密。
3.一种通过服务器(210)上运行的虚拟机(virtual machine,简称VM)(212)和虚拟机监视器(hypervisor,简称HV)(214)生成证明报告的方法(800),其特征在于,所述方法(800)包括以下步骤:
所述VM(212)接收(802)VM证明请求,且所述HV(214)接收HV证明请求,其中所述VM证明请求包括使用虚拟签注密钥(virtual endorsement key,简称vEK)加密得到的已加密第一随机数;
所述HV(214)上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)根据存储在所述vTPM中的vEK解密(804)所述已加密第一随机数,以响应来自所述VM(212)的解密请求;
所述VM(212)从所述vTPM接收(806)第一引用,其中所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数;
所述VM(212)生成(808)有关所述VM(212)的VM证明报告并向证明服务器(230)发送所述VM证明报告,其中所述VM证明报告包括所述第一引用,所述证明服务器(230)用于通过验证所述VM证明报告中的所述第一引用中是否包括所述第一随机数来验证所述VM证明报告是否基于所述第一随机数,所述证明服务器(230)在确定所述第一引用中包括所述第一随机数时确定所述VM证明报告基于所述第一随机数;
所述HV(214)生成(810)有关所述HV(214)的HV证明报告并向所述证明服务器(230)发送所述HV证明报告,其中所述HV证明报告中包括第二引用,所述第二引用基于已散列的所述第一随机数和所述vEK生成,所述第二引用使用物理证明标识密钥(physicalattestation identity key,简称pAIK)签名,所述证明服务器(230)用于通过验证所述HV证明报告中的所述第二引用是否基于已散列的所述第一随机数和所述vEK生成以及验证所述VM证明报告是否基于所述第一随机数确认(710)所述VM(212)的完整性。
4.根据权利要求3所述的方法(800),其特征在于,所述方法(800)还包括以下步骤:
所述vTPM存储所述第一随机数和所述vEK,已存储的所述第一随机数和所述vEK可通过所述HV(214)访问;
所述HV(214)读取已存储的所述第一随机数和所述vEK,其中所述HV证明报告包括已存储的所述第一随机数和所述vEK。
5.根据权利要求3或4所述的方法(800),其特征在于,所述方法(800)还包括以下步骤:
所述VM(212)对所述第一随机数进行散列,得到已散列的所述第一随机数;
所述VM(212)根据已散列的所述第一随机数生成所述第一引用;
所述HV(214)对所述第一随机数和所述vEK进行散列;
所述HV(214)从所述服务器(210)的物理可信平台模块(physical trusted platformmodule,简称pTPM)接收所述第二引用;
所述HV(214)将所述第二引用包含在有关所述HV(214)的HV证明报告中。
6.一种证明服务器(230),用于证明服务器(210)上运行的虚拟机监视器(hypervisor,简称HV)(214)支持的虚拟机(virtual machine,简称VM)(212)的完整性,其特征在于,所述证明服务器(230)包括:
处理器(232),用于使用虚拟签注密钥(virtual endorsement key,简称vEK)加密第一随机数,得到已加密第一随机数;
发送单元(234),用于向所述VM(212)发送VM证明请求并向所述HV(214)发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;
接收单元,用于从所述VM(212)接收VM证明报告并从所述HV(214)接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM(212)和所述HV(214)生成,所述VM证明报告包括第一引用,所述第一引用是所述VM(212)从所述HV(214)上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)接收的,所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数,所述HV证明报告中包括第二引用,所述第二引用是所述HV(214)从所述服务器(210)的物理可信平台模块(physical trusted platform module,简称pTPM)接收的,所述第二引用基于已散列的所述第一随机数和所述vEK生成,所述第二引用使用物理证明标识密钥(physical attestation identity key,简称pAIK)签名;
所述处理器(232)还用于:验证所述VM证明报告中的所述第一引用中是否包括所述第一随机数,如果所述第一引用中包括所述第一随机数,则确定所述VM证明报告基于所述第一随机数;以及,验证所述HV证明报告中的所述第二引用是否基于已散列的所述第一随机数和所述vEK生成;如果所述VM证明报告基于所述第一随机数且所述HV证明报告中的所述第二引用基于已散列的所述第一随机数和所述vEK生成,则确认所述VM(212)的完整性。
7.根据权利要求6所述的证明服务器(230),其特征在于,所述证明服务器(230)包括所述vEK的公共部分(vEKPUB)、虚拟证明标识密钥(virtual attestation identity key,简称vAIK)的公共部分(vAIKPUB)、物理签注密钥(physical endorsement key,简称pEK)的公共部分(pEKPUB)和物理证明标识密钥(physical attestation identity key,简称pAIK)的公共部分(pAIKPUB);所述处理器(232)还用于:通过所述VM证明报告、所述vAIKPUB和所述vEKPUB确认所述VM(212)的完整性,并通过所述HV证明报告、所述pAIKPUB和所述pEKPUB确认所述HV(214)的完整性。
8.一种服务器(210),其特征在于,用于运行虚拟机(virtual machine,简称VM)(212)和虚拟机监视器(hypervisor,简称HV)(214),其中:
所述虚拟机VM(212)用于接收VM证明请求,其中所述VM证明请求包括使用虚拟签注密钥(virtual endorsement key,简称vEK)加密得到的已加密第一随机数;
所述虚拟机监视器HV(214)用于:接收HV证明请求;由所述HV上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)根据存储在所述vTPM中的vEK解密所述已加密第一随机数,以响应来自所述VM(212)的解密请求;
所述虚拟机VM(212)还用于:从所述vTPM接收第一引用,其中所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数;生成有关所述VM(212)的VM证明报告并向证明服务器(230)发送所述VM证明报告,其中所述VM证明报告包括所述第一引用,所述证明服务器(230)用于通过验证所述VM证明报告中的所述第一引用中是否包括所述第一随机数来验证所述VM证明报告是否基于所述第一随机数,所述证明服务器(230)在确定所述第一引用中包括所述第一随机数时确定所述VM证明报告基于所述第一随机数;
所述虚拟机监视器HV(214)还用于生成有关所述HV(214)的HV证明报告并向所述证明服务器(230)发送所述HV证明报告,其中所述HV证明报告中包括第二引用,所述第二引用基于已散列的所述第一随机数和所述vEK生成,所述第二引用使用物理证明标识密钥(physical attestation identity key,简称pAIK)签名,所述证明服务器(230)用于通过验证所述HV证明报告中的所述第二引用是否基于已散列的所述第一随机数和所述vEK生成以及验证所述VM证明报告是否基于所述第一随机确认所述VM(212)的完整性。
9.一种系统(200),其特征在于,包括证明服务器(230)和服务器(210);
所述证明服务器(230)包括:处理器(232),用于使用虚拟签注密钥(virtualendorsement key,简称vEK)加密第一随机数,得到已加密第一随机数;发送单元(234),用于向所述VM(212)发送VM证明请求并向所述HV(214)发送HV证明请求,其中所述VM证明请求包括所述已加密第一随机数;接收单元,用于从所述VM(212)接收VM证明报告并从所述HV(214)接收HV证明报告,其中所述VM证明报告和所述HV证明报告分别由所述VM(212)和所述HV(214)生成,所述VM证明报告包括第一引用,所述第一引用是所述VM(212)从所述HV(214)上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)接收的,所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identitykey,简称vAIK)签名并包括所述第一随机数,所述HV证明报告中包括第二引用,所述第二引用是所述HV(214)从所述服务器(210)的物理可信平台模块(physical trustedplatformmodule,简称pTPM)接收的,所述第二引用基于已散列的所述第一随机数和所述vEK生成,所述第二引用使用物理证明标识密钥(physical attestation identity key,简称pAIK)签名;所述处理器(232)还用于验证所述VM证明报告中的所述第一引用中是否包括所述第一随机数,如果所述第一引用中包括所述第一随机数,则确定所述VM证明报告基于所述第一随机数;以及,验证所述HV证明报告中的所述第二引用是否基于已散列的所述第一随机数和所述vEK生成;如果所述VM证明报告基于所述第一随机数且所述HV证明报告中的所述第二引用基于已散列的所述第一随机数和所述vEK生成,则确认所述VM(212)的完整性;
所述服务器(210)包括在所述服务器(210)上运行的虚拟机(virtual machine,简称VM)(212)和虚拟机监视器(hypervisor,简称HV)(214);所述虚拟机VM(212)用于接收VM证明请求,其中所述VM证明请求包括使用虚拟签注密钥(virtual endorsement key,简称vEK)加密得到的已加密第一随机数;所述虚拟机监视器HV(214)用于:接收HV证明请求;由所述HV上运行的虚拟可信平台模块(virtual trusted platform module,简称vTPM)根据存储在所述vTPM中的vEK解密所述已加密第一随机数,以响应来自所述VM(212)的解密请求;所述虚拟机VM(212)还用于:从所述vTPM接收第一引用,其中所述第一引用使用存储在所述vTPM中的虚拟证明标识密钥(virtual attestation identity key,简称vAIK)签名并包括所述第一随机数;生成有关所述VM(212)的VM证明报告并向所述证明服务器(230)发送所述VM证明报告,其中所述VM证明报告包括所述第一引用,所述证明服务器(230)用于通过验证所述VM证明报告中的所述第一引用中是否包括所述第一随机数来验证所述VM证明报告是否基于所述第一随机数,所述证明服务器(230)在确定所述第一引用中包括所述第一随机数时确定所述VM证明报告基于所述第一随机数;所述虚拟机监视器HV(214)还用于生成有关所述HV(214)的HV证明报告并向所述证明服务器(230)发送所述HV证明报告,其中所述HV证明报告中包括第二引用,所述第二引用基于已散列的所述第一随机数和所述vEK生成,所述第二引用使用物理证明标识密钥(physical attestation identity key,简称pAIK)签名,所述证明服务器(230)用于通过验证所述HV证明报告中的所述第二引用是否基于已散列的所述第一随机数和所述vEK生成以及验证所述VM证明报告是否基于所述第一随机数 确认所述VM(212)的完整性。
10.一种计算机程序,其特征在于,包括:程序代码,用于在计算机上运行时,执行根据权利要求1至5所述的方法(700、800)。
CN201780087951.9A 2017-03-08 2017-03-08 用于证明虚拟机完整性的方法和设备 Active CN110770729B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2017/055491 WO2018162060A1 (en) 2017-03-08 2017-03-08 Methods and devices for attesting an integrity of a virtual machine

Publications (2)

Publication Number Publication Date
CN110770729A CN110770729A (zh) 2020-02-07
CN110770729B true CN110770729B (zh) 2022-04-05

Family

ID=58264529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780087951.9A Active CN110770729B (zh) 2017-03-08 2017-03-08 用于证明虚拟机完整性的方法和设备

Country Status (2)

Country Link
CN (1) CN110770729B (zh)
WO (1) WO2018162060A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201711788D0 (en) * 2017-07-21 2017-09-06 Oraclize Ltd Apparatus and method for verificability/auditability of correct process execution on electronic platforms
US10970103B2 (en) * 2018-12-28 2021-04-06 Intel Corporation Technologies for hybrid virtualization and secure enclave policy enforcement for edge orchestration
WO2020157368A1 (en) 2019-01-30 2020-08-06 Nokia Solutions And Networks Oy Distributed or cloud computing system information
US11212119B2 (en) 2019-04-05 2021-12-28 Cisco Technology, Inc. Remote attestation of modular devices with multiple cryptoprocessors
FR3095282A1 (fr) * 2019-04-19 2020-10-23 Orange Procédé de fourniture d’attestations mis en œuvre par une plateforme informatique virtualisée.
US11516663B2 (en) 2019-07-09 2022-11-29 T-Mobile Usa, Inc. Systems and methods for secure endpoint connection and communication
CN113132330B (zh) * 2019-12-31 2022-06-28 华为技术有限公司 可信状态证明的方法、设备,证明服务器和可读存储介质
CN113986470B (zh) * 2021-11-09 2023-08-11 四川大学 一种用户无感知的虚拟机批量远程证明方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101960464A (zh) * 2008-02-25 2011-01-26 松下电器产业株式会社 信息处理装置
CN103501303A (zh) * 2013-10-12 2014-01-08 武汉大学 一种针对云平台虚拟机度量的主动远程证明方法
CN104539622A (zh) * 2014-12-31 2015-04-22 华为技术有限公司 虚拟机的深度证明方法、计算设备和计算机系统
US9298948B2 (en) * 2005-05-13 2016-03-29 Intel Corporation Method and apparatus for remotely provisioning software-based security coprocessors

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9147086B1 (en) * 2013-06-07 2015-09-29 Amazon Technologies, Inc. Trusted computing host
US9461994B2 (en) 2014-11-26 2016-10-04 Intel Corporation Trusted computing base evidence binding for a migratable virtual machine
US10778720B2 (en) * 2015-06-12 2020-09-15 Teleputers, Llc System and method for security health monitoring and attestation of virtual machines in cloud computing systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298948B2 (en) * 2005-05-13 2016-03-29 Intel Corporation Method and apparatus for remotely provisioning software-based security coprocessors
CN101960464A (zh) * 2008-02-25 2011-01-26 松下电器产业株式会社 信息处理装置
CN103501303A (zh) * 2013-10-12 2014-01-08 武汉大学 一种针对云平台虚拟机度量的主动远程证明方法
CN104539622A (zh) * 2014-12-31 2015-04-22 华为技术有限公司 虚拟机的深度证明方法、计算设备和计算机系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Hypervisor-based Attestation of Virtual Environments;Hagen Lauer等;《2016Intl IEEE Conferences on Ubiquitous Intelligence & Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Cloud and Big Data Computing, Internet of People, and Smart World Congress》;20160718;第330-340页 *

Also Published As

Publication number Publication date
CN110770729A (zh) 2020-02-07
WO2018162060A1 (en) 2018-09-13

Similar Documents

Publication Publication Date Title
CN110770729B (zh) 用于证明虚拟机完整性的方法和设备
US10530753B2 (en) System and method for secure cloud computing
RU2756048C2 (ru) Адресация доверенной среды исполнения с использованием ключа шифрования
US9497210B2 (en) Stateless attestation system
US9055052B2 (en) Method and system for improving storage security in a cloud computing environment
KR100823738B1 (ko) 컴퓨팅 플랫폼의 설정 정보를 은닉하면서 무결성 보증을제공하는 방법
CN111708991A (zh) 服务的授权方法、装置、计算机设备和存储介质
KR20070008394A (ko) 신뢰 컴퓨팅 플랫폼에서 동적으로 생성된 배서 키에 대한가상 배서 증명서를 확립하는 방법, 장치 및 프로그램을기록한 컴퓨터로 판독 가능한 기록 매체
Böck et al. Towards more trustable log files for digital forensics by means of “trusted computing”
Nguyen et al. Cloud-based secure logger for medical devices
CN106790045B (zh) 一种基于云环境分布式虚拟机代理装置及数据完整性保障方法
CN108595983B (zh) 一种基于硬件安全隔离执行环境的硬件架构、及应用上下文完整性度量方法
US11403428B2 (en) Protecting integrity of log data
US20160087995A1 (en) Procedure For Platform Enforced Storage in Infrastructure Clouds
US9692641B2 (en) Network connecting method and electronic device
KR20150089696A (ko) 접근제어와 우선순위기반 무결성 검증 시스템 및 그 방법
Liu et al. Secure streaming forensic data transmission for trusted cloud
Niemi et al. Platform attestation in consumer devices
Lucyantie et al. Attestation with trusted configuration machine
US20220131856A1 (en) Remote Attestation Method and Apparatus
Ganesan et al. A survey on advanced schemes applied within trusted platform modules (tpm) and iaas in cloud computing
Lyle et al. Engineering attestable services
Liu et al. Secure and Trustworthy Forensic Data Acquisition and Transmission in a Cloud Infrastructure
EL BALMANY et al. VMITLP: A Security Protocol Towards a Trusted Launch Process of a User Generic Virtual Machine Image on a Public Cloud IaaS Platform
Hosamani et al. How to Trust a Web Service Monitor Deployed in an Untrusted Environment?

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