CN109844748A - 托管在虚拟安全环境中的安全服务 - Google Patents

托管在虚拟安全环境中的安全服务 Download PDF

Info

Publication number
CN109844748A
CN109844748A CN201780064096.XA CN201780064096A CN109844748A CN 109844748 A CN109844748 A CN 109844748A CN 201780064096 A CN201780064096 A CN 201780064096A CN 109844748 A CN109844748 A CN 109844748A
Authority
CN
China
Prior art keywords
role
key
mirror image
performing environment
service
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
Application number
CN201780064096.XA
Other languages
English (en)
Other versions
CN109844748B (zh
Inventor
M·E·皮尔逊
T·阿卡
R·弗玛
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Priority to CN202211630546.6A priority Critical patent/CN115795511A/zh
Publication of CN109844748A publication Critical patent/CN109844748A/zh
Application granted granted Critical
Publication of CN109844748B publication Critical patent/CN109844748B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/041Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 using an encryption or decryption engine integrated in transmitted data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

执行环境具有所部署的虚拟机镜像。虚拟机镜像提供由角色标识的服务。执行环境生成虚拟机镜像的测量并且将其提供给密钥服务以请求启用执行环境中的虚拟机镜像的操作的角色密钥。密钥服务确定虚拟机镜像是否被映射到角色,并且如果是,则将角色密钥返回给请求执行环境。

Description

托管在虚拟安全环境中的安全服务
背景技术
计算机***目前广泛使用。一些这样的计算机***部署在它们托管服务的远程服务器环境中(诸如在云中)。
所托管的服务可以是安全性很重要的服务。例如,所托管的一些服务可以是支付服务、***处理服务、银行服务或处理机密信息的各种其他服务。
这些类型的***具有通常托管在离散***上的基础设施。作为示例,所托管的每个服务可以托管在单独的或分立的物理机器上。这些机器可以部署在物理笼式环境中以提供物理安全性。此外,为这些类型的***编写代码的开发人员或其他程序员经常可以使用相对隔离的网络来进入安全或笼式物理设施,以再次提高与部署在这样的服务上的开发代码相关的安全性。
这可能导致针对诸如服务等的很多缺点。作为示例,由于每个服务通常部署在专用物理机器(或服务器)上并且不涉及虚拟化,因此可扩展性可能非常困难。为了扩展这样的服务,必须为其他服务或服务实例添加其他物理机器。此外,由于开发人员或程序员需要在物理安全且严格控制的环境中生成代码,所以这可能导致刚性,因为很难进行更改。
以上讨论仅仅是为了一般背景信息而提供的,并不旨在用于帮助确定所要求保护的主题的范围。
发明内容
执行环境具有所部署的虚拟机镜像。虚拟机镜像提供由角色标识的服务。执行环境生成虚拟机镜像的测量并且将其提供给密钥服务以请求启用执行环境中的虚拟机镜像的操作的角色密钥。密钥服务确定虚拟机镜像是否被映射到角色,并且如果是,则将角色密钥返回给请求执行环境。
提供本“发明内容”是为了以简化的形式介绍一些概念,这些概念将在下面的“具体实施方式”中进一步描述。本“发明内容”不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。所要求保护的主题不限于解决背景技术中提到的任何或所有缺点的实现。
附图说明
图1是示出用于开发服务和生成与服务相对应的虚拟机镜像的开发通道的一个示例的流程图。
图2是云笼架构的一个示例的框图。
图3是示出部署服务的操作的一个示例的流程图。
图4是示出执行环境的操作的一个示例的流程图。
图5是示出在向执行环境提供所请求的角色密钥时密钥服务的操作的一个示例的流程图。
图6是示出可以在图1所示的架构中使用的计算环境的一个示例的框图。
具体实施方式
图1是示出开发通道100的操作的一个示例的流程图。开发通道100说明性地包括开发人员102、构建***104、签名***106、虚拟机镜像生成器108和镜像测量***110。图1还示出了开发通道100可以耦合到云架构122,云架构122包括云笼123(其本身包括可信执行环境124和126)、云笼部署服务128和云笼密钥服务130,并且云架构122可以包括其他项目129。图1还示出了一个或多个安全服务用户***131可以通过网络132访问架构122。
在图1所示的示例中,开发人员102说明性地开发源代码112,源代码112是要在所托管的安全服务中(诸如在可信执行环境124-126中)运行的代码。这样的服务可以是支付服务、银行服务、***处理服务或各种其他服务中的任何一种。
构建***104接收源代码112并且将代码构建成可执行二进制代码(或其他构建代码)114。代码114是说明性地编译的可执行代码,其可以包括脚本和各种数据文件。它说明性地被提供给签名***106。签名***106说明性地对代码114进行签名以生成签名的可执行代码116。因为代码116被签名,所以这可以确保其在签名发生之后不被修改。签名还可以指示代码签名者(或签名***106的身份)。
然后,虚拟机镜像生成器108通过组合适当的操作***镜像和签名的可执行代码116来生成虚拟机镜像。所得到的虚拟机(VM)镜像118可以包括一个或多个服务以及可以被部署以在执行环境中实现这些服务的数据库。在一个示例中,虚拟机镜像生成器108可以使用虚拟硬盘驱动器格式作为虚拟机的硬盘。这可以允许多个操作***驻留在单个机器上。
然后,镜像测量***110基于虚拟机镜像118生成一个或多个虚拟机镜像测量120。测量120说明性地包括表示每个镜像118的可重新计算的强身份。在一个示例中,每个测量120可以是在对应的VM镜像118上计算的密码散列值。然后,可以将VM镜像118及其对应的测量120提供给云环境(或云架构)122,在云环境122中,VM镜像118及其对应的测量120可以由一个或多个可信执行环境124-126的虚拟机执行。
可以将VM镜像118以及角色到VM镜像映射提供给云笼部署服务128,角色到VM镜像映射将VM镜像118映射到与其将执行的服务相对应的特定角色。可以将VM测量120以及测量到角色映射提供给云笼密钥服务130,测量到角色映射将VM镜像118的特定测量也映射到角色。另外,用于执行VM镜像118之一的特定可信执行环境124-126可以向云笼密钥服务130发送可信执行环境标识符,该可信执行环境标识符标识将部署由VM镜像测量120表示的VM镜像118的特定可信执行环境。
简而言之,在操作中,云笼部署服务128可以将特定VM镜像部署到可信执行环境124-126。然后,环境124-126可以从云笼密钥服务130请求角色密钥。云笼密钥服务130标识特定VM镜像是否适合于特定角色和请求执行环境,并且如果是,则向请求执行环境返回加密的角色密钥以便它可以操作以执行其服务。
图1还示出了一旦将服务(诸如支付服务或其他安全服务)部署到可信执行环境124-126中,支付(或其他安全服务)用户***131就可以通过网络132和云121在可信执行环境之一中访问服务。作为示例,如果安全服务是***处理服务,则用户***131可以是需要***处理的***公司处的***。如果它是银行服务,则***131可以部署在银行处。这些仅是示例。
网络132可以是各种网络中的任何一种,诸如广域网、局域网、或各种其他有线或无线网络或网络组合中的任何一种。为了举例,下面列出了一些。
图2是更详细地示出部署在云121中的云笼架构122的一个示例的框图。图2所示的一些项目与图1所示的项目相似,并且它们的编号相似。
在描述图2所示的架构122的整体操作之前,首先提供图2中的一些项目及其操作的简要描述。在图2所示的示例中,云笼123可以包括一个或多个处理器或服务器136、可信执行环境124-126,并且还可以包括其他项目。可信执行环境124可以包括管理程序138和一个或多个虚拟机140以及解密***141和测量***142。它还可以包括其他项目144。可信执行环境126还可以包括管理程序146,或者管理程序138和146可以实现为用于生成虚拟机140-148的单个管理程序。执行环境126还可以包括描述***149和测量***150以及各种其他项目152。可信执行环境124-126可以是相似的或不同的。出于本描述的目的,将假定它们是相似的,并且因此本文中将仅提供可信执行环境124的操作。
虚拟机140说明性地从云笼部署服务128(其在下面更详细地描述)接收虚拟机镜像并且执行该镜像。测量***142可以测量部署在虚拟机140上的镜像。可以通过将密码散列函数应用于镜像来生成测量。例如,在镜像由虚拟硬盘镜像表示的情况下,可以通过将SHA-256散列应用于该镜像来生成测量。这仅是一个示例,并且也可以使用用于生成虚拟机镜像的测量的各种其他方式。在执行由VM镜像表示的服务时,可信执行环境124可以公开用户***131可以与之交互以使用服务的应用程序编程接口(API)151。
为了将虚拟机镜像部署到可信执行环境124,可以使用云笼部署服务128。在一个示例中,服务128可以包括一个或多个处理器或服务器154、部署引擎156、虚拟机镜像存储库158、角色到虚拟机镜像映射160,并且可以包括其他项目162。可信执行环境124说明性地向部署引擎156提供角色(其表示其要执行的服务)。然后,部署引擎156访问角色到VM镜像映射160以标识与该角色相对应的特定VM镜像,并且从VM镜像存储库158获取该镜像。然后,它在请求可信执行环境124中在虚拟机140上部署该VM镜像。这将在下面参考图3更详细地描述。
一旦VM镜像部署在虚拟机140上,可信执行环境124说明性地仍然需要它将使用的角色密钥以便执行已经部署的特定服务(或角色)。也就是说,所部署的虚拟机镜像可以包括表示一个或多个服务和数据库的代码,但是它还没有执行其操作所需要的密钥。因此,可信执行环境124生成部署在虚拟机140上的VM镜像的测量,并且将其与角色(对应于服务)一起提供给云笼密钥服务130以便获取其需要操作的角色密钥。
云笼密钥服务130可以包括一个或多个处理器或服务器164、虚拟可信执行环境(VTEE)密钥服务166、策略引擎168、密钥包装密码引擎170、VM镜像测量储存器172、测量到角色映射174、角色密钥储存器/生成器176、密钥包装器密钥178,并且还可以包括各种其他项目180。VTEE密钥服务166向策略引擎168提供请求(虚拟机镜像测量和对应角色以及请求可信执行环境124的身份)。策略引擎168访问VM镜像测量172以验证请求可信执行环境是用于执行由VM镜像表示的特定角色的适当环境。引擎168还访问测量到角色映射174以标识由可信执行环境124提供的VM镜像测量是否被映射到由可信执行环境124在其对密钥的请求中标识的角色。如果策略引擎168肯定地评估,则这指示请求密钥的可信执行环境是用于执行所标识的角色的适当环境。它还指示部署在可信执行环境124中的VM镜像中的代码(例如,操作***、代码、数据库等)的测量映射到由可信执行环境124标识的角色。因此,这指示可信执行环境124是适当的,并且代码尚未被改变并且映射到所标识的角色。
在这种情况下,VTEE密钥服务166请求密钥包装密码引擎从角色密钥储存器/生成器176获取所标识的角色的角色密钥,并且用一个或多个密钥包装器密钥178包装这些密钥或对它们进行加密。然后,将包装的密钥提供回VTEE密钥服务166,VTEE密钥服务166将它们返回到请求可信执行环境124。在那里,它们可以由解密***141解密并且用于在该环境中执行服务(或角色)。
图3是更详细地示出云笼部署服务128的操作的一个示例的流程图。部署引擎156首先接收标识要被部署到可信执行环境124中的角色的角色标识符。这由图3中的框190指示。角色说明性地对应于要由可信执行环境124托管的安全服务,诸如支付服务、***服务等。这由框192指示。角色标识符可以是任意字符串194或其他表示196。
然后,部署引擎156访问角色到VM镜像映射160以标识与角色相对应的特定VM镜像。访问角色到VM镜像映射由框198指示,并且基于这些映射来标识角色被映射到的VM镜像由框200指示。在一个示例中,映射被表示为如下面的等式1所示,其中“IMAGE(图像)”以虚拟镜像格式表示,并且“H”是密码散列函数。
角色映射Φ可以用角色映射签名密钥KΦ签名,并且部署引擎156可以向安装在可信执行环境124中的部署机器上(例如,安装在VM 140上)的公钥证书机构验证签名。验证角色映射签名由框202指示。再次,VM镜像可以是与适当操作***的镜像组合的签名代码,如框204所示。VM镜像可以表示一个或多个服务和数据库,如框206所示,并且VM镜像也可以以其他方式标识,如框208所示。
然后,部署引擎156从VM镜像存储库158获取所标识的VM镜像。这由框210指示。然后,它将所标识的VM镜像部署到基于云的可信执行环境124。这由框212指示。
图4是示出可信执行环境124在从云笼密钥服务130请求角色密钥并且接收这些密钥并且使用它们来执行其工作时的操作的一个示例的流程图。首先假定表示要在环境124中执行的服务的VM镜像已经由部署服务128在可信执行环境124中部署。这由框218指示。然后,可信执行环境124确定表示其要执行的服务的角色的角色密钥需要执行操作。这由图4的流程图中的框220指示。
然后,测量***142生成部署在虚拟机140上的部署的VM镜像的VM镜像测量。这由框222指示。再次,如上面简要描述的,可以通过向VM镜像应用散列函数来获取VM镜像测量。这由框224指示。它也可以以其他方式获取,如框226所示。
然后,可信执行环境124将VM镜像测量和标识角色的角色标识符发送到云笼密钥服务130以获取角色的角色密钥,使得可信执行环境124可以执行其操作。这由框228指示。
然后,云笼密钥服务130操作以验证角色适合于请求可信执行环境并且密钥适合于角色。如果是,则服务130将包装的(或加密的)角色密钥返回到云笼123中的请求可信执行环境124。下面参考图5更详细地描述云笼密钥服务130的操作,并且在可信执行环境124处获取包装或加密的角色密钥由图4的流程图中的框230指示。
然后,可信执行环境124中的解密***141解包(或解密)所接收的角色密钥并且使用它们来以其正在执行的角色(或服务)来执行工作。这由图3的流程图中的框232和234指示。要在可信执行环境中执行的特定工作将有很大不同,这取决于它托管或执行的特定服务。例如,角色密钥可以用于解密***信息,如框236所示。它们可以用于执行支付处理,如框238所示。它们当然也可以以各种其他方式使用,并且这由框240指示。
图5是更详细地示出云笼密钥服务130的操作的一个示例的流程图。VTEE密钥服务166首先从请求角色密钥的执行环境(诸如可信执行环境124)接收引用(quote)。这由图5的流程图中的框250指示。如上面简要讨论的,引用可以包括标识由请求执行环境执行的特定角色的角色标识符252。它还说明性地包括由该环境生成的VM测量。这由框254指示。它可以包括标识正在发出请求的特定可信执行环境的可信执行环境标识符256。该请求也可以包括其他项目258。
然后将该请求提供给策略引擎168,在策略引擎168中对其进行评估以确定引用(或请求)是否来自适当的可信执行环境以及它是否具有用于所标识的角色的正确的操作***、代码等。这由图5的流程图中的框260指示。在一个示例中,策略引擎168访问VM镜像测量储存器172以标识请求可信执行环境是否对应于在请求中接收的VM镜像测量。例如,它可以确定该VM镜像是否已经适当地部署在适当的可信执行环境中。这由框262指示。
策略引擎168还可以访问测量到角色映射174以确定部署在请求可信执行环境上(并且由VM镜像测量表示)的VM镜像是否被映射到所标识的角色。这由框264指示。因此,给定VM镜像测量,策略引擎168通过访问将VM镜像映射到一组角色的映射174来生成一组角色,如下:
θ:h→SR
其中
h=H(IMAGE) 等式2
从上面的等式2,可以看出,映射Θ将镜像h(其等于上面的等式1中所示的H(IMAGE)(H(镜像)))映射到一组角色SR。该组角色SR是通过映射Φ而映射到VM镜像测量的那些角色。该组角色由角色组成,其中给定该角色到镜像测量h的映射。
如果策略引擎168确定请求可信执行环境不是运行由VM镜像测量标识的VM镜像的适当环境,或者如果它确定VM镜像测量未映射到请求可信执行环境的角色,则VTEE密钥服务166确定策略引擎168尚未肯定地评估引用。这由图5中的框270指示。因此,VTEE密钥服务166拒绝对角色密钥的请求,如框272所示。它可以响应于该否定评估而发送通知或警报或其他消息或者执行其他操作。这由框274指示。
然而,假定策略引擎168确定请求可信执行环境124是执行角色的适当环境,并且假定由请求可信执行环境提供的VM镜像测量映射到所标识的角色,则VTEE密钥服务166在框270处确定策略引擎评估是肯定的或有利的。在这种情况下,VTEE密钥服务166与密钥包装密码引擎交互以获取角色密钥,使得它可以将它们提供给请求可信执行环境124。
为此,VTEE密钥服务166向密钥包装密码引擎170提供角色标识符。引擎170访问角色密钥储存器/生成器176以获取或生成所标识的角色的角色密钥。这由图5的流程图中的框276指示。然后,引擎170访问密钥包装器密钥178,并且用一个或多个密钥包装器密钥178包装(或加密)该组角色密钥。这由图5的流程图中的框278指示。角色密钥可以单独地或作为一组进行包装。密钥包装器密钥可以是公共密钥,如框280所示,并且包装角色密钥也可以以其他方式执行,并且这由框282指示。
角色密钥可以是任意密码密钥类型,并且包装密钥说明性地是该特定角色的公钥。在获取包装器密钥时,引擎170可以访问将给定角色映射到包装公钥Pur的映射Ψ,如下面的等式3所示:
Skr是用包装公钥PuR的角色密钥加密的一组包装的角色密钥如下所示:
一旦密钥包装密码引擎170获取角色密钥并且用适当的密钥包装器密钥178包装它们,它就将包装的角色密钥返回给VTEE密钥服务166,VTEE密钥服务166将它们返回到请求可信执行环境124。这通过图5的流程图中的框284指示。
因此,应当理解,云笼将多个支付服务视为角色,并且将这些角色映射到如上定义的VM镜像。在云笼可信执行环境中运行的角色或服务的一些示例可以是虚拟硬件安全模块(或密码服务)、汇款代理服务、汇款代理数据库等。
在上述架构中,在一个示例中,每个服务器硬件说明性地具有高保证密码处理器、相对少量的密钥存储、密钥对、以及测量由云笼部署服务128中的可信硬件加载的二进制镜像的能力。高保证密码处理器可以具有带有可验证证书的公钥。它还可以包括硬件中的用于由该硬件生成的密钥的证明能力。这将密钥完整性绑定到特定密钥证书。另外,如上所述,可以对角色到VM镜像映射进行签名。签名密钥保密性及其公钥完整性可以由单独的***来验证,或者这些***可以是云笼架构的一部分。角色密钥和包装密钥依赖于上面讨论的映射Φ和Ψ。角色定义代码和数据可以被签名并且向证书机构验证,证书机构可以是外部机构。
因此,可以看出,即使没有围绕开发和部署资源的物理笼安全性,本***也能够确保安全性。它确保了部署在可信执行环境中的虚拟机镜像尚未改变。它还确保了在获取角色密钥之前,虚拟机镜像是用于获取这些密钥的适当的虚拟机镜像,并且可信执行环境是用于运行该虚拟机镜像的适当的环境。角色密钥在返回到可信执行环境时会被包装或加密,以便它可以执行其操作。
应当注意,上述讨论已经描述了各种不同的***、组件和/或逻辑。应当理解,这样的***、组件和/或逻辑可以包括执行与这些***、组件和/或逻辑相关联的功能的硬件项目(诸如处理器和相关联的存储器、或其他处理组件,其中的一些在下面描述)。另外,***、组件和/或逻辑可以包括加载到存储器中并且随后由处理器或服务器或其他计算组件执行的软件,如下所述。***、组件和/或逻辑还可以包括硬件、软件、固件等的不同组合,其一些示例在下面描述。这些仅是可以用于形成上述***、组件和/或逻辑的不同结构的一些示例。也可以使用其他结构。
本讨论已经提到了处理器和服务器。在一个实施例中,处理器和服务器包括具有相关联的存储器和定时电路的计算机处理器(未单独示出)。它们是它们所属的以及激活它们的***或设备的功能部分,并且支持这些***中的其他组件或项目的功能。
此外,已经讨论了很多用户界面显示。它们可以采用各种不同的形式,并且可以具有设置在其上的各种不同的用户可致动输入机制。例如,用户可致动的输入机制可以是文本框、复选框、图标、链接、下拉菜单、搜索框等。它们也可以以各种不同的方式被致动。例如,可以使用点击设备(诸如跟踪球或鼠标)来致动它们。可以使用硬件按钮、开关、操纵杆或键盘、拇指开关或拇指垫等来致动它们。也可以使用虚拟键盘或其他虚拟致动器来致动它们。另外,在显示它们的屏幕是触敏屏幕的情况下,可以使用触摸手势来致动它们。而且,在显示它们的设备具有语音识别组件的情况下,可以使用语音命令来致动它们。
还讨论了很多数据储存器。应当注意,它们每个可以分成多个数据储存器。所有这些都可以是访问它们的***的本地的,所有这些都可以是远程的,或者一些可以是本地的,而另一些是远程的。所有这些配置都在本文中考虑。
此外,附图示出了具有归于每个框的功能的多个框。应当注意,可以使用更少的框,因此功能由更少的组件执行。此外,可以使用更多框,其中功能分布在更多组件之间。
本文中将架构122描述为云计算架构。云计算提供计算、软件、数据访问和存储服务,这些服务不需要终端用户了解提供服务的***的物理位置或配置。在各种实施例中,云计算使用适当的协议在诸如因特网等广域网上提供服务。例如,云计算提供商通过广域网提供应用,并且可以通过web浏览器或任何其他计算组件来访问它们。架构122的软件或组件以及对应的数据可以存储在远程位置处的服务器上。云计算环境中的计算资源可以在远程数据中心位置处合并,或者可以是分散的。云计算基础设施可以通过共享数据中心提供服务,即使它们呈现为用户的单一访问点。因此,本文中描述的组件和功能可以使用云计算架构从远程位置处的服务提供商提供。替代地,它们可以从传统服务器提供,或者它们可以直接或以其他方式安装在客户端设备上。
本描述旨在包括公共云计算和私有云计算两者。云计算(公共和私有两者)提供了大量无缝的资源池,并且减少了对管理和配置底层硬件基础设施的需求。
公共云由供应商管理,并且通常使用相同的基础设施支持多个消费者。此外,与私有云相反,公共云可以无需终端用户管理硬件。私有云可以由组织本身管理,并且基础设施通常不与其他组织共享。组织仍然在某种程度上维护硬件,诸如安装和维修等。
图6是可以部署架构100或其一部分(例如)的计算环境的一个示例。参考图6,用于实现一些实施例的示例***包括计算机810形式的通用计算设备。计算机810的组件可以包括但不限于处理单元820(其可以包括处理器或服务器136、154或164)、***存储器830和***总线821,***总线821将包括***存储器在内的各种***组件耦合到处理单元820。***总线821可以是若干类型的总线结构中的任何一种,其包括使用各种总线架构中的任何一种的存储器总线或存储器控制器、***总线和本地总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和***组件互连(PCI)总线(也称夹层总线)。关于图1描述的存储器和程序可以部署在图6的对应部分中。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是可以由计算机810访问的任何可用介质,并且包括易失性和非易失性介质、可移除和不可移除介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质不同于并且不包括调制数据信号或载波。它包括硬件存储介质,硬件存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性的可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字通用盘(DVD)或其他光盘存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储设备、或者可以用于存储期望的信息并且可以由计算机810访问的任何其他介质。通信介质通常在传输机制中包含计算机可读指令、数据结构、程序模块或其他数据,并且包括任何信息传递介质。术语“调制数据信号”表示以在信号中对信息进行编码的方式设置或改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接等有线介质以及诸如声学、RF、红外和其他无线介质等无线介质。任何上述的组合也应当被包括在计算机可读介质的范围内。
***存储器830包括易失性和/或非易失性存储器形式的计算机存储介质,诸如只读存储器(ROM)831和随机存取存储器(RAM)832。包含有助于在计算机810内的元件之间传送信息的基本例程(例如在启动期间)的基本输入/输出***833(BIOS)通常存储在ROM 831中。RAM 832通常包含立即可访问和/或当前正在由处理单元820操作的数据和/或程序模块。作为示例而非限制,图6示出了操作***834、应用程序835、其他程序模块836和程序数据837。
计算机810还可以包括其他可移除/不可移除的易失性/非易失性计算机存储介质。仅作为示例,图6示出了从不可移除的非易失性磁介质读取或向其写入的硬盘驱动器841、以及从诸如CD ROM或其他光学介质等可移除的非易失性光盘856读取或向其写入的光盘驱动器855。可以在示例性操作环境中使用的其他可移除/不可移除的易失性/非易失性计算机存储介质包括但不限于磁带盒、闪存卡、数字通用盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器841通常通过诸如接口840等不可移除存储器接口连接到***总线821,并且光盘驱动器855通常通过诸如接口850等可移除存储器接口连接到***总线821。
替代地或另外地,本文中描述的功能可以至少部分地由一个或多个硬件逻辑组件执行。例如而非限制,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、程序专用集成电路(ASIC)、程序专用标准产品(ASSP)、片上***(SOC)、复杂可编程逻辑器件(CPLD)等。
上面讨论并且在图6中示出的驱动器及其相关联的计算机存储介质为计算机810提供计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图6中,硬盘驱动器841被示出为存储操作***844、应用程序845、其他程序模块846和程序数据847。注意,这些组件可以与操作***834、应用程序835、其他程序模块836和程序数据837相同或不同。操作***844、应用程序845、其他程序模块846和程序数据847在这里被给予不同的数字以说明它们至少是不同的副本。
用户可以通过诸如键盘862、麦克风863和诸如鼠标、轨迹球或触摸板等指示设备861等输入设备向计算机810中输入命令和信息。其他输入设备(未示出)可以包括操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其他输入设备通常通过耦合到***总线的用户输入接口860连接到处理单元820,但是可以通过诸如并行端口、游戏端口或通用串行总线(USB)等其他接口和总线结构连接。视觉显示器891或其他类型的显示设备也经由诸如视频接口890等接口连接到***总线821。除了显示器之外,计算机还可以包括可以通过输出***接口895连接的其他***输出设备,诸如扬声器897和打印机896。
计算机810使用到诸如远程计算机880等一个或多个远程计算机的逻辑连接在网络环境中操作。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其他公共网络节点,并且通常包括上面关于计算机810描述的很多或所有元件。图6中描绘的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但是也可以包括其他网络。这种网络环境在办公室、企业范围的计算机网络、内联网和因特网中很常见。
当在LAN网络环境中使用时,计算机810通过网络接口或适配器870连接到LAN871。当在WAN网络环境中使用时,计算机810通常包括调制解调器872或用于通过诸如因特网等WAN 873建立通信的其他装置。可以是内部的或外部的调制解调器872可以经由用户输入接口860或其他适当的机制连接到***总线821。在网络环境中,相对于计算机810或其部分描述的程序模块可以存储在远程存储器存储设备中。作为示例而非限制,图6将远程应用程序885示出为驻留在远程计算机880上。可以理解,所示出的网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其他手段。
还应当注意,本文中描述的不同实施例可以以不同方式组合。也就是说,一个或多个实施例的部分可以与一个或多个其他实施例的部分组合。所有这些都在本文中考虑。
示例1是一种计算***,包括:
策略引擎,策略引擎接收角色和虚拟机(VM)镜像测量,角色标识服务,VM镜像测量指示部署在执行环境中的虚拟机镜像,并且策略引擎确定VM镜像测量是否被映射到角色,并且生成指示确定的评估信号;
密钥包装密码引擎,密钥包装密码引擎基于指示VM镜像测量被映射到角色的评估信号,获取并且包装一组角色密钥,角色密钥对应于角色并且使得执行环境能够执行服务;以及
密钥服务,密钥服务为执行环境提供一组包装的角色密钥。
示例2是根据任何或所有先前示例所述的计算***,其中策略引擎被配置为接收角色,接收VM镜像测量并且从请求执行环境接收执行环境标识符,执行环境标识符标识请求执行环境。
示例3是根据任何或所有先前示例所述的计算***,其中策略引擎被配置为基于执行环境标识符来确定请求执行环境是否被映射到VM镜像测量,并且基于确定来生成评估信号。
示例4是根据任何或所有先前示例所述的计算***,还包括:
一组测量到角色映射,一组测量到角色映射将多个不同组角色中的每个角色映射到不同的VM镜像测量,策略引擎通过访问测量到角色映射来确定VM镜像测量是否被映射到角色。
示例5是根据任何或所有先前示例所述的计算***,还包括:
角色密钥储存器/生成器,角色密钥储存器/生成器被配置为向密钥包装密码引擎提供一组角色密钥;以及一组密钥包装器密钥,每个密钥包装器密钥被映射到给定角色,密钥包装密码引擎标识被映射到角色的一个或多个密钥包装器密钥,并且用所标识的一个或多个密钥包装器密钥来加密角色密钥。
示例6是根据任何或所有先前示例所述的计算***,还包括:
部署引擎,部署引擎被配置为接收角色并且基于角色获取VM镜像,并且将VM镜像部署到执行环境。
示例7是根据任何或所有先前示例所述的计算***,还包括:
一组角色到镜像映射,一组角色到镜像映射将角色映射到VM镜像,部署引擎访问一组角色到镜像映射以标识VM镜像。
示例8是根据任何或所有先前示例所述的计算***,还包括:
VM镜像存储库,VM镜像存储库存储VM镜像,部署引擎从VM镜像存储库获取VM镜像以进行部署。
示例9是根据任何或所有先前示例所述的计算***,其中执行环境包括:
测量***,测量***被配置为生成VM镜像测量并且将VM镜像测量提供给密钥服务。
示例10是根据任何或所有先前示例所述的计算***,其中测量***对VM镜像执行散列函数以获取包括VM镜像测量的散列值。
示例11是一种计算机实现的方法,包括:
在密钥服务处标识执行环境服务和指示部署在执行环境中的虚拟机镜像的虚拟机(VM)镜像测量;
确定VM镜像测量是否被映射到执行环境服务;
生成指示确定的评估信号;
响应于评估信号指示VM镜像测量被映射到执行环境服务,获取一组角色密钥,角色密钥对应于执行环境服务并且使得执行环境能够执行执行环境服务;
加密一组角色密钥中的角色密钥;以及
为执行环境提供一组加密的角色密钥。
示例12是根据任何或所有先前示例所述的计算机实现的方法,还包括:
接收标识执行环境服务的角色;
接收VM镜像测量;以及
从请求执行环境接收执行环境标识符,执行环境标识符标识请求执行环境,并且其中确定VM镜像测量是否被映射到执行环境服务包括基于执行环境标识符来确定请求执行环境是否被映射到VM镜像测量,并且生成评估信号包括基于确定来生成评估信号。
示例13是根据任何或所有先前示例所述的计算机实现的方法,其中确定VM镜像测量是否被映射到执行环境服务包括:
通过访问将多个不同组的角色中的每个角色映射到不同的VM镜像测量的一组测量到角色映射的资产来确定VM镜像测量是否被映射到角色。
示例14是根据任何或所有先前示例所述的计算机实现的方法,其中加密角色密钥包括:
标识被映射到角色的一个或多个密钥包装器密钥;以及
用所标识的一个或多个密钥包装器密钥来加密角色密钥。
示例15是根据任何或所有先前示例所述的计算机实现的方法,还包括:
在部署***处接收角色;
通过访问将角色映射到VM镜像的一组角色到镜像映射来在部署***处基于角色来获取VM镜像;以及
将VM镜像部署到执行环境。
示例16是根据任何或所有先前示例所述的计算机实现的方法,还包括:
在执行环境中利用测量***生成VM镜像测量;以及
将VM镜像测量提供给密钥服务。
示例17是根据任何或所有先前示例所述的计算机实现的方法,其中生成VM镜像测量包括:
利用测量***对VM镜像执行散列函数以获取包括VM镜像测量的散列值。
示例18是一种计算***,包括:
执行环境,执行环境执行由所部署的虚拟机(VM)镜像表示的并且由角色标识的服务;
测量***,测量***被配置为将散列函数应用于VM镜像以生成VM镜像测量并且将VM镜像测量提供给密钥服务,执行环境将角色和VM镜像测量提供给密钥服务以请求一组角色密钥;以及
解密***,解密***从密钥服务接收一组包装的角色密钥,并且解密一组包装的角色密钥以获取所请求的一组角色密钥,执行环境使用所请求的角色密钥来执行服务。
示例19是根据任何或所有先前示例所述的计算***,其中密钥服务包括:
策略引擎,策略引擎从执行环境接收角色,标识服务和指示部署在执行环境中的虚拟机镜像的VM镜像测量,并且确定VM镜像测量是否被映射到角色,并且生成指示确定的评估信号;以及
密钥包装密码引擎,密钥包装密码引擎基于指示VM镜像测量被映射到角色的评估信号,获取并且包装一组角色密钥,密钥服务向执行环境提供一组包装的角色密钥。
示例20是根据任何或所有先前示例所述的计算***,还包括:
部署***,部署***包括将角色映射到VM镜像的一组角色到镜像映射以及存储VM镜像的VM镜像存储库,并且部署引擎被配置为通过基于角色访问角色到镜像映射来从VM镜像存储库获取VM镜像以用于部署,并且被配置为将VM镜像部署到执行环境。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但是应当理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。而是,上述具体特征和动作被公开作为实现权利要求的示例形式。

Claims (15)

1.一种计算***,包括:
策略引擎,所述策略引擎接收角色和虚拟机(VM)镜像测量,所述角色标识服务,所述VM镜像测量指示被部署在执行环境中的虚拟机镜像,并且所述策略引擎确定所述VM镜像测量是否被映射到所述角色,并且生成指示所述确定的评估信号;
密钥包装密码引擎,所述密钥包装密码引擎基于指示所述VM镜像测量被映射到所述角色的所述评估信号,获取并且包装一组角色密钥,所述角色密钥对应于所述角色并且支持所述执行环境执行所述服务;以及
密钥服务,所述密钥服务为所述执行环境提供经包装的所述一组角色密钥。
2.根据权利要求1所述的计算***,其中所述策略引擎被配置为接收所述角色、所述VM镜像测量和来自请求执行环境的执行环境标识符,所述执行环境标识符标识所述请求执行环境。
3.根据权利要求2所述的计算***,其中所述策略引擎被配置为基于所述执行环境标识符来确定所述请求执行环境是否被映射到所述VM镜像测量,并且基于所述确定来生成所述评估信号。
4.根据权利要求2所述的计算***,还包括:
一组测量到角色映射,所述一组测量到角色映射将多个不同组角色中的每个角色映射到不同的VM镜像测量,所述策略引擎通过访问所述测量到角色映射来确定所述VM镜像测量是否被映射到所述角色。
5.根据权利要求4所述的计算***,还包括:
角色密钥储存器/生成器,所述角色密钥储存器/生成器被配置为向所述密钥包装密码引擎提供所述一组角色密钥;以及
一组密钥包装器密钥,每个密钥包装器密钥被映射到给定角色,所述密钥包装密码引擎标识被映射到所述角色的一个或多个密钥包装器密钥,并且利用所标识的所述一个或多个密钥包装器密钥来加密所述角色密钥。
6.根据权利要求1所述的计算***,还包括:
部署引擎,所述部署引擎被配置为接收所述角色并且基于所述角色来获取所述VM镜像,并且将所述VM镜像部署到所述执行环境。
7.根据权利要求6所述的计算***,还包括:
一组角色到镜像映射,所述一组角色到镜像映射将所述角色映射到所述VM镜像,所述部署引擎访问所述一组角色到镜像映射以标识所述VM镜像。
8.根据权利要求7所述的计算***,还包括:
VM镜像存储库,所述VM镜像存储库存储所述VM镜像,所述部署引擎从所述VM镜像存储库获取所述VM镜像以用于部署。
9.根据权利要求6所述的计算***,其中所述执行环境包括:
测量***,所述测量***被配置为生成所述VM镜像测量并且向所述密钥服务提供所述VM镜像测量。
10.根据权利要求9所述的计算***,其中所述测量***对所述VM镜像执行散列函数以获取包括所述VM镜像测量的散列值。
11.一种计算机实现的方法,包括:
在密钥服务处标识执行环境服务和虚拟机(VM)镜像测量,所述VM镜像测量指示被部署在执行环境中的虚拟机镜像;
确定所述VM镜像测量是否被映射到所述执行环境服务;
生成指示所述确定的评估信号;
响应于所述评估信号指示所述VM镜像测量被映射到所述执行环境服务,获取一组角色密钥,所述角色密钥对应于所述执行环境服务并且支持所述执行环境执行所述执行环境服务;
加密所述一组角色密钥中的所述角色密钥;以及
为所述执行环境提供经加密的所述一组角色密钥。
12.根据权利要求11所述的计算机实现的方法,还包括:
接收标识所述执行环境服务的角色;
接收所述VM镜像测量;以及
从请求执行环境接收执行环境标识符,所述执行环境标识符标识所述请求执行环境,并且其中确定所述VM镜像测量是否被映射到所述执行环境服务包括基于所述执行环境标识符来确定所述请求执行环境是否被映射到所述VM镜像测量,并且生成所述评估信号包括基于所述确定来生成所述评估信号。
13.根据权利要求12所述的计算机实现的方法,其中确定所述VM镜像测量是否被映射到所述执行环境服务包括:
通过访问将多个不同组的角色中的每个角色映射到不同的VM镜像测量的测量到角色映射的资产来确定所述VM镜像测量是否被映射到所述角色。
14.根据权利要求13所述的计算机实现的方法,其中加密所述角色密钥包括:
标识被映射到所述角色的一个或多个密钥包装器密钥;以及
利用所标识的所述一个或多个密钥包装器密钥来加密所述角色密钥。
15.一种计算***,包括:
执行环境,所述执行环境执行由所部署的虚拟机(VM)镜像表示的并且由角色标识的服务;
测量***,所述测量***被配置为将散列函数应用于所述VM镜像以生成VM镜像测量并且向密钥服务提供所述VM镜像测量,所述执行环境向所述密钥服务提供所述角色和所述VM镜像测量以请求一组角色密钥;以及
解密***,所述解密***从所述密钥服务接收经包装的一组角色密钥,并且解密经包装的所述一组角色密钥以获取所请求的所述一组角色密钥,所述执行环境使用所请求的所述角色密钥来执行所述服务。
CN201780064096.XA 2016-10-25 2017-10-16 托管在虚拟安全环境中的安全服务的计算***及方法 Active CN109844748B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211630546.6A CN115795511A (zh) 2016-10-25 2017-10-16 托管在虚拟安全环境中的安全服务

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/333,573 US10310885B2 (en) 2016-10-25 2016-10-25 Secure service hosted in a virtual security environment
US15/333,573 2016-10-25
PCT/US2017/056703 WO2018080814A1 (en) 2016-10-25 2017-10-16 Secure service hosted in a virtual security environment

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202211630546.6A Division CN115795511A (zh) 2016-10-25 2017-10-16 托管在虚拟安全环境中的安全服务

Publications (2)

Publication Number Publication Date
CN109844748A true CN109844748A (zh) 2019-06-04
CN109844748B CN109844748B (zh) 2023-01-06

Family

ID=60191522

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201780064096.XA Active CN109844748B (zh) 2016-10-25 2017-10-16 托管在虚拟安全环境中的安全服务的计算***及方法
CN202211630546.6A Pending CN115795511A (zh) 2016-10-25 2017-10-16 托管在虚拟安全环境中的安全服务

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202211630546.6A Pending CN115795511A (zh) 2016-10-25 2017-10-16 托管在虚拟安全环境中的安全服务

Country Status (6)

Country Link
US (2) US10310885B2 (zh)
EP (2) EP3532975B1 (zh)
JP (1) JP6985385B2 (zh)
KR (1) KR102435719B1 (zh)
CN (2) CN109844748B (zh)
WO (1) WO2018080814A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022206811A1 (zh) * 2021-03-31 2022-10-06 华为云计算技术有限公司 一种云服务***以及基于云服务的数据处理方法
US20220357938A1 (en) * 2021-05-04 2022-11-10 Red Hat, Inc. Automatically configuring and deploying a software operator in a distributed computing environment from a package

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11214789B2 (en) 2016-05-03 2022-01-04 Flodesign Sonics, Inc. Concentration and washing of particles with acoustics
US11475147B2 (en) * 2018-02-20 2022-10-18 International Business Machines Corporation Implementing policy-based container-level encryption
US11599375B2 (en) * 2020-02-03 2023-03-07 EMC IP Holding Company LLC System and method virtual appliance creation
US11799670B2 (en) * 2020-12-11 2023-10-24 Vmware, Inc. Secure end-to-end deployment of workloads in a virtualized environment using hardware-based attestation
CN112817697A (zh) * 2021-02-09 2021-05-18 ***股份有限公司 面向可信执行环境的虚拟化***、方法和设备调用方法
CN116680687A (zh) * 2023-06-09 2023-09-01 北京火山引擎科技有限公司 数据处理方法、装置、设备和存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070230706A1 (en) * 2006-04-04 2007-10-04 Paul Youn Method and apparatus for facilitating role-based cryptographic key management for a database
US20090172781A1 (en) * 2007-12-20 2009-07-02 Fujitsu Limited Trusted virtual machine as a client
JP2009175945A (ja) * 2008-01-23 2009-08-06 Nec Corp サービス評価装置、方法及びプログラム
US20100082991A1 (en) * 2008-09-30 2010-04-01 Hewlett-Packard Development Company, L.P. Trusted key management for virtualized platforms
CN102208000A (zh) * 2010-03-31 2011-10-05 伊姆西公司 为虚拟机镜像提供安全机制的方法和***
US20120266209A1 (en) * 2012-06-11 2012-10-18 David Jeffrey Gooding Method of Secure Electric Power Grid Operations Using Common Cyber Security Services
US20130152047A1 (en) * 2011-11-22 2013-06-13 Solano Labs, Inc System for distributed software quality improvement
US20150074764A1 (en) * 2013-09-12 2015-03-12 The Boeing Company Method of authorizing an operation to be performed on a targeted computing device
CN104486307A (zh) * 2014-12-03 2015-04-01 中国电子科技集团公司第三十研究所 一种基于同态加密的分权密钥管理方法
CN104756127A (zh) * 2012-10-12 2015-07-01 皇家飞利浦有限公司 通过虚拟机进行安全数据处理
CN104982005A (zh) * 2013-01-22 2015-10-14 亚马逊技术有限公司 虚拟化环境中的特权加密服务
CN105493099A (zh) * 2013-07-01 2016-04-13 亚马逊技术有限公司 用于托管虚拟机的加密证实资源

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7260224B1 (en) * 2003-06-30 2007-08-21 Microsoft Corporation Automated secure key transfer
US7590867B2 (en) 2004-06-24 2009-09-15 Intel Corporation Method and apparatus for providing secure virtualization of a trusted platform module
US7719711B2 (en) 2006-03-30 2010-05-18 Kabushiki Kaisha Toshiba Image data processing apparatus and method
US8249257B2 (en) * 2007-09-28 2012-08-21 Intel Corporation Virtual TPM keys rooted in a hardware TPM
US8259948B2 (en) 2007-12-29 2012-09-04 Intel Corporation Virtual TPM key migration using hardware keys
US8341427B2 (en) * 2009-02-16 2012-12-25 Microsoft Corporation Trusted cloud computing and services framework
US20100306076A1 (en) 2009-05-29 2010-12-02 Ebay Inc. Trusted Integrity Manager (TIM)
KR101270991B1 (ko) * 2009-12-21 2013-06-04 한국전자통신연구원 계층적 역할 기반 접근 제어를 위한 키 트리 구성 및 키 분배 방법
US9081989B2 (en) 2010-03-25 2015-07-14 Virtustream Canada Holdings, Inc. System and method for secure cloud computing
US20120102220A1 (en) * 2010-10-20 2012-04-26 Microsoft Corporation Routing traffic in an online service with high availability
US20120151209A1 (en) 2010-12-09 2012-06-14 Bae Systems National Security Solutions Inc. Multilevel security server framework
US8713628B2 (en) 2011-02-08 2014-04-29 Verizon Patent And Licensing Inc. Method and system for providing cloud based network security services
US9100188B2 (en) 2011-04-18 2015-08-04 Bank Of America Corporation Hardware-based root of trust for cloud environments
US20130061310A1 (en) 2011-09-06 2013-03-07 Wesley W. Whitmyer, Jr. Security server for cloud computing
WO2013101731A1 (en) 2011-12-29 2013-07-04 Imation Corp. Cloud-based hardware security modules
US10089458B2 (en) 2013-09-26 2018-10-02 Citrix Systems, Inc. Separate, disposable execution environment for accessing unverified content
US9258331B2 (en) 2013-12-27 2016-02-09 Trapezoid, Inc. System and method for hardware-based trust control management
US9652631B2 (en) * 2014-05-05 2017-05-16 Microsoft Technology Licensing, Llc Secure transport of encrypted virtual machines with continuous owner access
US20160149877A1 (en) 2014-06-05 2016-05-26 Cavium, Inc. Systems and methods for cloud-based web service security management basedon hardware security module
US9571279B2 (en) * 2014-06-05 2017-02-14 Cavium, Inc. Systems and methods for secured backup of hardware security modules for cloud-based web services
US9246690B1 (en) * 2014-09-03 2016-01-26 Amazon Technologies, Inc. Secure execution environment services
CN105224387A (zh) 2015-09-07 2016-01-06 浪潮集团有限公司 一种云计算下虚拟机的***署方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070230706A1 (en) * 2006-04-04 2007-10-04 Paul Youn Method and apparatus for facilitating role-based cryptographic key management for a database
US20090172781A1 (en) * 2007-12-20 2009-07-02 Fujitsu Limited Trusted virtual machine as a client
JP2009175945A (ja) * 2008-01-23 2009-08-06 Nec Corp サービス評価装置、方法及びプログラム
US20100082991A1 (en) * 2008-09-30 2010-04-01 Hewlett-Packard Development Company, L.P. Trusted key management for virtualized platforms
CN102208000A (zh) * 2010-03-31 2011-10-05 伊姆西公司 为虚拟机镜像提供安全机制的方法和***
US20130152047A1 (en) * 2011-11-22 2013-06-13 Solano Labs, Inc System for distributed software quality improvement
US20120266209A1 (en) * 2012-06-11 2012-10-18 David Jeffrey Gooding Method of Secure Electric Power Grid Operations Using Common Cyber Security Services
CN104756127A (zh) * 2012-10-12 2015-07-01 皇家飞利浦有限公司 通过虚拟机进行安全数据处理
CN104982005A (zh) * 2013-01-22 2015-10-14 亚马逊技术有限公司 虚拟化环境中的特权加密服务
CN105493099A (zh) * 2013-07-01 2016-04-13 亚马逊技术有限公司 用于托管虚拟机的加密证实资源
US20150074764A1 (en) * 2013-09-12 2015-03-12 The Boeing Company Method of authorizing an operation to be performed on a targeted computing device
CN104486307A (zh) * 2014-12-03 2015-04-01 中国电子科技集团公司第三十研究所 一种基于同态加密的分权密钥管理方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
M. KU, D. MIN AND E. CHOI: "Analysis of virtual machine creation characteristics on virtualized computing environment", 《THE 7TH INTERNATIONAL CONFERENCE ON NETWORKED COMPUTING AND ADVANCED INFORMATION MANAGEMENT》 *
王栋博: "网格服务中虚拟计算环境的可信保证机制", 《微计算机信息》 *
祝凯捷等: "密钥安全及其在虚拟化技术下的新发展", 《密码学报》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022206811A1 (zh) * 2021-03-31 2022-10-06 华为云计算技术有限公司 一种云服务***以及基于云服务的数据处理方法
US20220357938A1 (en) * 2021-05-04 2022-11-10 Red Hat, Inc. Automatically configuring and deploying a software operator in a distributed computing environment from a package
US11900089B2 (en) * 2021-05-04 2024-02-13 Red Hat, Inc. Automatically configuring and deploying a software operator in a distributed computing environment from a package

Also Published As

Publication number Publication date
WO2018080814A1 (en) 2018-05-03
US10871984B2 (en) 2020-12-22
US20190243678A1 (en) 2019-08-08
KR102435719B1 (ko) 2022-08-23
CN115795511A (zh) 2023-03-14
EP3731121A1 (en) 2020-10-28
KR20190067819A (ko) 2019-06-17
EP3731121B1 (en) 2023-04-12
EP3532975B1 (en) 2020-07-15
JP6985385B2 (ja) 2021-12-22
US10310885B2 (en) 2019-06-04
JP2019533253A (ja) 2019-11-14
EP3532975A1 (en) 2019-09-04
US20180113730A1 (en) 2018-04-26
CN109844748B (zh) 2023-01-06

Similar Documents

Publication Publication Date Title
CN109844748A (zh) 托管在虚拟安全环境中的安全服务
CN104969234B (zh) 用于虚拟机的测量的信任根
KR101608510B1 (ko) 글로벌 플랫폼 규격을 사용하는 발행자 보안 도메인에 대한 키 관리 시스템 및 방법
WO2015100188A1 (en) Virtual machine assurances
US20210234681A1 (en) Binding secure objects of a security module to a secure guest
AU2021302892B2 (en) Hypervisor protected key
TWI786373B (zh) 用於安全介面控制之安全執行客體所有者控制之電腦實施方法、電腦系統及電腦程式產品
TWI808749B (zh) 用於安全客體映像及後設資料更新之電腦程式產品、電腦系統及電腦實施方法
US20220414223A1 (en) Training data protection for artificial intelligence model in partitioned execution environment
US20220198064A1 (en) Provisioning secure/encrypted virtual machines in a cloud infrastructure
CN117940900A (zh) 存储安全虚拟机的诊断状态
US20220198070A1 (en) Provisioning secure/encrypted virtual machines in a cloud infrastructure
US11809568B2 (en) Hypervisor having local keystore
US20240176634A1 (en) Updating secure guest metadata of a specific guest instance
US20230401328A1 (en) Protecting sensitive data dump information
CN115840946A (zh) 跨云容器镜像部署方法、装置、计算机设备和存储介质
CN116964983A (zh) 使用多个密码***生成混合安全证书

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