基于高通平台、共用主板覆盖安卓、Windows 11 IoT for ARM、Linux三个系统的场景,设计安全启动(Secure Boot)策略的核心目标是:确保任意一个系统的更新(固件、引导加载程序或内核)不会破坏其他系统的引导链,同时维护整体启动过程的完整性。参考上一轮分析中关于骁龙8cx Gen3的UEFI原生支持及QCM6490的移植需求,并结合Secure Boot的签名验证机制,以下给出研发角度的完整策略设计。
一、核心设计思路
1.1 独立ESP分区 + 统一密钥信任
- 物理隔离:为每个系统分配独立的EFI系统分区(ESP),例如:
esp_win(512MB, FAT32):存放Windows引导文件\EFI\Microsoft\Boot\bootmgfw.efiesp_android(256MB, FAT32):存放Android的boot.img(或Grub引导文件)esp_linux(256MB, FAT32):存放Linux的vmlinuz、initrd及grubaa64.efi
- 统一UEFI固件:所有ESP挂载在同一颗UFS存储上,但通过不同的GPT分区UUID区分。UEFI固件通过
BootOrder变量列出三个引导条目,用户通过Grub或硬件开关切换。 - 密钥管理:使用单一信任根(Platform Key, PK),由OEM持有。签名数据库(db)中包含三个系统各自的分发者证书(或微软件、Linux发行版证书)。不采用每个系统独立PK(增加复杂度),而是采用多证书db策略。
1.2 引导加载程序签名链
| 系统 | 引导加载程序 | 签名方 | db中需包含的证书 |
|---|---|---|---|
| Windows 11 IoT | bootmgfw.efi |
Microsoft Corporation | Microsoft Windows Production PCA 2011 |
| Android (AOSP) | boot.img 或 lk.efi(若使用UEFI引导) |
OEM自建CA | O |

1211

被折叠的 条评论
为什么被折叠?



