> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs-staging.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 启用安全启动

安全启动通过熔断一组作为 QFPROM 一部分的硬件熔丝来启用。根证书的哈希被熔断到硬件熔丝中,作为主要的信任根 (RoT)。

要理解目标外准备和设备端执行,请参阅工作流程。

<img src="https://mintcdn.com/qualcomm-staging/uWQLnBcS9sxlZhgB/System/Security/media-security/k2c-qli-security/secure-boot-prep-updated.png?fit=max&auto=format&n=uWQLnBcS9sxlZhgB&q=85&s=6da985dbe7df6b52ada6d192a4628e05" alt="安全启动工作流程" width="957" height="735" data-path="System/Security/media-security/k2c-qli-security/secure-boot-prep-updated.png" />

*图:安全启动工作流程*

只有在熔断 QFPROM(一种 eFuse)后才能保证安全启动。启用平台安全启动所需的 eFuse 配置包括:

* 启用镜像身份验证和防回滚保护。
* 禁用调试和 JTAG 访问。
* 熔断 QFPROM 区域的 *禁用读/写权限* 熔丝。

## 通过熔断 QFPROM 熔丝启用安全启动

1. 从 Qualcomm 获取唯一的 OEM ID。
   当使用代码授权签名服务 (CASS) 或 Qualcomm WES 服务时需要此 ID。或者,您可以将 OEM ID 的值设置为 0。
2. 生成并配置签名资产,如密钥和证书。
3. 生成用于熔断熔丝的已签名 ELF (sec.elf)。
4. 签名固件镜像。
5. 将 sec.elf 和已签名的镜像刷写到设备上。

不基于 Linux 的镜像使用 SecTools v2 和本地签名器进行签名。此过程要求签名证书和密钥存在于进行签名的本地机器上。但是,这些密钥不安全,可能在运行 SecTools 的机器上的签名过程中和之后被泄露。

<Note>
  Qualcomm 不提供有关如何保护这些密钥的指导。建议遵循标准安全协议,从受信任的证书颁发机构 (CA) 获取密钥/证书,并使用硬件安全模块 (HSM) 保护这些密钥。

  使用 OpenSSL 工具自生成的密钥和证书没有与任何证书颁发机构的链接。
</Note>

## 使用 SecTools 启用安全启动

1. 设置 SecTools v2 的环境变量。有关更多信息,请参阅 [安全工具](/zh/System/Security/security-tools)。
   以下代码片段作为参考提供。根据正在使用的构建替换 `<chipset>` 和 `<chipset>.LE.X.x`。
   例如,`<QCM6490.LE.2.0>`。

   <Note>
     术语 metabuild、meta 和 meta 路径可互换使用,指示来自 Qualcomm ChipCode™ Portal 的路径。metabuild 表示构建的完整 Qualcomm ChipCode 版本。
   </Note>

   对于 Linux:

   <Tabs>
     <Tab title="bash">
       ```bash theme={null}
       export SECTOOLS=/<chipset>.LE.X.x/common/sectoolsv2/ext/linux/sectools
       ```
     </Tab>

     <Tab title="csh">
       ```csh theme={null}
       setenv SECTOOLS=/<chipset>.LE.X.x/common/sectoolsv2/ext/linux/sectools
       ```
     </Tab>
   </Tabs>

2. 从以下路径使用 SecTools v2:`<chipset>.LE.X.x/common/sectoolsv2/ext/<platform>`
   * `<chipset>_security_profile.xml` 文件位于 meta 的 `<chipset>.LE.X.x/common/sectoolsv2`
   * 所需的最低 SecTools 版本为 1.43 或更高版本。

3. 建议使用硬件安全模块 (HSM)。但是,如果使用 LOCAL(不安全)签名器,请参阅 [SecTools V2:安全镜像用户指南](https://docs.qualcomm.com/doc/80-NM248-12/topic/secure-image-usage.html) 中带有 --signing-help 的 LOCAL 签名选项。

4. 所有密钥和证书生成命令都使用 OpenSSL 1.1.1g(2020 年 4 月 21 日)运行。安装 OpenSSL 是先决条件。

5. 确保在未配置 RPMB 的设备上启用安全启动。请参阅 [检查 RPMB 配置状态](/zh/System/Security/verify-the-security-configurations-of-qualcomm-linux#verify-rpmb-provisioning-status)。
   在熔断安全启动熔丝后,RPMB 将自动使用生产密钥进行配置。

<Note>
  SecTools 指南仅对具有授权访问权限的许可用户开放。
</Note>

## 后续步骤

* 要启用安全启动,必须熔断 QFPROM 熔丝。这是一次性、不可逆的过程,会永久设置这些值。有关更多信息,请参阅 [设置 QFPROM 熔丝](/zh/System/Security/set-the-qfprom-fuses)。
* 要确保在安全和受信任的环境中生成和管理加密密钥和证书,请参阅 [生成密钥和证书](/zh/System/Security/generate-keys-and-certificates)。
