CN110383277B - 虚拟机监视器测量代理 - Google Patents
虚拟机监视器测量代理 Download PDFInfo
- Publication number
- CN110383277B CN110383277B CN201780087986.2A CN201780087986A CN110383277B CN 110383277 B CN110383277 B CN 110383277B CN 201780087986 A CN201780087986 A CN 201780087986A CN 110383277 B CN110383277 B CN 110383277B
- Authority
- CN
- China
- Prior art keywords
- client application
- authorization
- virtual machine
- machine monitor
- measurement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000005259 measurement Methods 0.000 title claims abstract description 108
- 238000013475 authorization Methods 0.000 claims abstract description 112
- 238000000034 method Methods 0.000 claims description 34
- 238000004891 communication Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 8
- 238000010295 mobile communication Methods 0.000 claims description 6
- 238000004883 computer application Methods 0.000 description 32
- 230000008901 benefit Effects 0.000 description 10
- 230000004224 protection Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910000078 germane Inorganic materials 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
- G06F21/126—Interacting with the operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/74—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
提供了一种装置,所述装置包括用于提供SEE和REE的处理器和存储器。所述处理器用于提供:用于以用户权限级别执行的客户端应用,和用于以虚拟机监视器权限级别执行的虚拟机监视器。所述用户权限级别的限制比所述虚拟机监视器权限级别多。所述处理器还用于提供可信应用,所述可信应用用于在所述SEE内执行。所述可信应用向所述客户端应用提供安全服务。所述处理器用于:将来自所述客户端应用的安全服务请求发送给所述可信应用;将测量请求发送给所述虚拟机监视器;基于所述客户端应用在所述虚拟机监视器内生成测量值;将所述测量值返回给所述可信应用;以及确定所述客户端应用是否被授权访问所述安全服务。所述授权确定基于所述测量值。
Description
技术领域
本发明的各方面大体上涉及软件安全,尤其涉及访问安全服务的授权和认证。
背景技术
现代计算装置,特别是移动通信设备中使用的计算装置,越来越依赖数字安全来保护敏感和有价值的数字信息。理想情况下,安全关键软件程序应在安全的执行环境中执行,例如基于硬件的可信执行环境。安全执行环境最好是隔离的计算空间,在该计算空间中可以安全地使用加密安全资源,例如密码键、敏感数据和专有密码算法。隔离可以确保只有经过授权的实体、过程、对象等才能访问受保护的安全服务和安全资源。
为了提高安全性,需要将安全执行环境限制为一小组安全关键应用,称为可信应用。由于需要限制可信应用的大小和范围,所以这一小组可信应用的功能不足以支撑现今的终端用户所期望的丰富计算体验。提供这种令人愉快的计算体验通常会委托给富操作系统,如Android框架、Linux、Windows Phone OS、iOS以及其它富操作系统。然而,富操作系统的大小以及发布大量补丁和更新的需要使得它们很容易受到攻击。在2010年,Linux增加到1500万行代码和37000个文件。
传统的安全解决方案设计为在富执行环境中运行非安全世界应用,并将安全服务委托给在安全执行环境内运行的可信应用,并且使用良好定义的安全通信信道在这些环境之间传输消息。例如,媒体播放器可向在安全环境内执行的可信应用发送包含加密内容的数字权限管理(digital rights management,DRM)许可证,以对许可证内容进行解密。解密之后,可信应用可以将解密后的内容返回给媒体播放器应用。
在以上用例中出现了一个安全问题:恶意应用可能伪装成媒体播放器。DRM可信应用无法检测安全攻击,并且可能向恶意应用提供所请求的安全服务。一般而言,可信应用无法对客户端应用进行认证,因此可能向未经授权的客户端应用提供敏感信息。
经授权的客户端应用经常会发生变化,例如,当发布软件更新时,或者当用户从已知来源或创作者下载需要访问在安全执行环境中运行的可信应用所提供的安全服务的一种不同类型的客户端应用时。
因此,需要改进方法和装置来确定何时授权客户端应用访问在安全执行环境中执行的可信应用所提供的安全服务,其中安全执行环境包含机密关键材料。相应地,需要提供至少能解决部分上述问题的方法和装置。
发明内容
所公开的实施例的目的是提供用于保护计算装置和移动通信设备中的安全服务的改进装置和方法。对尝试访问安全服务的计算机应用进行可靠认证会带来安全风险。这种安全风险通过所公开的实施例的各方面来解决。在所附权利要求书中可以发现更多优势和修改。
根据第一方面,上述和更多目的及优势通过一种包括处理器和存储器的装置获得,其中,所述处理器和所述存储器用于提供安全执行环境和富执行环境。所述处理器用于提供客户端应用和虚拟机监视器,所述客户端应用用于以用户权限级别在所述富执行环境内执行,所述虚拟机监视器用于以虚拟机监视器权限级别在所述富执行环境内执行。所述用户权限级别的限制比所述虚拟机监视器权限级别多。所述处理器还用于提供可信应用,所述可信应用用于在所述安全执行环境(secure execution environment,SEE)内执行。所述可信应用向所述客户端应用提供安全服务。所述处理器用于:将来自所述客户端应用的安全服务请求发送给所述可信应用;将来自所述可信应用的测量请求发送给所述虚拟机监视器;基于所述客户端应用在所述虚拟机监视器内生成测量值;将来自所述虚拟机监视器的所述测量值返回给所述可信应用;以及在所述可信应用内确定所述客户端应用是否被授权访问所请求的安全服务。所述授权确定基于所述测量值。这允许所述计算装置在授权访问安全服务之前安全可靠地标识所述客户端应用。与在Linux内核中生成所述测量值相比,在所述虚拟机监视器内生成所述测量值降低了风险。
根据所述第一方面,在所述装置的第一可能实施形式中,所述处理器还用于提供用于在所述安全执行环境内执行的授权服务。所述处理器用于将来自所述可信应用的授权请求发送给所述授权服务,其中所述授权请求包括与所述客户端应用和所述安全服务请求相对应的信息。所述处理器将来自所述授权服务的所述测量请求发送给所述虚拟机监视器。在所述SEE中使用授权服务的优势是,若干可信应用可以都访问同一授权服务来对客户端应用进行授权,而无需在每个可信应用中复制授权码。
根据如上所述第一方面或根据所述第一方面的所述第一可能实施形式,在所述装置的第二可能实施形式中,所述授权服务包括访问控制列表,所述处理器用于基于所述测量值和所述访问控制列表确定所述客户端应用是否被授权访问所请求的安全服务。在所述授权服务中包含访问控制列表就无需针对每次授权确定访问外部服务。
根据如上所述第一方面或根据所述第一方面的所述第二可能实施形式,在所述装置的第三可能实施形式中,如果在所述访问控制列表中未找到所述测量值,则所述处理器用于将来自所述授权服务的授权请求发送给基于网络的授权服务器,其中所述授权请求包括所述测量值。所述处理器从所述基于网络的授权服务器接收授权结果,并基于所述授权结果确定所述客户端应用是否被授权访问所请求的安全服务。访问外部授权服务允许所述装置在安装新客户端应用时或更新客户端应用时调整其授权确定。
根据如上所述第一方面或根据所述第一方面的所述第三可能实施形式,在所述装置的第四可能实施形式中,所述处理器用于基于所接收的授权结果更新所述访问控制列表。基于从基于网络的服务接收的结果来更新所述本地访问控制列表减少了所述授权服务需要与所述基于网络的外部服务联系的次数。
根据如上所述第一方面或根据任一前述可能实施形式,在所述装置的第五可能实施形式中,所述处理器用于在所述安全执行环境与所述虚拟机监视器之间建立安全通信信道,并通过所述安全通信信道将来自所述安全执行环境的所述测量请求发送给所述测量代理。使用安全通信信道防止恶意应用拦截所述测量请求或响应以获得对未经授权的安全服务的访问。
根据如上所述第一方面或根据所述第一方面的所述第五可能实施形式,在所述装置的第六可能实施形式中,所述存储器包括物理随机存取存储器,所述安全通信信道包括所述物理随机存取存储器的安全部分。所述物理随机存取存储器的所述安全部分仅可由所述安全执行环境和所述虚拟机监视器访问。使用安全共享存储器提供了一种有效且安全的方法来保护所述授权服务与所述测量代理之间的通信。
根据如上所述第一方面或根据任一前述可能实施形式,在所述装置的第七可能实施形式中,所述存储器包括非易失性存储器,所述测量值包括哈希值。所述处理器用于将所述客户端应用从所述非易失性存储器加载到所述物理随机存取存储器的预定部分,并基于所述物理随机存取存储器的所述预定部分生成所述哈希值。通过将所述客户端应用加载到所述物理随机存取存储器的预定部分,使得所述测量代理能够定位所述客户端应用,而无需依赖所述内核来获取所述客户端应用的位置。
根据如上所述第一方面或根据所述第一方面的所述第七可能实施形式,在所述装置的第八可能实施形式中,所述处理器用于通过以下方式生成所述哈希值:针对存储在所述物理随机存取存储器的所述预定部分中的数据计算哈希。通过对所述物理随机存取存储器的所述预定部分计算所述哈希,使得所述测量代理能够在不与其它低优先级和较不安全的计算机应用进行协调的情况下生成测量。
根据如上所述第一方面或根据所述第一方面的所述第七或第八可能实施形式,在所述装置的第九可能实施形式中,所述处理器用于提供操作系统内核,所述操作系统内核用于以内核权限级别在所述富执行环境内执行,其中,所述内核权限级别的限制比所述虚拟机监视器权限级别多,并且所述内核权限级别的限制比所述用户权限级别少。所述处理器在以所述内核权限级别和所述虚拟机监视器权限级别之一运行时加载所述客户端应用。大多数操作系统内核都包括用于加载客户端应用的代码。使用所述内核来加载所述客户端应用减少了代码开发量并使所述虚拟机监视器保持较小。
根据如上所述第一方面或根据所述第一方面的所述第七至第九可能实施形式中的任一可能实施形式,在所述装置的第十可能实施形式中,所述处理器用于在加载所述客户端应用之后生成所述物理随机存取存储器的所述预定部分的数字签名,并且所述测量值包括所述数字签名。使用数字签名为所述测量增加了一定程度的密码安全性。
根据如上所述第一方面或根据所述第一方面的任一前述可能实施形式,在所述装置的第十一可能实施形式中,所述测量值包括关于所述客户端应用的元数据,所述处理器用于基于以下内容中的至少一项生成所述测量值:所述哈希值、所述数字签名、与所述客户端应用的所述创作者对应的数字证书,以及与所述客户端应用对应的数字证书。这提供了一个唯一标识所述客户端应用的可靠度量值。
根据第二方面,上述和更多目的及优势通过一种移动通信设备获得,所述移动通信设备包含根据如上所述第一方面或根据所述第一方面的任一前述可能实施形式的所述装置。现代移动通信设备非常适于利用所述第一方面或所述第一方面的任何实施形式所提供的益处。
根据第三方面,上述和更多目的及优势通过一种方法获得,所述方法包括将来自客户端应用的安全服务请求发送给可信应用,其中,所述客户端应用以用户权限级别在富执行环境内执行,所述可信应用在安全执行环境内执行。所述方法将来自所述安全执行环境的测量请求发送给虚拟机监视器,其中所述虚拟机监视器以虚拟机监视器权限级别在所述富执行环境内执行,并且所述方法在所述虚拟机监视器内生成测量值,其中所述测量值包括与所述客户端应用对应的元数据。所述方法将来自所述虚拟机监视器的所述测量值返回给所述可信应用,并在所述安全执行环境内确定授权结果,其中,所述授权结果基于所述测量值,并且所述授权结果包括对所述客户端应用是否被授权访问所请求的安全服务的指示。所述方法将所确定的授权结果提供给所述可信应用。所述方法提供了一种在授权访问安全服务之前标识客户端应用的安全方式。
根据第四方面,上述和更多目的及优势通过一种计算机程序产品获得,所述计算机程序产品包括非瞬时性计算机程序指令,所述指令在由处理器执行时用于使所述处理器执行根据所述第三方面所述的方法。
根据第五方面,上述和更多目的及优势通过一种无线接收器获得,所述无线接收器包括根据如上所述第一方面或根据所述第一方面的任一前述可能实施形式的所述装置。
附图说明
在本公开内容的以下详述部分中,将参看附图中所展示的示例性实施例来更详细地解释本发明,其中:
图1示出了结合所公开实施例的各方面的示例性计算装置的方框图;
图2示出了结合所公开实施例的各方面的示例性计算平台的方框图;
图3示出了结合所公开实施例的各方面的授权访问安全服务的示例性方法的流程图。
具体实施方式
图1示出了结合所公开实施例的各方面的示例性计算装置100的框图。示例性计算装置100包括处理器210和存储器212,其中,如下文进一步描述,处理器210和存储器212用于提供安全执行环境(secure execution environment,SEE)112和富执行环境(richexecution environment,REE)230。本文使用的术语“安全执行环境”(SEE)112一般是指用于确保正在SEE 112中执行或存储在SEE 112内的计算机程序代码和数据的机密性和完整性的计算环境。
SEE 112的完整性和安全性可通过减少程序代码和SEE 112所提供的功能的数量来提高。因此,适度安全的SEE 112无法提供计算装置的用户所期望的丰富计算体验。为了支持这种理想的丰富计算体验,计算装置100用于提供富执行环境230,其可以与SEE 112一起运行但独立于SEE 112。
本文使用的术语“富执行环境”(REE)230有时也称为“非安全世界”或“非安全世界计算环境”,一般包含计算装置100的所有硬件和软件,除了包含在SEE 112内并由其保护的硬件、固件和/或软件。REE 230用于提供能够支持丰富计算体验的硬件和软件以满足现代用户的期望。
SEE 112包括物理和软件安全,以保护其内容免受来自恶意计算机应用内的攻击和/或对计算装置100的物理篡改。相比之下,REE 230不能提供与SEE 112所提供的高度安全性相同的高度安全性。但是,REE 230包括一套多样化的基于软件和硬件的保护,使得多个计算机应用能够安全地并行执行,同时保护这些计算机应用不受其它并发执行的计算机应用的不必要访问或攻击。
SEE 112中的保护通过权限级别提供,在本文中也称为执行模式。这些权限级别或执行模式可通过基于CPU的保护来提供,和/或可根据需要通过其它专门的硬件保护来支持。基于CPU的保护是基于权限这一概念,通过这个概念,拥有较多权限的计算机应用可以修改其自己的资源,还可以修改拥有较少权限的计算机应用的资源。这样,拥有较多权限的计算机应用可限制或阻止拥有较少权限的计算机应用访问某些资源。如本文所使用的,与拥有较少权限或以较低权限级别执行的计算机应用相比,拥有较多权限的应用被认为具有较高的权限级别,并且其在可以访问的计算资源方面受到的限制较少。以较低权限级别执行的计算机应用被认为比以较高权限级别执行的计算机应用更受限制。
在一个实施例中,客户端应用104用于以用户权限级别在富执行环境230内执行。虚拟机监视器108用于以虚拟机监视器权限级别在富执行环境230内执行。用户权限级别的限制比虚拟机监视器权限级别多。可信应用114用于在安全执行环境112内执行以及为客户端应用提供安全服务。
在一个实施例中,处理器210用于将来自客户端应用104的安全服务124请求发送给可信应用114。处理器210还用于将来自可信应用114的测量请求128发送给虚拟机监视器108,并且基于客户端应用104在虚拟机监视器108内生成测量值。
如图1和图2所示,处理器210用于将来自虚拟机监视器108的测量值返回给可信应用114,并且在可信应用114内确定客户端应用104是否被授权访问所请求的安全服务。本示例中的确定基于测量值。在某些实施例中,确定可基于访问控制列表。在需要时,测量值可包括关于客户端应用104的创作者或来源的信息,并且确定可基于同一来源或同一创作者策略,其中,由可信来源或创作者创建的客户端应用被授权访问所请求的安全服务。
REE 230中包括虚拟机监视器108以提供基本软件服务以及管理计算机硬件和其它计算资源。虚拟机监视器108也称为虚拟机管理器或虚拟机监控器,是一种用于创建和运行虚拟机的相对较小的计算机应用。在本说明书中,某些计算机应用将被描述为执行操作、提供功能、采取行动等,但是应理解,处理器210在执行与所描述的计算机应用相关联的计算机程序指令时,实际上是在执行操作、功能和行动等。虚拟机是由虚拟机监视器108配置的虚拟操作平台,使在虚拟机内托管或执行的客户应用看起来就像客户应用直接在硬件平台上执行一样。在虚拟机或虚拟操作平台内部执行的应用称为客户应用。
虚拟机监视器108创建实际计算机硬件的抽象,并且只向客户应用公开硬件抽象。虚拟机监视器108以虚拟机监视器权限级别执行,虚拟机监视器权限级别在本文中也称为虚拟机监视器模式,其是处理器210所提供的最高权限级别。该虚拟机监视器权限级别允许虚拟机监视器108对客户计算机应用隐藏计算机硬件的几个部分,例如存储器212或其它硬件设备(未示出)的几个部分。
在虚拟机内执行的客户应用以低于虚拟机监视器108的权限级别执行,因此虚拟机监视器108可以限制或阻止客户应用访问或甚至发现呈现给其虚拟机的硬件抽象中未包含的计算机资源。例如,计算装置100可包括存储器管理单元或其它存储器管理构件,例如页表,以便管理存储器212的各部分。通过从呈现给虚拟机的硬件抽象中省略存储器管理单元、页表或其它存储器管理构件,以较低权限级别在虚拟机内执行的客户应用,例如内核106,将无法访问或发现存储器212的这些受保护部分。通过这种方式,虚拟机监视器可以将物理存储器136的某些受保护部分预留给其自己使用。由于虚拟机监视器108以虚拟机监视器权限级别(这是最高且限制性最小的权限级别)执行,客户应用以内核权限级别执行,而内核权限级别比虚拟机监视器权限级别低且限制更多,所以客户应用无法直接访问硬件,而是仅被允许访问由虚拟机监视器108提供给虚拟机的硬件抽象。
内核106是在虚拟机监视器108所配置的虚拟机内执行的客户应用。内核106是操作系统(operating system,OS)内核,例如广泛分布的Linux OS的各种风格中的任一种、由GOOGLETM Inc.维护的Android框架或Android OS、由APPLETM Inc.维护的iOS、由MICROSOFTTM Corp.维护的Windows OS,或所需要的其它合适的专有或公共可用操作系统。操作系统是一种计算机应用,用于为其它计算机应用提供公共服务并管理计算装置的硬件和软件资源。操作系统的核心被称为内核106,也可称为操作系统内核106。内核106管理用户空间102,并将在用户空间102中执行的客户端应用104连接到计算机的可用硬件和软件资源。但是,在计算装置100中,内核106以低于虚拟机监视器权限级别的内核权限级别在虚拟机或虚拟操作平台内执行,因此仅可以访问和管理虚拟机监视器108向内核106公开的硬件抽象中所包含的硬件和其它计算资源。
在传统解决方案中,内核106和SEE 112的完整性通过安全的启动过程来保证。包含内核106和SEE 112的图像可包括数字签名,使得仅经过授权的实体才能够生成数字签名。这保证了攻击者无法用恶意版本来替换内核106或SEE 112。由于内核106直接与在用户空间102中执行的客户端应用104交互,所以存在如下风险:恶意客户端应用104可以通过允许对安全服务的未授权访问的方式来破坏内核106。在用户空间102中执行的客户端应用104要破坏虚拟机监视器108则困难得多,因为虚拟机监视器108的代码库要小得多,并且虚拟机监视器108不直接与客户端应用104交互。
内核106用于配置和管理用户空间102,或者,更具体地,用于在用户空间102内加载、执行和管理客户端应用104。在需要时,内核106可加载并执行多个客户端应用104,并且管理每个客户端应用104所使用的计算资源。客户端应用以较低权限级别执行,在本文中称为用户权限级别。用户权限级别低于内核权限级别。通过以用户权限级别执行客户端应用,内核106能够控制每个客户端应用104所使用的计算资源,并阻止一个客户端应用104访问或破坏内核106或用户空间102的任何其它部分。
虚拟机监视器108包括测量代理110,用于收集唯一标识客户端应用104的信息。如下文将进一步描述的,所收集的信息可以用于将客户端应用104标识为被授权执行某些功能或任务。内核106可将从可信应用114请求某些安全服务的客户端应用104加载到物理存储器212a的固定或预定部分。在某些实施例中,需要让虚拟机监视器108将客户端应用104加载到物理存储器212a的预定部分。然后,测量代理110针对客户端应用104所加载到的物理存储器212a的预定部分计算哈希。测量代理110还可在客户端应用104被加载之后为其生成数字签名。或者,客户端应用的创作者可以生成客户端应用104的二进制数字签名。然后,授权服务可依赖于同源策略来授权由可信创作者分发的任何客户端应用104。例如,当可信创作者分发经授权的客户端应用的频繁更新时,同源策略是有用的。
在某些实施例中,测量代理110用于收集与客户端应用104相关联的附加元数据。例如,这些附加元数据可包括由发起实体嵌入在数字证书中的创作者、应用名称、发布日期等信息,其中数字证书由可信的证书颁发中心签名并随客户端应用104一起分发。然后,可将附加元数据包含在测量值中以帮助标识并最终授权客户端应用104。
REE 230中提供三个主要权限级别。虚拟机监视器权限级别是权限最多或限制最少的级别,允许访问REE 230中的所有硬件、固件和软件。由于在虚拟机监视器模式下执行的计算机应用可以访问所有硬件,包括物理随机存取存储器和其它存储器212以及可在REE230内访问的任何存储器管理单元(memory management unit,MMU),因此以虚拟机监视器权限级别执行的计算机应用也可以访问REE 230内的所有软件和固件。
下一个限制最少的权限级别称为内核权限级别。内核权限级别的限制比虚拟机监视器权限级别多,从而允许以虚拟机监视器权限级别执行的计算机应用限定或限制以内核权限级别执行的计算机应用被允许执行的操作。
限制最多的权限级别是用户权限级别。在用户空间102中执行的计算机应用,例如客户端应用104,以用户权限级别执行。用户权限级别的限制比虚拟机监视器权限级别和内核权限级别都多。因此,以用户权限级别执行的计算机应用可受制于或受限于内核模式应用以及虚拟机监视器模式应用。
在某些实施例中,可能需要通过在上述虚拟机监视器、内核和用户权限级别中的每一个权限级别内创建额外的权限级别来支持更细粒度的保护控制。然而,使用更细粒度的控制与本主题公开关系不大,并且为了帮助理解,将使用术语虚拟机监视器权限级别、内核权限级别和用户权限级别来指计算机应用在虚拟机监视器108、内核106或用户空间102中的每一个中所使用的所有更精细权限级别。
安全服务,例如需要使用密码、密钥和/或其它机密数据或资料的服务,需要同时通过软件安全和物理安全进行保护。SEE 112在计算装置100中提供适于存储和执行安全服务的安全性。SEE 112用于托管和保护可信应用114和其它安全服务124。在一个实施例中,SEE 112包括与上文结合REE 230描述的计算环境类似但与之分离的计算环境,其中REE230包含其自己的权限级别和执行环境。
可信应用114在SEE 112内执行并用于为在用户空间102中执行的客户端应用104提供安全服务。从对可信应用114所公开的安全服务的访问中受益的一种可能类型的客户端应用104的一个示例可以是媒体播放器应用,该媒体播放器应用使用安全服务对数字权限管理(digital rights management,DRM)证书执行密码操作以访问受DRM保护的数据。很容易想到,未经授权的应用或恶意应用也可能试图访问可信应用114所提供的安全服务。因此,可信应用在执行任何所请求的操作之前都需要验证客户端应用被授权使用安全服务。
SEE 112包括授权服务118,用于确定客户端应用104是否被授权访问可信应用114所提供的安全服务。授权服务118在SEE 112内执行以确保恶意应用无法篡改授权过程,也无法访问其未被授权的服务。授权确定可在独立于可信应用114的授权服务118中实现,如图1所示。或者,授权服务和授权确定可直接包含在可信应用114内。
授权服务118在进行任何授权确定之前验证客户端应用104的身份很重要。为了支持可靠地标识客户端应用104,授权服务118从测量代理110请求关于客户端应用104的信息。授权服务118使用从测量代理110接收的度量值来支持进行授权确定。该确定可基于在SEE112内维护的访问控制列表。当在本地访问控制列表中未找到与客户端应用104相关联的测量值时,授权服务118可联系外部授权服务120。由于与外部实体通信会比较耗时,因此需要尽量减少外部通信量。授权服务118需要与外部授权服务120联系的频率可以通过以下方式来减少:使授权服务118基于从授权服务120接收的信息来更新其本地访问控制列表。
在一个实施例中,授权服务118与外部授权服务120之间的通信信道134使用密码来保护。授权服务118和外部授权服务120可配置有相同的共享密钥116、138。然后,可以使用共享密钥116、138对通过通信信道134发送的数据进行加密/解密。
为了进行授权确定,必须可靠地标识客户端应用104。但是,可向计算装置100提供客户端应用104的新版本,或者可部署全新的客户端应用104。这些新的或更新后的应用可能需要使用可信应用114提供的安全服务,因此将需要授权确定。需要在计算装置100中包含一种稳妥、安全的机制以动态更新用于对客户端应用104进行授权的信息。
在需要使用可信应用114所提供的安全服务的客户端应用104的执行期间,客户端应用104向正在SEE 112内执行的可信应用发送对安全服务124的请求。在响应对安全服务124的请求之前,可信应用114需要验证正在请求安全服务124的客户端应用104被授权使用所请求的服务。
可信应用114向虚拟机监视器108或向虚拟机监视器108中包含的测量代理110发送测量请求128。由于授权决定基于测量值,所以可对SEE 112与虚拟机监视器108之间的用来发送测量值的通信信道132进行保护,以防止恶意应用篡改测量值。在某些实施例中,可通过在虚拟机监视器108与SEE 112之间共享物理随机存取存储器226的安全部分136来保护通信信道132。
能够拦截测量请求/响应128的客户端应用104也能够修改被拦截的消息并向授权服务118返回虚假测量数据,从而获得对安全服务的未经授权的访问。保护通信信道132可以防止访问测量请求/响应,并保护测量请求/响应128的机密性和完整性。
保护通信信道132的一个示例性方法是通过使用物理随机存取存储器136的安全部分。物理随机存取存储器136的该安全部分仅可由虚拟机监视器108和SEE 112访问,使得虚拟机监视器108和SEE 112可以信任从物理随机存取存储器136的共享部分中读取的消息信息。
虚拟机监视器108或虚拟机监视器108内包含的测量代理110生成与客户端应用对应的测量值。该测量值可包括客户端应用的哈希或客户端应用104所加载到的物理存储器226的预定部分212a的哈希。在某些实施例中,测量代理110用于将额外的元数据合并到测量值中。元数据可包括关于客户端应用104、应用的生成实体、创作者等的信息,并可从嵌入在与客户端应用104相关联的数字证书中的数据中获得。
测量值被返回给授权服务118,其中测量值用于确定客户端应用104是否被授权访问所请求的安全服务。在一个实施例中,对照SEE 112内维护的访问控制列表来检查测量值。如果测量值与访问控制列表中的信息对应,则可进行授权确定。
当无法基于访问控制列表进行授权确定时,授权服务118可联系外部授权服务120以获得授权确定。在一个实施例中,授权服务118基于从外部授权服务120返回的信息来更新本地维护的访问控制列表。
一旦确定客户端应用104被授权访问所请求的安全服务,可信应用就可执行所请求的安全操作并将结果返回给客户端应用104。
图2示出了示例性计算装置200的框图,计算装置200用于提供适于用作上文结合图1描述的SEE 112的SEE 112。计算装置200可并入到移动电话、平板手机、平板电脑、膝上型电脑、机顶盒、电视机、汽车等各类计算装置中,并且可以有利地用于保护位于SEE 112内的由可信应用114提供的安全服务124。计算装置200用于提供SEE 112和REE 230。
REE 230用于提供广泛的功能和特征以支持各种各样的应用并提供增强的用户体验。然而,REE 230本质上没有SEE 112安全,并且无法安全地执行密码操作而不冒着丢失密码键和数据的机密性或完整性的风险。
在图2的示例中,计算装置200包括耦合到存储器212的处理器210,其中,处理器210的第一部分202和存储器212的第一部分204用于支持SEE 112。处理器210的第二部分206和存储器212的第二部分208用于支持REE 230。
处理器210可以是单个处理设备或可包括多个处理设备,包括专用设备,例如数字信号处理(digital signal processing,DSP)设备、微处理器、专用处理设备、并行处理核或通用计算机处理器。处理器210用于从存储器212读取程序指令并执行本文描述的方法和过程。处理器还可包括与图形处理单元(graphics processing unit,GPU)协作的CPU,该GPU可包括DSP或其它专用图形处理硬件。
存储器或物理存储器212是各种类型的易失性和非易失性计算机存储器的组合,例如磁盘或光盘,或其它类型的只读存储器(read only memory,ROM)222,以及随机存取存储器(random access memory,RAM)224。物理存储器212可包括任何所需类型的计算机存储器。存储器212的第一或安全部分204可包括用于保护机密数据的一次性可编程存储器。存储器212存储可由处理器210访问和执行的计算机程序指令,使得处理器执行各种所需计算机实施过程或方法,例如本文描述的用于保护安全服务的方法。
SEE 112用于确保存储在SEE存储器部分204内的数据和计算机程序的机密性和完整性,并且保护在处理器210的安全部分202内执行的计算机程序。SEE 112可例如使用各种技术来实现,这些技术包括例如可信执行环境(trusted execution environment,TEE)或用于在计算装置200内同时提供REE 230和SEE 112这两者的其它合适技术。
在某些实施例中,可能需要配置处理器210的安全部分202以访问外部授权服务120。在需要时,可使用共享密钥来保护处理器210的安全部分202与外部授权服务120之间的通信,该共享密钥具有在SEE 112内保护的共享密钥116的第一副本和位于外部授权服务120内的共享密钥138的第二副本。
为了维持SEE 112与REE 230之间的安全边界,仅允许处理器210的第二部分206访问218存储器208的REE部分。SEE 112提供的额外安全性允许处理器210的SEE部分202访问存储器212的第一部分204和存储器212的第二部分208而不会显著增加风险。
图3示出了用于授权访问在安全执行环境内执行的可信应用所提供的安全服务的示例性方法300。在方法300中,需要安全服务的客户端应用从可信应用请求302安全服务。该客户端应用可以是任何面向用户的适当计算机应用,例如在移动通信设备或其它用于执行面向用户的计算机应用的适当计算装置上执行的媒体播放器应用。
术语“安全服务”一般指需要使用机密数据或关键资料或受保护的密码算法的计算服务。执行安全服务时所需的机密材料需要进行良好保护以防被篡改或盗窃,因此可包含在SEE内,例如上文结合图1和图2描述的SEE 112。客户端应用适于在较低级别的保护下执行且需要提供丰富的计算体验。因此,客户端应用在REE或非安全世界计算环境中运行。
在为安全服务请求提供服务之前,可信应用向授权服务提供304授权请求。授权服务可实现为可信应用的组成部分。或者,授权服务可实现为与可信应用在同一SEE内执行的单独授权服务,使得可能正在同一SEE中执行的多个可信应用可使用相同的授权服务。授权请求包括来自客户端应用的信息,还可包括关于所请求的安全服务和/或发出请求的可信应用的信息。
授权服务将来自SEE的测量请求发送306给在REE中执行的虚拟机监视器内包含的测量代理。由于虚拟机监视器以较高权限级别执行,所以其能够访问客户端应用以执行测量,同时防止客户端应用对测量或所得测量值进行篡改。
虚拟机监视器中包含的测量代理测量308客户端应用。测量客户端应用需要生成唯一标识客户端应用的测量值。还需要使测量值确保客户端应用的完整性。例如,测量代理可针对客户端应用所占用的内存来计算哈希值。在某些实施例中,虚拟机监视器,或内核等其它有权限的计算机应用,可将客户端应用加载到随机存取存储器的预定部分,然后针对随机存取存储器的该预定部分计算哈希值。虚拟机监视器可能还需要为所加载的客户端应用生成数字签名。
除了哈希值或其它计算值之外,测量代理还可收集关于客户端应用的其它信息。例如,许多计算机应用在被分发哈希值或其它值的同时还被分发数字证书,该数字证书标识客户端应用的分发者或创作者。证书使用密码来验证包含在证书中的信息,哈希值或其它值可用于验证客户端应用的完整性。在测量值中包含此信息或其它信息可以帮助授权服务进行授权确定。
例如,当更新了应用时,其可能与授权服务已知的信息不完全匹配。以下做法可能是有用的:将授权服务配置为对由数字证书标识的特定创作者或公司所分发的任何客户端应用进行授权。
测量代理生成的测量值被返回310给SEE中的授权服务。然后,授权服务可以使用测量值进行授权确定312以授权或拒绝访问314客户端应用所请求的请求安全服务。可信应用现在具有可靠、安全的基础来向客户端应用授予或拒绝访问314所请求的安全服务。
测量和验证计算机应用的传统解决方案是可信平台模块(Trusted PlatformModule,TPM),TPM提供的方案通常称为认证启动解决方案。TPM对启动的配置进行测量,并将测量结果与参考值进行比较。只有在启动授权配置时,TPM提供的一些服务才可用。TPM方法不像本文公开的方法那么灵活,并且TPM方法中包含的更新机制会暴露安全风险。
Linux OS提供了一种称为Linux完整性度量架构(Integrity MeasurementArchitecture,IMA)的解决方案,其中Linux内核计算用户空间代码的哈希值。例如,当可执行计算机应用代码被加载到存储器或用户空间时,可计算可执行代码的哈希值。然后,可将计算出的哈希值与Linux内核中存储的参考哈希值进行比较。或者,可将哈希值转发给SEE,然后SEE可以基于该哈希值和访问控制列表(access control list,ACL)做出访问控制决策。当使用IMA进行测量或访问决策时,Linux内核的大小和使用来自各种来源的补丁定期更新Linux内核这一需求会带来很大的安全风险。
因此,尽管文中已示出、描述和指出应用于本发明的示例性实施例的本发明的基本新颖特征,但应理解,所述领域的技术人员可以在不脱离本发明的精神和范围的情况下,对装置和方法的形式和细节以及装置操作进行各种省略、取代和改变。进一步地,明确希望,以大体相同的方式执行大体相同的功能从而实现相同结果的那些元件的所有组合均在本发明的范围内。此外,应认识到,结合所公开的本发明的任何形式或实施例进行展示和/或描述的结构和/或元件可作为设计选择的通用项而并入所揭示或描述或建议的任何其它形式或实施例中。因此,本发明仅受限于随附权利要求书所述的范围。
Claims (21)
1.一种装置(100),其特征在于,包括处理器(210)和存储器(212),所述处理器(210)和所述存储器(212)用于提供安全执行环境(112)和富执行环境(230),其中所述处理器(210)用于提供:
客户端应用(104),用于以用户权限级别在所述富执行环境(230)内执行;
虚拟机监视器(108),用于以虚拟机监视器权限级别在所述富执行环境(230)内执行,其中所述用户权限级别的限制比所述虚拟机监视器权限级别多;以及可信应用(114),用于在所述安全执行环境(112)内执行并向所述客户端应用提供安全服务,
其中,所述处理器(210)用于:
将来自所述客户端应用(104)的安全服务(124)请求发送给所述可信应用(114);
将来自所述可信应用(114)的测量请求(128)发送给所述虚拟机监视器(108);
基于所述客户端应用(104)在所述虚拟机监视器(108)内生成测量值;
将来自所述虚拟机监视器(108)的所述测量值返回给所述可信应用(114);以及
在所述可信应用(114)内确定所述客户端应用(104)是否被授权访问所请求的安全服务,其中所述确定基于所述测量值。
2.根据权利要求1所述的装置(100),其特征在于,所述处理器(210)还用于:
提供用于在所述安全执行环境(112)内执行的授权服务(118);
将来自所述可信应用(114)的授权请求(126)发送给所述授权服务(118),其中所述授权请求(126)包括与所述客户端应用(104)和对所述安全服务(124)的请求相对应的信息;以及
将来自所述授权服务(118)的所述测量请求(128)发送给所述虚拟机监视器(108)。
3.根据权利要求2所述的装置(100),其特征在于,所述授权服务(118)包括访问控制列表,所述处理器(210)用于基于所述测量值和所述访问控制列表确定所述客户端应用(104)是否被授权访问所请求的安全服务。
4.根据权利要求3所述的装置(100),其特征在于,如果在所述访问控制列表中未找到所述测量值,则所述处理器(210)用于:
将来自所述授权服务(118)的授权请求(130)发送给基于网络的授权服务器(120),其中所述授权请求(130)包括所述测量值;
从所述基于网络的授权服务器(120)接收授权结果;以及
基于所述授权结果确定所述客户端应用(104)是否被授权访问所请求的安全服务。
5.根据权利要求4所述的装置(100),其特征在于,所述处理器(210)用于基于所接收的授权结果更新所述访问控制列表。
6.根据权利要求5所述的装置(100),其特征在于,所述处理器(210)用于:
在所述安全执行环境(112)与所述虚拟机监视器(108)之间建立安全通信信道(132);以及
通过所述安全通信信道(132)将来自所述安全执行环境(112)的所述测量请求(128)发送给测量代理(110)。
7.根据权利要求6所述的装置(100),其特征在于,所述存储器(212)包括物理随机存取存储器(224),所述安全通信信道(132)包括所述物理随机存取存储器(224)的安全部分(136),其中所述物理随机存取存储器(224)的所述安全部分(136)仅可由所述安全执行环境(112)和所述虚拟机监视器(108)访问。
8.根据权利要求7所述的装置(100),其特征在于,所述存储器(212)还包括非易失性存储器(222)并且所述测量值包括哈希值,所述处理器(210)用于将所述客户端应用(104)从所述非易失性存储器(222)加载到所述物理随机存取存储器(224)的预定部分(212a),并基于所述物理随机存取存储器(224)的所述预定部分(212a)生成所述哈希值。
9.根据权利要求8所述的装置(100),其特征在于,所述处理器(210)用于通过以下方式生成所述哈希值:针对存储在所述物理随机存取存储器的所述预定部分(212a)中的数据计算哈希。
10.根据权利要求9所述的装置(100),其特征在于,所述处理器(210)用于:
提供操作系统内核(106),其用于以内核权限级别在所述富执行环境(230)内执行,其中,所述内核权限级别的限制比所述虚拟机监视器权限级别多,并且所述内核权限级别的限制比所述用户权限级别少;以及
在以所述内核权限级别和所述虚拟机监视器权限级别之一运行时,加载所述客户端应用(104)。
11.根据权利要求10所述的装置(100),其特征在于,所述处理器(210)用于在加载所述客户端应用(104)之后生成所述物理随机存取存储器(224)的所述预定部分(212a)的数字签名,并且所述测量值包括所述数字签名。
12.根据前述权利要求中任一项所述的装置(100),其特征在于,所述测量值包括关于所述客户端应用(104)的元数据,所述处理器(210)用于基于以下内容中的至少一项生成所述测量值:哈希值、数字签名、与所述客户端应用的创作者对应的数字证书,以及与所述客户端应用对应的数字证书。
13.一种移动通信设备,其特征在于,包括根据前述权利要求中任一项所述的装置(100)。
14.一种方法(300),其特征在于,包括:
将来自客户端应用的安全服务请求(302)发送给可信应用,其中,所述客户端应用以用户权限级别在富执行环境内执行,所述可信应用在安全执行环境内执行;
将来自所述安全执行环境的测量请求(306)发送给虚拟机监视器,其中所述虚拟机监视器以虚拟机监视器权限级别在所述富执行环境内执行;
在所述虚拟机监视器内生成测量值(308),其中所述测量值包括与所述客户端应用对应的元数据;
将来自所述虚拟机监视器的所述测量值返回(310)给所述可信应用;
在所述安全执行环境内确定(312)授权结果,其中,所述授权结果基于所述测量值,并且所述授权结果包括对所述客户端应用是否被授权访问所请求的安全服务的指示;以及
将所确定的授权结果提供(314)给所述可信应用。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
提供用于在所述安全执行环境(112)内执行的授权服务(118);
将来自所述可信应用(114)的授权请求(126)发送给所述授权服务(118),其中所述授权请求(126)包括与所述客户端应用(104)和对所述安全服务(124)的请求相对应的信息;以及
将来自所述授权服务(118)的所述测量请求(128)发送给所述虚拟机监视器(108)。
16.根据权利要求15所述的方法,其特征在于,所述方法还包括:
所述授权服务(118)包括访问控制列表,基于所述测量值和所述访问控制列表确定所述客户端应用(104)是否被授权访问所请求的安全服务。
17.根据权利要求16所述的方法,其特征在于,如果在所述访问控制列表中未找到所述测量值,所述方法还包括:
将来自所述授权服务(118)的授权请求(130)发送给基于网络的授权服务器(120),其中所述授权请求(130)包括所述测量值;
从所述基于网络的授权服务器(120)接收授权结果;以及
基于所述授权结果确定所述客户端应用(104)是否被授权访问所请求的安全服务。
18.根据权利要求17所述的方法,其特征在于,所述方法还包括:
基于所接收的授权结果更新所述访问控制列表。
19.根据权利要求18所述的方法,其特征在于,所述方法还包括:
在所述安全执行环境(112)与所述虚拟机监视器(108)之间建立安全通信信道(132);以及
通过所述安全通信信道(132)将来自所述安全执行环境(112)的所述测量请求(128)发送给测量代理(110)。
20.根据前述权利要求中任一项所述的方法,其特征在于,所述测量值包括关于所述客户端应用(104)的元数据,所述方法还包括:
基于以下内容中的至少一项生成所述测量值:哈希值、数字签名、与所述客户端应用的创作者对应的数字证书,以及与所述客户端应用对应的数字证书。
21.一种包括非瞬时性计算机程序指令的计算机可读存储介质,其特征在于,所述指令在由处理器(210)执行时,用于使所述处理器(210)执行根据权利要求14-20任一项所述的方法(300)。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2017/055321 WO2018162040A1 (en) | 2017-03-07 | 2017-03-07 | Hypervisor measurement agent |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110383277A CN110383277A (zh) | 2019-10-25 |
CN110383277B true CN110383277B (zh) | 2021-09-14 |
Family
ID=58231645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780087986.2A Active CN110383277B (zh) | 2017-03-07 | 2017-03-07 | 虚拟机监视器测量代理 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11126706B2 (zh) |
CN (1) | CN110383277B (zh) |
WO (1) | WO2018162040A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11792307B2 (en) | 2018-03-28 | 2023-10-17 | Apple Inc. | Methods and apparatus for single entity buffer pool management |
KR20200104671A (ko) * | 2019-02-27 | 2020-09-04 | 삼성전자주식회사 | 트러스트존의 실행 환경에서 애플리케이션을 인증하는 디바이스 및 방법 |
WO2020182302A1 (en) * | 2019-03-13 | 2020-09-17 | Huawei Technologies Co., Ltd. | Apparatus and method for dynamic configuration of trusted application access control |
US11558348B2 (en) | 2019-09-26 | 2023-01-17 | Apple Inc. | Methods and apparatus for emerging use case support in user space networking |
US11829303B2 (en) | 2019-09-26 | 2023-11-28 | Apple Inc. | Methods and apparatus for device driver operation in non-kernel space |
US11886605B2 (en) * | 2019-09-30 | 2024-01-30 | Red Hat, Inc. | Differentiated file permissions for container users |
US11436343B2 (en) * | 2019-12-31 | 2022-09-06 | Arm Limited | Device, system, and method of policy enforcement for rich execution environment |
US11606302B2 (en) | 2020-06-12 | 2023-03-14 | Apple Inc. | Methods and apparatus for flow-based batching and processing |
US11775359B2 (en) | 2020-09-11 | 2023-10-03 | Apple Inc. | Methods and apparatuses for cross-layer processing |
US11954540B2 (en) | 2020-09-14 | 2024-04-09 | Apple Inc. | Methods and apparatus for thread-level execution in non-kernel space |
US11799986B2 (en) | 2020-09-22 | 2023-10-24 | Apple Inc. | Methods and apparatus for thread level execution in non-kernel space |
WO2022081733A1 (en) * | 2020-10-13 | 2022-04-21 | BedRock Systems, Inc. | A formally verified trusted computing base with active security and policy enforcement |
US20220318391A1 (en) * | 2021-04-06 | 2022-10-06 | Hewlett Packard Enterprise Development Lp | Deferred authentication in a secure boot system |
CN113094111B (zh) * | 2021-04-16 | 2024-01-09 | 三星(中国)半导体有限公司 | 设备以及设备的启动方法 |
US11882051B2 (en) | 2021-07-26 | 2024-01-23 | Apple Inc. | Systems and methods for managing transmission control protocol (TCP) acknowledgements |
US11876719B2 (en) | 2021-07-26 | 2024-01-16 | Apple Inc. | Systems and methods for managing transmission control protocol (TCP) acknowledgements |
CN113821803B (zh) * | 2021-11-24 | 2022-02-15 | 飞腾信息技术有限公司 | 安全架构系统、安全管理方法和计算设备 |
CN115017497B (zh) * | 2021-11-24 | 2023-04-18 | 荣耀终端有限公司 | 信息处理方法、装置及存储介质 |
CN117917660A (zh) * | 2022-10-20 | 2024-04-23 | 华为技术有限公司 | 数据处理方法、终端设备及系统 |
FR3144339A1 (fr) * | 2022-12-22 | 2024-06-28 | Stmicroelectronics (Rousset) Sas | Protection d'un dispositif électronique |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783801A (zh) * | 2010-01-29 | 2010-07-21 | 福建星网锐捷网络有限公司 | 一种基于网络的软件保护方法、客户端及服务器 |
CN103620613A (zh) * | 2011-03-28 | 2014-03-05 | 迈克菲股份有限公司 | 用于基于虚拟机监视器的反恶意软件安全的系统和方法 |
CN103843303A (zh) * | 2012-11-22 | 2014-06-04 | 华为技术有限公司 | 虚拟机的管理控制方法及装置、系统 |
CN104751050A (zh) * | 2015-04-13 | 2015-07-01 | 成都睿峰科技有限公司 | 一种客户端应用程序管理方法 |
CN105446713A (zh) * | 2014-08-13 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 安全存储方法及设备 |
CN105574414A (zh) * | 2014-11-05 | 2016-05-11 | 欧贝特科技公司 | 将文件加载到电子装置中的随机存取存储器中的方法和相关联电子装置 |
CN105786588A (zh) * | 2016-02-22 | 2016-07-20 | 中南大学 | 一种净室可信虚拟机监控器的远程认证方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8839450B2 (en) * | 2007-08-02 | 2014-09-16 | Intel Corporation | Secure vault service for software components within an execution environment |
GB2464966B (en) * | 2008-10-31 | 2012-08-29 | Hewlett Packard Development Co | Policy enforcement in trusted platforms |
GB2482652B (en) * | 2010-05-21 | 2016-08-24 | Hewlett Packard Development Co Lp | Extending integrity measurements in a trusted device using a policy register |
US9389898B2 (en) * | 2012-10-02 | 2016-07-12 | Ca, Inc. | System and method for enforcement of security controls on virtual machines throughout life cycle state changes |
US9037854B2 (en) | 2013-01-22 | 2015-05-19 | Amazon Technologies, Inc. | Privileged cryptographic services in a virtualized environment |
CN105493097B (zh) * | 2013-09-27 | 2019-08-27 | 英特尔公司 | 用于远程存储的数据的保护方案 |
FR3038404B1 (fr) * | 2015-07-02 | 2019-04-26 | Viaccess | Procede et systeme d'execution securisee de machines virtuelles par un ensemble de dispositifs programmables interconnectes |
CN105468980B (zh) | 2015-11-16 | 2018-07-03 | 华为技术有限公司 | 一种安全管控的方法、装置及系统 |
-
2017
- 2017-03-07 CN CN201780087986.2A patent/CN110383277B/zh active Active
- 2017-03-07 US US16/491,319 patent/US11126706B2/en active Active
- 2017-03-07 WO PCT/EP2017/055321 patent/WO2018162040A1/en active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783801A (zh) * | 2010-01-29 | 2010-07-21 | 福建星网锐捷网络有限公司 | 一种基于网络的软件保护方法、客户端及服务器 |
CN103620613A (zh) * | 2011-03-28 | 2014-03-05 | 迈克菲股份有限公司 | 用于基于虚拟机监视器的反恶意软件安全的系统和方法 |
CN103843303A (zh) * | 2012-11-22 | 2014-06-04 | 华为技术有限公司 | 虚拟机的管理控制方法及装置、系统 |
CN105446713A (zh) * | 2014-08-13 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 安全存储方法及设备 |
CN105574414A (zh) * | 2014-11-05 | 2016-05-11 | 欧贝特科技公司 | 将文件加载到电子装置中的随机存取存储器中的方法和相关联电子装置 |
CN104751050A (zh) * | 2015-04-13 | 2015-07-01 | 成都睿峰科技有限公司 | 一种客户端应用程序管理方法 |
CN105786588A (zh) * | 2016-02-22 | 2016-07-20 | 中南大学 | 一种净室可信虚拟机监控器的远程认证方法 |
Also Published As
Publication number | Publication date |
---|---|
US20200019695A1 (en) | 2020-01-16 |
CN110383277A (zh) | 2019-10-25 |
US11126706B2 (en) | 2021-09-21 |
WO2018162040A1 (en) | 2018-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110383277B (zh) | 虚拟机监视器测量代理 | |
US11514159B2 (en) | Method and system for preventing and detecting security threats | |
US10333967B2 (en) | Method and system for dynamic platform security in a device operating system | |
US8213618B2 (en) | Protecting content on client platforms | |
US8220029B2 (en) | Method and system for enforcing trusted computing policies in a hypervisor security module architecture | |
EP2486509B1 (en) | Platform security | |
WO2016195880A1 (en) | System, apparatus and method for controlling multiple trusted execution environments in a system | |
US20110289294A1 (en) | Information processing apparatus | |
CN116010957A (zh) | 安全处理器的多个物理请求接口 | |
Dive-Reclus et al. | SYMBIAN OS PLATFORM SECURITY ARCHITECTURE |
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 |