fTPM Boot Flow#

The fTPM boot flow verifies and measures the integrity of firmware components during the boot process.

Diagram of fTPM boot flow

fTPM Secure Boot#

Secure Boot is an essential part of the fTPM boot flow. It ensures that only authorized firmware components are loaded during the boot process and establishes Hardware Root of Trust (HROT), Root of Trust for Reporting (RTR), and Root of Trust for Measurement (RTM). The purple line in the diagram shows the Secure Boot flow, indicating that boot components load and verify the next stage.

The fTPM relies on Secure Boot to support a key derivation process that derives fTPM-related secure values. Refer to Key Derivation Process and Silicon ID Provisioning Flow.

fTPM Measured Boot#

Measured boot involves measuring the code and data used at boot time—bootloaders, firmware, and the kernel—to ensure that they have not been tampered with. It uses a TPM to store measurements that can be later verified to confirm the system has not been compromised.

Measured boot support is based on the Platform Configuration Register (PCR). A PCR is a secure, tamper-proof storage location for hash values used to verify the authenticity and consistency of boot chain components.

The green line in the diagram shows boot components measuring the next stage. Before the fTPM is ready, measurements are stored as a TPM event log—a standard data structure indicating the PCR and measurement to extend. During the fTPM boot process, the event log is processed to extend the PCR with measurements. After fTPM starts, all measurements go through the TPM 2.0 PCR extend command only.