Secure Boot原理和高通芯片Secure Boot原理
Secure Boot原理和高通芯片Secure Boot原理
标签: Secure Boot 的原理; 高通;PBL; SBL;
Secure Boot 的原理
概述
Secure Boot 是一种安全启动机制,用于防止恶意软件在设备启动过程中加载和执行。它通过验证启动过程中各阶段加载的固件和软件的完整性和真实性,确保只有经过授权的软件能够运行,从而保护系统的安全性。
Secure Boot 的工作原理
-
固件验证:
- 在设备启动时,首先执行一个受信任的固件(通常是只读存储器中的初始启动代码)。
- 该固件包含设备制造商的公钥,用于验证后续加载的固件或软件的数字签名。
-
Bootloader 验证:
- 初始启动代码会加载并验证 Bootloader(启动加载程序)的数字签名。
- 只有在验证通过的情况下,Bootloader 才会被执行,否则启动过程会被中止。
-
操作系统内核验证:
- Bootloader 接着会加载并验证操作系统内核的数字签名。
- 验证通过后,内核会被启动,否则启动过程会被中止。
-
驱动程序和系统文件验证:
- 操作系统启动后,仍然会持续进行验证,确保加载的驱动程序和关键系统文件未被篡改。
- 这通常通过内核模块签名和文件完整性检查来实现。
高通 Secure Boot 的原理
高通的 Secure Boot 实现基于 ARM TrustZone 技术和高通的硬件安全模块(HSM),其工作流程如下:
-
ROM Code (PBL - Primary Bootloader):
- 高通 SoC 内部的 ROM 存储器中包含初始启动代码(PBL),它是整个 Secure Boot 链的第一个环节。
- PBL 验证 SBL(Secondary Bootloader)的签名,只有签名验证通过后,才会加载 SBL。
-
Secondary Bootloader (SBL):
- SBL 是一个更复杂的启动加载程序,负责初始化硬件和加载操作系统或其他 Bootloader(如 Aboot 或 Little Kernel)。
- SBL 验证其加载的每一个组件的签名,包括内核、设备树和文件系统。
-
QSEE (Qualcomm Secure Execution Environment):
- 高通设备包含一个安全执行环境 QSEE,它运行在 ARM TrustZone 的安全世界中。
- QSEE 提供额外的安全服务,如加密密钥管理、可信执行和安全存储。
-
RPM (Resource and Power Management):
- RPM 固件运行在独立的处理器上,负责电源管理和资源分配。
- RPM 固件也经过签名验证,确保其未被篡改。
安全机制和信任链
-
硬件根信任:
- Secure Boot 的信任根源于硬件,即设备的唯一密钥和存储在只读存储器中的初始启动代码。
- 这种根信任确保了攻击者无法绕过 Secure Boot 过程。
-
数字签名和公钥基础设施(PKI):
- 各阶段的固件和软件都经过数字签名,设备中的公钥用于验证这些签名。
- 公钥通常由设备制造商预先烧录到硬件中,只有制造商拥有与之对应的私钥,用于签名固件和软件。
-
抗篡改措施:
- 所有验证过程都在启动的早期进行,确保在进入操作系统前,所有关键组件都已验证通过。
- 一旦发现未经授权的修改,启动过程会被中止,防止恶意软件执行。
结论
Secure Boot 通过严格的签名验证机制,确保从启动加载程序到操作系统内核,直至关键系统文件的完整性和真实性。高通的 Secure Boot 进一步增强了这一过程,通过集成 ARM TrustZone 和 QSEE 提供额外的安全服务,保障了设备启动和运行过程中的安全性。
作者简介:https://shimo.im/docs/rp3OVwxle2fJn7Am/
上海徐汇
2024年6月5日

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)