IP Library › Granted Patent US 12,321,457
Granted Patent B2
US 12,321,457 · App. 18/365,963 · Granted Jun 3, 2025

Trusted software container management system

Inventors: Roger L. Jungerman (Petaluma, CA); Randall King (Santa Rosa, CA); Andrew B. Bartels (Redmond, WA)
Assignee: Operants Networks
G06F21/57H04L9/0819
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,321,457
App. No.
18/365,963
Filed
Aug 4, 2023
Granted
Jun 3, 2025
Kind
B2
Art Unit
2435
USPC
726/25
Abstract

A trusted container management system provides process supervision, such as for software or other executable processes. In an embodiment, a particular edge controller can include a Rich Execution Environment (REE) and a Trusted Execution Environment (TEE). In an example, an application executes in a container of the REE and generates communication data and a signature identifier. A DeftT publication is generated and includes the communication data. An untrusted validator in the REE evaluates the DeftT publication according to a trust rule associated with the communication data and publishes the DeftT publication. A secure validator executing in a Trusted Execution Environment (TEE) further evaluates the DeftT publication. The further evaluation can include subscribing to the certificate identified by the signature identifier, determining the public key and the role of the certificate, and validating the DeftT publication based on the public key. The further evaluation can further include subscribing to a particular trust rule.

Claims (63)

1. A method, performed by a computing system, to enable secure management of a software container, the method comprising:

executing, in a Rich Execution Environment (REE) of the computing system, an application, wherein the application is contained in a software container of the REE and wherein the application generates communication data associated with a destination external to the computing system;

generating, at a Defined-Trust Transport (DeftT) shim contained in the software container, a DeftT Publication,

wherein the DeftT Publication comprises a payload based on the communication data, a structured name, and a signature identifier, and

wherein the signature identifier identifies a certificate comprising a public key and a role;

evaluating, at an untrusted validator contained in the software container, the DeftT publication according to a trust rule associated with the structured name and the role;

publishing, based on the evaluating by the untrusted validator, the DeftT publication;

subscribing, by a secure validator executing in a Trusted Execution Environment (TEE) of the computing system, to the DeftT publication;

evaluating, at the secure validator, the DeftT publication, comprising determining whether the payload of the DeftT publication is consistent with the structured name of the DeftT publication; and

publishing, based on the evaluating by the secure validator, the DeftT publication to a communication channel external to the computing system.

2. The method of claim 1 , wherein the evaluating the DeftT publication according to a trust rule comprises:

subscribing to the certificate identified by the signature identifier;

determining, based on the subscribing, the public key and the role of the certificate;

validating the DeftT publication based on the public key;

subscribing to the trust rule associated with the structured name and the role, wherein the trust rule relates to authorized capabilities of the role;

determining whether the DeftT publication is authorized to be published based on the trust rule; and

evaluating whether the structured name is consistent with the payload of the DeftT publication.

3. The method of claim 1 , wherein the DeftT shim in the software container generates the structured name of the DeftT publication based on a property of the communication data.

4. The method of claim 1 , wherein the evaluating at the secure validator further comprises:

subscribing to the certificate identified by the signature identifier;

determining, based on the subscribing, the public key and the role of the certificate;

validating the DeftT publication based on the public key;

subscribing to a trust rule associated with the structured name and the role, wherein the trust rule relates to authorized capabilities of the role; and

determining whether the DeftT publication is authorized to be published based on the trust rule.

5. The method of claim 1 , the method further comprising:

generating, based on the evaluating by the secure validator, at a relay shim executing in the TEE, an Audited DeftT publication based on the DeftT publication,

wherein the Audited DeftT publication is signed by a second private key contained in a Trusted Process Module (TPM) in the TEE of the computing system; and

publishing the Audited DeftT publication, instead of the DeftT publication, to the communication channel external to the computing system.

6. The method of claim 5 , wherein the second private key is stored in the software container.

7. The method of claim 1 , the method further comprising:

evaluating, at a secure supervisor executing in the TEE, the DeftT publication and an evaluation by the secure validator,

wherein the publishing of the DeftT publication to the communication channel external to the computing system is based further on the evaluation by the secure supervisor.

