Secure Boot vs Measured Boot: Signature Checks, TPM Measurements and Attestation Compared

Both mechanisms check the next piece of software at each boot stage, from power-on until the OS is running. Secure boot verifies the digital signature of the next stage and stops the boot if it is not properly signed. Measured boot computes a hash of the next stage and records it cumulatively in the TPM's PCRs (Platform Configuration Registers), without stopping anything. Secure boot prevents; measured boot records so the state can be checked and proven later. They are not alternatives and are often used together.

AspectSecure bootMeasured boot
What it checksThe digital signature of the next software: whether the vendor's signature over the image hash verifies with a trusted keyThe hash (measurement) of the next software: the value of what was actually loaded is recorded as is
When something is wrongStops the boot on the spot if verification fails (enforcement)Lets the boot continue and only leaves a record (recording)
Root of trustImmutable ROM boot code and the public key used for verification (often stored as its hash in eFuses to save space)A small trusted piece of code that runs first and starts measuring, plus the TPM that holds the record
If software has been tampered withThe signature does not match, so it never runs; a modified bootloader or kernel cannot startIt boots anyway, but the PCR values differ from the expected ones, so checking the record reveals it later
What it needsA verification public key on the device and a signing private key kept securely by the vendor; combined with anti-rollback so old versions cannot be reinstalledTPM PCRs (which can only be extended, folding in a new measurement through a hash) and a record of each stage's measurements (the event log)
How the result is usedPrevents unauthorized software from starting on that device. To show others what booted, it is combined with measured boot or similarRemote attestation (PCR values signed with a TPM key and presented to a server) and sealing (releasing secrets such as a disk-encryption key only when the PCRs hold the expected values)
LimitsIt only tells whether code is signed by a trusted key, so it cannot tell an old but validly signed vulnerable version or a configuration change apart; it protects only the boot pathIt cannot stop malicious code from running, and the record means something only when someone checks it; expected PCR values change with every software update and must be managed
Typical useSmartphones, PCs and many embedded devices; shipped products also lock debug ports such as JTAGPCs with a TPM, for disk encryption and device-health checks before network access; TPM-less microcontrollers use schemes such as DICE that derive keys from measurements for the same purpose

Figures are typical orders of magnitude and vary by process generation and product.

When to use which

Secure boot
When unauthorized software must never run on the device at all. It works on its own, even on devices that cannot reach a verifying server.
Measured boot
When you need to prove to a server what booted, or to release a disk-encryption key only when the boot state is correct. An old but validly signed version can also be spotted by comparing the record with expected values.
Together
Secure boot blocks unauthorized boots, and measured boot records the boot state so it can be proven. Both can run on the same device at the same time.

FAQ

What is the main difference between secure boot and measured boot?

Whether the boot stops when a check fails. Secure boot refuses to start software whose signature is not valid. Measured boot lets the boot continue and records the hash of each piece of software in the TPM in a tamper-evident way, so it can be checked later or proven to a remote server.

Does measured boot need a TPM?

It usually records into TPM PCRs. A TPM can be a discrete chip or firmware running inside the CPU or SoC (fTPM). Microcontrollers without a TPM can achieve a similar goal with schemes such as DICE that derive keys from measurements.

If I have secure boot, do I still need measured boot?

They do different jobs, so using both makes sense. Secure boot only checks whether code is signed by a trusted key, so it cannot distinguish an old but validly signed vulnerable version or a configuration change, and it cannot show anyone else what booted. Measured boot keeps the values of what actually started, which enables remote attestation and sealing.

Check your understanding

What is the difference between secure boot and measured boot?

  1. AThey are the same thing under different names
  2. BSecure boot stops incorrect software from starting; measured boot records hashes of booted software in a TPM or similar so the state can be checked later
  3. CMeasured boot merely measures how long booting takes
Show answer and explanation

Answer: B. Secure boot stops incorrect software from starting; measured boot records hashes of booted software in a TPM or similar so the state can be checked later

In measured boot, each stage hashes the next piece of software and records it cumulatively in TPM registers (PCRs). A PCR can only be updated by combining its previous value with a new hash, so records cannot be forged. Boot itself is not stopped, but the recorded values let one later confirm which software started, or prove it to a remote server.

Which describes secure boot?

  1. AA mechanism to boot a PC quickly
  2. BAt each boot stage, the digital signature of the next software is verified, and only authentic software is started
  3. CA mechanism that erases the disk at every boot
Show answer and explanation

Answer: B. At each boot stage, the digital signature of the next software is verified, and only authentic software is started

In secure boot, immutable ROM code verifies the first bootloader's signature, that bootloader verifies the next stage or the OS kernel, and so on, forming a chain of trust. If any stage's signature fails, boot stops, so malware that rewrites the bootloader or OS boot code cannot run. It is widely used in smartphones, PCs and embedded devices.

What is the main role of a TPM (Trusted Platform Module) installed in PCs and similar?

  1. AA dedicated circuit to speed up display
  2. BA component managing CPU cooling
  3. CSecurely generating and storing keys, recording measurements of booted software and attesting to that state, among other security functions
Show answer and explanation

Answer: C. Securely generating and storing keys, recording measurements of booted software and attesting to that state, among other security functions

A TPM is a tamper-resistant security chip (or a function built into the CPU) that generates and stores keys, performs cryptographic operations, generates random numbers and records hashes of booted software. For example, releasing the disk encryption key only when the boot state is correct makes data hard to read even if the disk is removed or boot software is altered.

  1. Which describes remote attestation?
  2. What is the most suitable thing placed inside the chip as the root of trust for secure boot?
  3. In devices with secure boot, why is an anti-rollback mechanism needed?

Practice Hardware Security questions

Key terms explained

Secure boot
A mechanism that verifies the digital signature of the next software at each boot stage and starts only authentic software, forming a chain of trust.
Measured boot
A mechanism that cumulatively records hashes of each boot stage's software in a TPM or similar so the boot state can be verified later.
Trusted Platform Module (TPM)
A security chip or function that generates and stores keys, records measurements of booted software and attests to platform state.
Remote attestation
A mechanism in which a device signs the state of its running software with an on-chip key and presents it to a remote server for trust verification.
Root of trust
The component unconditionally trusted as the starting point of security checks, such as immutable ROM boot code and a public key inside the chip.
Anti-rollback protection
A mechanism recording a minimum version number in unchangeable storage so software cannot be reverted to older vulnerable versions.

Related comparisons