Trusted Platform Module Key Management for Secure Boot

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processors lacking dedicated hardware support for trusted execution environments face challenges in securely managing decryption keys, making them vulnerable to unauthorized tampering and security attacks, especially during the boot process.

Innovation Solution

Incorporating a Trusted Platform Module (TPM) to generate, store, and manage decryption keys by measuring CPU boot ROM code, using hash operations to create unsealable keys, and implementing additional operations to destroy measurement values, ensuring only authorized code can access and use the keys.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If processors provide hardware support for trusted execution environment with isolated domains, then security is improved by preventing unauthorized access to data and resources, but device complexity increases due to additional hardware requirements

Engineering Contradiction:
ImprovesecurityVSAvoidhardware complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a Trusted Platform Module (TPM) as an intermediary component that handles key generation, storage, and management operations. The TPM acts as a mediator between the processor and the trusted execution environment, providing security functions without requiring the processor itself to have dedicated hardware support for trusted execution. This separates the security functionality into a dedicated module, improving security while managing complexity through specialization.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system is segmented into distinct functional components: the processor for general computation, the TPM for security operations, and isolated execution domains. By dividing the system into separate modules with specific responsibilities, the patent achieves security through architectural segmentation rather than requiring the processor to handle all security functions, thus managing complexity while improving reliability.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If processors lack dedicated hardware support for trusted execution, then device complexity is reduced, but security is worsened due to vulnerability to unauthorized tampering and security attacks

Engineering Contradiction:
Improvehardware complexityVSAvoidsecurity
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The TPM serves as an intermediary security module that compensates for the lack of dedicated trusted execution hardware in the processor. It provides key management and measurement verification functions that would otherwise require complex processor-level security features, thereby achieving security without increasing processor complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the need for complex processor-level hardware security mechanisms with a separate TPM module that uses cryptographic operations and secure key management. This substitution allows systems without dedicated hardware support to achieve comparable security through alternative technical means centered around the TPM.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Reliability

If decryption keys are stored in the TPM and unsealed for use, then secure boot is enabled by decrypting executable code, but the keys become vulnerable to access if not properly destroyed after use

Engineering Contradiction:
Improvesecure bootVSAvoidkey exposure risk
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The system performs preliminary actions by measuring and verifying the integrity of boot code before unsealing decryption keys. The TPM verifies measurements of the boot ROM and boot stage executable against expected values, and only unseals keys after successful verification. This preliminary validation ensures that keys are only exposed when the system is in a known good state, preventing key exposure risks.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a cycle of key usage followed by destruction. After decryption keys are unsealed and used to decrypt and verify boot code, they are immediately destroyed or discarded. The TPM maintains keys in a sealed state until needed, uses them temporarily for verification, then discards them, ensuring they cannot be accessed by unauthorized code that might execute later in the boot process.

Inventive Principle:
Principle #34Discarding and recovering

4Reliability

If measurement values are stored in the TPM PCR to verify boot code integrity, then security is improved by detecting tampering, but the stored measurement values can be destroyed by additional operations preventing future verification

Engineering Contradiction:
Improveintegrity verificationVSAvoidmeasurement value availability
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

The system performs integrity verification as a preliminary action before any key unsealing or code execution. The TPM measures the boot ROM and boot stage executable, storing measurement values in PCRs. Only after successful verification does the system proceed to unseal keys. This preliminary verification ensures that integrity checking occurs before any potentially compromising actions, maximizing security while maintaining verification capability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a rapid boot verification process where measurements are taken and verified quickly, and if successful, the system rushes through the key unsealing and code execution phases without pausing to allow for potential attacks. The measurement values are used immediately for verification and then the system progresses rapidly, minimizing the window where measurement values could be targeted by attacks.

Inventive Principle:
Principle #21Skipping (Rushing through)

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach provides secure boot mechanisms that prevent unauthorized access and tampering, even in systems without dedicated hardware, by using TPMs to securely generate, use, and destroy decryption keys, thus enhancing overall system security.

Implementation Method 1

A decryption key stored in the TPM is unsealed and can be used to provide secure boot by using the unsealed key to decrypt executable code executed by the computer during boot

Methodology Applied
Scientific EffectHash operation:

Data Source

PatentUS10943013B2Maintaining keys for trusted boot code
Publication Date: 2021.03.09 AMAZON TECH INC
  • US10943013B2 patent drawing
  • US10943013B2 patent drawing
  • US10943013B2 patent drawing

AI summary

Methods and apparatus are disclosed for securing executable code for execution with a processor using a trusted platform module (TPM). In one example of the disclosed technology, a method of decrypting executable code for execution includes measuring values stored in a CPU boot ROM and measuring second values for executable code stored in non-volatile memory, storing the resulting measurement value in a TPM platform configuration register. The PCR value is used to unseal a key stored in non-volatile memory of the TPM, which key is used to decrypt executable code for execution. Security can be further enhanced by destroying the values stored in the PCR by performing additional measurement operations with the TPM PCR used to generate the measurement value.