8. The method of claim 7 , the method further comprising the secure supervisor gating the publishing of the DeftT publication to the communication channel external to the computing system.

9. The method of claim 7 , the method further comprising overwriting the software container in the REE based on the evaluation by the secure supervisor.

10. The method of claim 7 , wherein a particular evaluation by at least one of the untrusted validator and the secure validator further comprises:

validating the trust rule through a chain of certificates to a trust anchor certificate; and

validating the DeftT publication through a chain of certificates to the trust anchor certificate.

11. The method of claim 1 , wherein the DeftT publication is authenticated by a symmetric encryption key associated with a group, and wherein the group comprises entities associated with the computing system.

12. The method of claim 11 , wherein the symmetric encryption key uses Authenticated Encryption with Associated Data (AEAD) encryption.

13. The method of claim 1 , wherein the DeftT publication is signed by a private key.

14. The method of claim 1 , wherein the payload of the DeftT publication is encrypted prior to publishing, and wherein the payload of the DeftT publication is decrypted upon subscription.

15. The method of claim 1 , wherein the communication data is based on measurement data from an external measurement device, and wherein an evaluation by the untrusted validator comprises determining whether the software container is authorized to access the external measurement device.

16. The method of claim 1 , the method further comprising generating, at a container manager executing in the TEE, a second software container.

17. The method of claim 1 , further comprising generating a hash of the DeftT publication and storing the hash of the DeftT publication in a data store.

18. The method of claim 17 , wherein the data store is an immutable ledger.

19. A computing system structured to enable secure management of a software container, the computing system comprising a memory, at least one hardware processor, and computer-executable instructions stored in the memory that, when executed by the at least one hardware processor, perform operations comprising:

executing, in a Rich Execution Environment (REE) of the computing system, an application, wherein the application is contained in a software container of the REE and wherein the application generates communication data associated with a destination external to the computing system;

generating, at a Defined-Trust Transport (DeftT) shim contained in the software container, a DeftT publication,

wherein the DeftT publication comprises a payload based on the communication data, a structured name, and a signature identifier, and

wherein the signature identifier identifies a certificate comprising a public key and a role;

evaluating, at an untrusted validator contained in the software container, the DeftT publication according to a trust rule associated with the structured name and the role;

publishing, based on the evaluating by the untrusted validator, the DeftT publication;

subscribing, by a secure validator executing in a Trusted Execution Environment (TEE) of the computing system, to the DeftT publication;

evaluating, at the secure validator, the DeftT publication, comprising determining whether the payload of the DeftT publication is consistent with the structured name of the DeftT publication; and

publishing, based on the evaluation by the secure validator, the DeftT publication to a communication channel external to the computing system.

20. The computing system of claim 19 , wherein the operations to

evaluate the DeftT publication according to a trust rule further include:

subscribing to the certificate identified by the signature identifier;

determining, based on the subscribing, the public key and the role of the certificate;

validating the DeftT publication based on the public key;

subscribing to the trust rule associated with the structured name and the role, wherein the trust rule relates to authorized capabilities of the role;

determining whether the DeftT publication is authorized to be published based on the trust rule; and

evaluating whether the structured name is consistent with the payload of the DeftT publication.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2023
From: KING, RANDALL; BARTELS, ANDREW B.; JUNGERMAN, ROGER L.
To: OPERANT NETWORKS
Reel/Frame 065147/0562 →
Continuity (2)
Provisional Application 63420988 · Oct 31, 2022
Related Publication 20240143765A1 · May 2, 2024
References Cited (7)
US 8151349B1 · Yee · 2012 [cited by examiner]
US 11575512B2 · King et al. · 2023 [cited by applicant]
US 20140289748A1 · Collado · 2014 [cited by examiner]
US 20170286668A1 · Shanahan · 2017 [cited by examiner]
US 20190005229A1 · Hlaing · 2019 [cited by examiner]
US 20220414212A1 · Hopkins · 2022 [cited by examiner]
U.S. Appl. No. 63/059,876, “Comprehensive Configurable Network Security for Distributed Energy Resource Infrastructure”, filed Jul. 31, 2020. [cited by applicant]