IP Library Granted Patent US 12,158,979
Granted Patent B2
US 12,158,979 · App. 17/390,007 · Granted Dec 3, 2024

Security broker with post-provisioned states of the tee-protected services

Inventors: Michael Hingston McLaughlin Bursell (Farnborough, GB); Lilian Sturmann (Cambridge, MA)
Assignee: Red Hat, Inc.
G06F21/78G06F9/45558G06F21/53G06F21/602G06F2009/45587
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 12,158,979
App. No.
17/390,007
Granted
Dec 3, 2024
Kind
B2
Abstract

The technology disclosed herein enable consumer devices to verify the integrity of services running in trusted execution environments. An example method may include: establishing, by a computing device, a trusted execution environment for a service, wherein the trusted execution environment comprises an encrypted storage area; loading, by the computing device, data of the service into the trusted execution environment, wherein the data comprises executable data; detecting, by a computing device, a change of the trusted execution environment that is executing the service; generating, by the computing device, integrity data that represents a state of the trusted execution environment after the change; and transferring, by the computing device, the integrity data to another computing device.

Claims (41)

1. A method comprising:

establishing, by a computing device, a trusted execution environment for a service, wherein the trusted execution environment comprises an encrypted storage area;

loading, by the computing device, data of the service into the trusted execution environment, wherein the data comprises executable data;

detecting, by a computing device, a change of the trusted execution environment that is executing the service;

generating, by the computing device, integrity data that represents a state of the trusted execution environment after the change; and

transferring, by the computing device, the integrity data to a broker device, wherein the broker device provides the integrity data from the computing device to a plurality of consumer devices.

2. The method of claim 1 , wherein the trusted execution environment (TEE) is established by a central processing unit (CPU) of the computing device using Software Guard Extensions (SGX), Secure Encrypted Virtualization (SEV), or a TrustZone.

3. The method of claim 1 , wherein the integrity data that represents the state of the trusted execution environment comprises data generated by an integrity measurement architecture (IMA).

4. The method of claim 1 , wherein the trusted execution environment executes a virtual machine comprising the service, and wherein the integrity data comprises a hash that represents a state of a virtual machine image of the virtual machine.

5. The method of claim 1 , wherein the trusted execution environment executes a container comprising the service, and wherein the integrity data comprises a hash that represents a state of a container image of the container.

6. The method of claim 1 , wherein the integrity data comprises attestation data and state data of the trusted execution environment.

7. The method of claim 1 , further comprising: receiving, by the computing device, a request from the broker device to perform a remote attestation, wherein the remote attestations comprise direct anonymous attestation (DAA).

8. The method of claim 1 , wherein the integrity data that represents the state of the trusted execution environment comprises a hash chain that is based on a certificate and based on integrity data representing an earlier state of the trusted execution environment.

9. The method of claim 1 , wherein the trusted execution environment executes the service and an agent that monitors the state of the service, and wherein the service is unaware the service or agent are executing in the trusted execution environment.

10. The method of claim 1 , further comprising:

registering, by the computing device, the service with a security brokerage service;

receiving a request for the integrity data from the security brokerage service; and

transferring, in response to the request, the integrity data of one or more states of the trusted execution environment.

11. The method of claim 1 , wherein the plurality of consumer devices are able to receive service data from the computing device and are unable to receive the integrity data from the computing device.

12. The method of claim 1 , further comprising: sending service data to one consumer device of the plurality of consumer devices.

13. A system comprising:

a memory; and

a processing device of a computing device communicably coupled to the memory, the processing device to:

establish a trusted execution environment for a service, wherein the trusted execution environment comprises an encrypted storage area;

load data of the service into the trusted execution environment, wherein the data comprises executable data;

detect a change of the trusted execution environment that is executing the service;

generate integrity data that represents a state of the trusted execution environment after the change; and

transfer the integrity data to a broker device, wherein the broker device provides the integrity data from the computing device to a plurality of consumer devices.

14. The system of claim 13 , wherein the trusted execution environment (TEE) is established by a central processing unit (CPU) of the computing device using Software Guard Extensions (SGX), Secure Encrypted Virtualization (SEV), or a TrustZone.

15. The system of claim 13 , wherein the integrity data that represents the state of the trusted execution environment comprises data generated by an integrity measurement architecture (IMA).

16. The system of claim 13 , wherein the trusted execution environment executes a virtual machine comprising the service, and wherein the integrity data comprises a hash that represents a state of a virtual machine image of the virtual machine.

17. A non-transitory machine-readable storage medium storing instructions which, when executed, cause a processing device to perform operations comprising:

establishing, by a computing device, a trusted execution environment, wherein the trusted execution environment comprises an encrypted storage area;

executing, by the computing device, a service in the trusted execution environment;

receiving, by the computing device from a broker device, a request to verify that the service is executing in the trusted execution environment;

detecting, by a computing device, a change of the trusted execution environment that is executing the service;

generating, by the computing device, integrity data that represents a state of the trusted execution environment after the change; and

transferring, by the computing device, the integrity data to the broker device, wherein the broker device provides the integrity data from the computing device to a plurality of consumer devices.

18. The non-transitory machine-readable storage medium of claim 17 , wherein the trusted execution environment executes a virtual machine comprising the service, and wherein the integrity data comprises a hash that represents a state of a virtual machine image of the virtual machine.

19. The non-transitory machine-readable storage medium of claim 17 , wherein the trusted execution environment executes a container comprising the service, and wherein the integrity data comprises a hash that represents a state of a container image of the container.

20. The non-transitory machine-readable storage medium of claim 17 , wherein the integrity data comprises attestation data and state data of the trusted execution environment.

Assignments (2)
CHANGE OF NAME Recorded Mar 3, 2026
From: RED HAT, INC.
To: RED HAT, LLC
Reel/Frame 074913/0759 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2021
From: BURSELL, MICHAEL HINGSTON MCLAUGHLIN; STURMANN, LILIAN
To: RED HAT, INC.
Reel/Frame 057549/0949 →
Continuity (1)
Related Publication 20230036165A1 · Feb 2, 2023
Cited By (1)
US 12,688,276