IP Library › Granted Patent US 11,455,396
Granted Patent B2
US 11,455,396 · App. 15/593,546 · Granted Sep 27, 2022

Using trusted platform module (TPM) emulator engines to measure firmware images

Inventors: Suhas Shivanna (Bangalore, IN); Shiva R. Dasari (Houston, TX)
Assignee: Hewlett Packard Enterprise Development LP
G06F21/575G06F9/4401H04L9/0897H04L9/3234G06F8/63G06F2221/2141
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 11,455,396
App. No.
15/593,546
Granted
Sep 27, 2022
Kind
B2
Abstract

Examples disclosed herein relate to performing an action based on a pre-boot measurement of a firmware image. In an example, at a firmware component in a system, a measurement of a firmware image may be determined prior to booting of the system, beginning from a hardware root of trust boot block, by a Trusted Platform Module (TPM) emulator engine that emulates a hardware-based TPM. A pre-determined measurement of the firmware image may be retrieved from a storage location within the system. The measurement of the firmware image may be compared with the pre-determined measurement of the firmware image prior to booting of the system. In response to a determination that the measurement of the firmware image is different from the pre-determined measurement of the firmware image, performing an action.

Claims (34)

1. A method comprising:

determining, at a firmware component in a system, a measurement of a firmware image prior to booting of the system, wherein the measurement is performed, beginning from a hardware root of trust boot block, by a Trusted Platform Module (TPM) emulator engine that emulates a hardware-based TPM, wherein determining the measurement of the firmware image prior to booting of the system includes a remote server management processor executing instructions to form the TPM emulator engine;

retrieving, at the firmware component, a pre-determined measurement of the firmware image from a storage location;

comparing, at the firmware component, the measurement of the firmware image with the pre-determined measurement of the firmware image prior to booting of the system; and

using the TPM emulator engine to continue the measurement along a chain of trust based on the hardware root of trust boot block during boot of the system.

2. The method of claim 1 , storing the measurement of the firmware image in a virtual Platform Configuration Register (PCR) in the firmware component.

3. The method of claim 1 , wherein determining the measurement of the firmware image comprises generating a hash of the firmware image.

4. The method of claim 1 , wherein the system is running on auxiliary power.

5. The method of claim 1 , wherein the system is without the hardware-based TPM.

6. A system comprising:

a processor; and

a memory to store firmware instructions that, when executed by the processor, cause the processor to:

emulate a Trusted Platform Module (TPM), wherein emulating the TPM comprises determining a measurement of the firmware image beginning from a hardware root of trust boot block prior to booting of the system, storing the measurement of the firmware image in a virtual Platform Configuration Register (PCR), and continuing the measurement along a chain of trust based on the hardware root of trust boot block during boot of the system;

retrieve a pre-determined measurement of the firmware image from a whitelisted database;

compare the measurement of the firmware image with the pre-determined measurement of the firmware image prior to booting of the system; and

perform an action, in response to a determination that the measurement of the firmware image is different from the pre-determined measurement of the firmware image.

7. The system of claim 6 , further comprising a remote server management processor that allows management of the system from a remote location.

8. The system of claim 6 , wherein the measurement includes a hash of the firmware image.

9. The system of claim 6 , wherein the firmware instructions, when executed by the processor, cause the processor to emulate a service provided by a hardware-based TPM.

10. The system of claim 6 , further comprising one of an input/output (I/O) component, a complex programmable logic device (CPLD), and a power supply component.

11. The system of claim 6 , wherein the action includes disabling the firmware component.

12. A non-transitory machine-readable storage medium comprising instructions, the instructions executable by a processor to:

receive, at a firmware component in a system without a hardware-based Trusted Platform Module (TPM), a request to attest a firmware image;

generate, at the firmware component, a hash of the firmware image, prior to boot of the system, wherein the hash is generated, beginning from a hardware root of trust boot block, by a TPM emulator engine that emulates a hardware-based TPM;

retrieve, at the firmware component, a pre-determined measurement of the firmware image from a storage location external to the system;

compare, at the firmware component, the measurement of the firmware image with the pre-determined measurement of the firmware image prior to boot of the system;

perform an action, in response to a determination that the measurement of the firmware image is different from the pre-determined measurement of the firmware image; and

continue the measurement along a chain of trust based on the hardware root of trust boot block during boot of the system.

13. The storage medium of claim 12 , wherein the processor comprises a remote server management processor.

14. The storage medium of claim 12 , wherein the firmware image includes a firmware image of a second firmware component in the system.

15. The storage medium of claim 12 , wherein the action is defined in a user-defined policy.

16. The storage medium of claim 12 , wherein the firmware image includes a firmware image of system firmware of the system.

17. The storage medium of claim 12 , wherein the action includes disabling a power supply to the system.

18. The storage medium of claim 12 , further comprising instructions to allow boot of the system, in response to a determination that the measurement of the firmware image is not different from the pre-determined measurement of the firmware image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2017
From: SHIVANNA, SUHAS; DASARI, SHIVA R.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 042352/0144 →
Continuity (1)
Related Publication 20180330093A1 · Nov 15, 2018