change(bootloader): honor SECURE_BOOT_ALLOW_UNUSED_DIGEST_SLOTS during first boot

Previously the bootloader unconditionally revoked unused secure boot key
digest slots while permanently enabling secure boot on the first boot,
ignoring CONFIG_SECURE_BOOT_ALLOW_UNUSED_DIGEST_SLOTS. Now the config is
honored on this path too: when set, the unused digest slots are left
un-revoked. This is safe as long as the debug and download interfaces are
disabled.

Update the Kconfig help and the Secure Boot v2 guide (en and zh_CN)
accordingly.
This commit is contained in:
Mahavir Jain
2026-06-10 13:09:10 +05:30
parent fa28dd8c12
commit 8da7627526
4 changed files with 8 additions and 13 deletions
+1 -3
View File
@@ -729,9 +729,7 @@ Secure Boot v2 签名验证也可以在 OTA 更新期间验证数据分区镜像
.. note::
请注意,启用配置 :ref:`CONFIG_SECURE_BOOT_ALLOW_UNUSED_DIGEST_SLOTS` 只能确保 **应用程序** 不会撤销未使用的摘要槽。
若想在设备首次启动时启用安全启动,那么即使启用了上述配置,引导加载程序也会在启用安全启动时撤销未使用的摘要槽,因为保留未使用的密钥槽会构成安全隐患。
如果在开发流程中需要保留未使用摘要槽,则应从外部启用安全启动 (:ref:`enable-secure-boot-v2-externally`),而不是在启动设备时启用安全启动,这样引导加载程序就无需启用安全启动,从而避免安全隐患。
启用配置 :ref:`CONFIG_SECURE_BOOT_ALLOW_UNUSED_DIGEST_SLOTS` 后,未使用的摘要槽在两种情况下都将保持未撤销状态:在 **应用程序** 运行时,以及在设备首次启动时由 **引导加载程序** 启用安全启动时。请注意,除非调试接口和下载接口已完全禁用,且远程接口已针对安全风险进行全面审计,否则保留未使用的密钥槽可能构成安全风险。
保守方法
~~~~~~~~