Virtual Machine Monitor Measurement Using Dedicated Processor

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing measurement methods for virtual machine monitors disrupt the running process of operating systems, leading to low security and accuracy due to the need to forcibly insert VM exit instructions and modify system states, which can result in inaccurate measurement results and system instability.

Innovation Solution

A method that involves reading and storing running code and data from a hardware storage device, generating verification information, and transmitting log information to a trusted data center for measurement, using digital signatures and hash calculations to ensure security and accuracy without disrupting the operating system's process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If VM exit instructions are forcibly inserted to measure virtual machine monitor, then measurement capability is improved, but system stability and reliability deteriorate

Engineering Contradiction:
Improvemeasurement capabilityVSAvoidsystem stability
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent introduces a dedicated measurement processor as an intermediary component that operates independently from the main CPU. This measurement processor contains its own instruction cache and executes measurement instructions separately, allowing the system to perform security measurements without forcibly inserting VM exit instructions into the main execution path, thereby maintaining system stability while achieving measurement capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If measurement agent executes in virtual machine monitor environment, then measurement function is enabled, but measurement accuracy deteriorates due to potential VMM interference

Engineering Contradiction:
Improvemeasurement functionVSAvoidmeasurement accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent segments the processing functions by separating the measurement execution environment from the virtual machine monitor. The measurement processor operates as an independent segment with separate instruction cache and execution pipeline, preventing VMM code from interfering with measurement agent execution. This segmentation allows the measurement function to be enabled while ensuring measurement accuracy by isolating it from potential VMM interference.

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If CPU execution path is changed to enter SMM mode, then measurement access is improved, but system performance and operational continuity deteriorate

Engineering Contradiction:
Improvemeasurement accessVSAvoidsystem performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent implements preliminary action by pre-configuring the measurement processor with its own instruction cache and execution environment before measurements are needed. The measurement instructions are pre-loaded into the measurement processor's instruction cache, allowing measurements to be executed without triggering SMM mode transitions or changing the main CPU execution path. This preliminary preparation enables easy measurement access while maintaining system performance and operational continuity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10339284B2Measurement method, electronic device, and measurement system
Publication Date: 2019.07.02 HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
  • US10339284B2 patent drawing
  • US10339284B2 patent drawing
  • US10339284B2 patent drawing

AI summary

A measurement method, an electronic device, and a measurement system where the electronic device reads, from a hardware storage device, running code and running data that are in a running process of a virtual machine manager (VMM), and generates first verification information according to the running code and the running data, and the electronic device stores the first verification information, and transmits, to a trusted data center, log information generated in a process that is from reading, by the electronic device, the running code and the running data to storing, by the electronic device, the first verification information such that the trusted data center measures the electronic device using the first verification information acquired from the electronic device and second verification information generated according to the log information.