IP Library Granted Patent US 7,565,522
Granted Patent B2
US 7,565,522 · App. 10/842,670 · Granted Jul 21, 2009

Methods and apparatus for integrity measurement of virtual machine monitor and operating system via secure launch

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,565,522
App. No.
10/842,670
Granted
Jul 21, 2009
Kind
B2
Abstract

Methods and apparatus to measure the integrity of a virtual machine monitor and an operating system via secure launch are disclosed. In one example, a method measures a first characteristic of a virtual machine monitor, stores the first measured characteristic in a first hardware protected location, measures a second characteristic of an operating system with the virtual machine monitor, wherein the measuring of the second characteristic is initiated by the operating system, and stores the second measured characteristic in a second hardware protected location.

Claims (44)

1. A method comprising:

measuring a first characteristic value of a virtual machine monitor on a first computer;

storing the first measured characteristic value in a first hardware protected location;

transferring control of the first computer from the virtual machine monitor to an operating system;

after transferring control from the virtual machine monitor to the operating system, receiving an invocation from the operating system at the virtual machine monitor;

in response to receiving the invocation from the operating system at the virtual machine monitor, measuring a second characteristic value of the operating system with the virtual machine monitor;

storing the second measured characteristic value in a second hardware protected location; and

transmitting the first measured characteristic value and the second measured characteristic value to a second computer for integrity analysis.

2. A method as defined by claim 1 , wherein measuring the first characteristic value of the virtual machine monitor comprises measuring the first characteristic value of the virtual machine monitor via a hash algorithm.

3. A method as defined by claim 1 , wherein measuring the second characteristic value of the operating system comprises measuring the second characteristic value of the operating system via a hash algorithm.

4. A method as defined by claim 1 , wherein the first hardware protected location is located in a first trusted platform module.

5. A method as defined by claim 4 , wherein the second hardware protected location is located in a second trusted platform module.

6. A method as defined by claim 5 , wherein the first trusted platform module is the second trusted platform module.

7. A method as defined by claim 1 , further comprising initializing a variable in the operating system prior to measuring the second characteristic value of the operating system.

8. A method as defined by claim 1 , wherein the first characteristic value of the virtual machine monitor comprises a page associated with the virtual machine monitor.

9. A method as defined by claim 8 , further comprising protecting the page associated with the virtual machine monitor from at least one of a direct memory access read instruction and a direct memory access write instruction.

10. A method as defined by claim 1 , wherein the second characteristic value of the operating system comprises a page associated with the operating system.

11. A method as defined by claim 10 , further comprising protecting the page associated with the operating system from at least one of a direct memory access read instruction and a direct memory access write instruction.

12. An apparatus comprising:

a first hardware protected location to store a first integrity characteristic value;

an operating system;

a virtual machine monitor to:

transfer control of the first computer from the virtual machine monitor to the operating system,

after transferring control from the virtual machine monitor to the operating system, receive an invocation from the operating system

in response to receiving the invocation from the operating system at the virtual machine monitor, measuring a second characteristic value of the operating system, and

transmit the first measured characteristic value and the second measured characteristic value to a computer for integrity analysis; and

a second hardware protected location to store the second integrity characteristic value.

13. An apparatus as defined in claim 12 , further comprising a processor, wherein the first and second hardware protected locations comprise protected execution memory locations in the processor.

14. An apparatus as defined in claim 12 , further comprising a trusted platform module, wherein the first and second hardware protected locations comprise protected execution memory locations in the trusted platform module.

15. An apparatus as defined in claim 12 , wherein hardware of the apparatus measures the first integrity characteristic value and the operating system initiates measurement of a second integrity characteristic value.

16. An apparatus as defined in claim 15 , wherein the hardware comprises a processor.

17. An apparatus as defined in claim 16 , wherein the first and second hardware protected locations comprise protected execution memory locations in the processor.

18. An apparatus as defined in claim 17 , wherein the protected execution memory locations in the processor comprise a trusted platform module.

19. An apparatus as defined in claim 12 , wherein the first integrity characteristic value is associated with the virtual machine monitor.

20. A tangible computer readable medium having instructions stored thereon that, when executed, cause a machine to:

measure a first characteristic value of a virtual machine monitor on a first computer;

store the first measured characteristic value in a first hardware protected location;

transfer control of the first computer from the virtual machine monitor to an operating system;

after transferring control from the virtual machine monitor to the operating system, receive an invocation from the operating system at the virtual machine monitor;

in response to receiving the invocation from the operating system at the virtual machine monitor, measure a second characteristic value of the operating system with the virtual machine monitor;

store the second measured characteristic value in a second hardware protected location; and

transmitting the first measured characteristic value and the second measured characteristic value to a second computer for integrity analysis.

21. A tangible computer readable medium as defined in claim 20 , having instructions stored thereon that, when executed, cause the machine to measure the second characteristic value of the operating system by measuring the second characteristic value of the operating system via a hash algorithm.

22. A tangible computer readable medium as defined in claim 20 , having instructions stored thereon that, when executed, cause the machine to initialize a variable in the operating system prior to measuring the second characteristic value of the operating system.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2022
From: INTEL CORPORATION
To: TAHOE RESEARCH, LTD.
Reel/Frame 061175/0176 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2004
From: SASTRY, MANOJ R.; DARUWALA, BURZIN A.
To: INTEL CORPORATION
Reel/Frame 015565/0027 →