A boot loader is a program that prepares protected memory, loads the next stage, checks its authenticity, and eventually starts the operating system. This staged process helps prevent an attacker from replacing the boot process with an evil OS. section 13.2.4
A hardware-rooted boot chain typically follows these steps:
- Begin with read-only boot ROM that cannot be overwritten. section 13.2.4
- Prepare protected memory and load the next boot loader. section 13.2.4
- Hash the loaded program and verify its signature using a public key stored in the ROM. section 13.2.4
- Repeat the checks until a trusted boot loader starts the operating system. section 13.2.4
A signed phone update
When a recent Apple device powers on, its Secure Enclave boot ROM verifies each later stage. An operating-system update lacking Apple’s signature cannot be installed. section 13.2.4
Figure 13.3 A chip implementing the TPM 2.0 standard, plugged into a motherboard. This chip can be called by the system’s motherboard components as well as user applications running on the computer’s OS. Photo from Wikipedia (http://mng.bz/Q2je).
A TPM 2.0 chip provides hardware support for a system’s root of trust. section 13.2.4
