Hypervisor Measurement Agent for Secure Client Authentication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional security solutions fail to reliably authenticate client applications accessing secure services in a secure execution environment, leading to potential unauthorized access by malicious applications.

Innovation Solution

A processor-based system that includes a secure execution environment and a rich execution environment, utilizing a hypervisor to generate a measured value of client applications, which is then used by a trusted application to determine authorization, with an optional authorization service for centralized authentication and access control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a rich operating system is used to provide computing functionality, then the computing experience is enhanced, but the system becomes vulnerable to security attacks

Engineering Contradiction:
Improvecomputing functionalityVSAvoidsecurity vulnerability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system divides the computing environment into two separate execution environments: a rich execution environment (REE) for running client applications and a secure execution environment (SEE) for running trusted applications. This segmentation allows the system to maintain both rich computing functionality and high security by isolating security-critical operations from the less secure REE.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A hypervisor is introduced as an intermediary layer between the REE and SEE. The hypervisor manages communication and data transfer between the two environments, controlling what information can pass through the secure boundary. This intermediary enables secure service access while maintaining the security isolation that protects against attacks from the REE.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If trusted applications are limited to a small set for security, then security is improved, but sufficient functionality is not provided

Engineering Contradiction:
ImprovesecurityVSAvoidfunctionality
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system creates a universal interface through the hypervisor that allows multiple client applications in the REE to access secure services in the SEE. The SEE contains a small set of trusted applications that provide core secure functionality, while the hypervisor enables these to serve multiple clients with different functionality needs, effectively providing universal access to secure services.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system adds a new dimension to the architecture by introducing a separate execution environment (SEE) that runs alongside the REE. This dimensional separation allows trusted applications to provide security functionality without being constrained by the functionality limitations of individual client applications, enabling the system to offer both security and diverse functionality through the interface between dimensions.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Device complexity

If the trusted application generates the measured value, then the authorization process is simplified, but the security risk increases

Engineering Contradiction:
Improveauthorization processVSAvoidsecurity risk
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The hypervisor serves as an intermediary that generates measured values (hashes) of client applications and provides them to the trusted application. This intermediary role ensures that the trusted application receives verified measurement data without directly accessing or trusting the client application in the REE, maintaining security while simplifying the authorization process.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The hypervisor performs preliminary measurement and verification of client applications before they can access secure services. By generating measured values in advance and providing them to the trusted application, the system prepares the authorization data beforehand, simplifying the actual authorization decision process while ensuring security through pre-verification.

Inventive Principle:
Principle #10Preliminary action

4Ease of operation

If conventional security solutions are used, then normal world applications can run, but malicious applications cannot be reliably detected

Engineering Contradiction:
Improveapplication executionVSAvoidmalicious application detection
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The system replaces conventional security mechanisms with a hardware-based secure execution environment. Instead of relying on software-based security checks that can be bypassed, the SEE provides hardware-enforced isolation and verification, enabling reliable detection of malicious applications through cryptographic verification of measured values while allowing normal applications to run in the REE.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11126706B2Hypervisor measurement agent
Publication Date: 2021.09.21 HUAWEI TECH CO LTD
  • US11126706B2 patent drawing
  • US11126706B2 patent drawing
  • US11126706B2 patent drawing

AI summary

An apparatus including a processor and a memory configured to provide an SEE and an REE. The processor is configured to provide a client application configured to execute at a user privilege level and a hypervisor configured to execute at a hypervisor privilege level. The user privilege level is more restrictive than the hypervisor privilege level. The processor is further configured to provide a trusted application configured to execute within the SEE. The trusted application provides secure services to the client application. The processor is configured to send a request for secure services from the client application to the trusted application, send a measurement request to the hypervisor, generate within the hypervisor a measured value based on the client application, return the measured value to the trusted application, and determine whether the client application is authorized to access the secure services. The authorization determination is based on the measured value.