# QFPROM 熔丝

Source: [https://docs.qualcomm.com/doc/80-70014-11Y/topic/appendix-fuse-configurations.html](https://docs.qualcomm.com/doc/80-70014-11Y/topic/appendix-fuse-configurations.html)

下表列出了可以熔断以启用安全启动的各种 QFPROM 熔丝值。

| 熔丝名称 | 起始地址 | 位号 | 熔丝熔断值 | 说明 |
| --- | --- | --- | --- | --- |
| **读取权限** | **读取权限** | **读取权限** | **读取权限** | **读取权限** |
| 次级密钥派生密钥读取禁用 | 7801A8 | 24 | 1 | 配置 SKDK 后，熔断此位以确保辅助密钥不被读回。SKDK 和加密引擎之间存在一条安全通路硬件。 |
| **写入权限** | **写入权限** | **写入权限** | **写入权限** | **写入权限** |
| 读取权限写入禁用 | 7801B0 | 6 | 1 | 配置相应区域后，熔断此位以禁止对此区域进一步的 QFPROM 更改。 |
| FEC 启用写入禁用 | 7801B0 | 8 | 1 | 配置相应区域后，熔断此位以禁止对此区域进一步的 QFPROM 更改。 |
| OEM 配置写入禁用 | 7801B0 | 9 | 1 | 配置相应区域后，熔断此位以禁止对此区域进一步的 QFPROM 更改。 |
| 公钥哈希 0 写入禁用 | 7801B0 | 17 | 1 | 配置相应区域后，熔断此位以禁止对此区域进一步的 QFPROM 更改。 |
| OEM 安全启动写入禁用 | 7801B0 | 23 | 1 | 配置相应区域后，熔断此位以禁止对此区域进一步的 QFPROM 更改。 |
| 次级密钥派生密钥写入禁用 | 7801B0 | 24 | 1 | 配置相应区域后，熔断此位以禁止对此区域进一步的 QFPROM 更改。 |
| **FEC 启用** | **FEC 启用** | **FEC 启用** | **FEC 启用** | **FEC 启用** |
| OEM 安全启动 FEC 启用 | 7801B8 | 23 | 1 | 熔断此位可为 OEM 安全启动区域启用 FEC。确保在启用 FEC 之前配置了整个区域。 |
| 次级密钥派生密钥 FEC 使能 | 7801B8 | 24 | 1 | 熔断此位以启用次级 KDF 密钥的 FEC。确保在启用 FEC 之前配置了整个区域。 |
| **OEM 配置** | **OEM 配置** | **OEM 配置** | **OEM 配置** | **OEM 配置** |
| `WDOG_EN` | 7801C0 | 14 | 1 | 这可以防止 `WDOG_DISABLE` GPIO 禁用 WDOG、释放 GPIO 并防止攻击者的潜在滥用。 |
| `SHARED_QSEE_SPIDEN_DISABLE` | 7801C0 | 30 | 1 | 这是一个共享的 Qualcomm TEE 安全侵入式调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `SHARED_QSEE_SPNIDEN_DISABLE` | 7801C0 | 31 | 1 | 这是一个共享的 Qualcomm TEE 安全非侵入式调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `SHARED_MSS_DBGEN_DISABLE` | 7801C4 | 32 | 1 | 这是一个共享的 MSS 侵入式调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `SHARED_MSS_NIDEN_DISABLE` | 7801C4 | 33 | 1 | 这是一个共享的 MSS 非侵入式调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `SHARED_CP_DBGEN_DISABLE` | 7801C4 | 34 | 1 | 这是一个共享的 CP 侵入式调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `SHARED_CP_NIDEN_DISABLE` | 7801C4 | 35 | 1 | 这是一个共享的 CP 非侵入式调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `SHARED_NS_DBGEN_DISABLE` | 7801C4 | 36 | 1 | 这是一个共享的 CP 非侵入式调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `SHARED_NS_NIDEN_DISABLE` | 7801C4 | 37 | 1 | 这是一个共享的 CP 非侵入式调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `APPS_DBGEN_DISABLE` | 7801C4 | 38 | 1 | 熔断此位以获得安全方案。这将禁用程序处理器的全局侵入式调试功能（JTAG 和监控模式）。`OVERRIDE` 寄存器可以覆盖此配置。 |
| `APPS_NIDEN_DISABLE` | 7801C4 | 39 | 1 | 熔断此位以获得安全方案。这将禁用程序处理器的全局非侵入式调试功能（trace和性能监控）。可以用 `OVERRIDE` 寄存器覆盖此设置。 |
| `SHARED_MISC_DEBUG_DISABLE` | 7801C4 | 40 | 1 | 这是一个共享的杂项调试禁用桶。相应的 Qualcomm 熔丝可以覆盖此 OEM 控制的熔丝。 |
| `EKU_ENFORCEMENT_EN` | 7801C8 | 30 | 1 | 熔断此熔丝可以使能证书中的 EKU 字段的强制执行。 |
| `OEM_HW_ID[0:15]` | 7801CC | [32:47] | 0 | 此项表示 OEM 硬件 ID。位 15:0。 |
| `OEM_PRODUCT_ID[0:15]` | 7801CC | [48:63] | 0 | 此项表示 OEM 产品 ID。位 15:0。 |
| `ANTI_ROLLBACK_FEATURE_EN[0]` | 7801D4 | 32 | 1 | <ul class="ul" id="appendix-fuse-configurations__ul_ckt_k2d_s1c"><br>                                <li class="li">位 0 - <code class="ph codeph">BOOT_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 1 - <code class="ph codeph">TZAPPS_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 2 -<code class="ph codeph"> PILSUBSYS_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 3 - <code class="ph codeph">MSA_ANTI_ROLLBACK_EN</code></li><br><br>                            </ul> |
| `ANTI_ROLLBACK_FEATURE_EN[1]` | 7801D4 | 33 | 1 | <ul class="ul" id="appendix-fuse-configurations__ul_ckt_k2d_s1c"><br>                                <li class="li">位 0 - <code class="ph codeph">BOOT_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 1 - <code class="ph codeph">TZAPPS_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 2 -<code class="ph codeph"> PILSUBSYS_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 3 - <code class="ph codeph">MSA_ANTI_ROLLBACK_EN</code></li><br><br>                            </ul> |
| `ANTI_ROLLBACK_FEATURE_EN[2]` | 7801D4 | 34 | 1 | <ul class="ul" id="appendix-fuse-configurations__ul_ckt_k2d_s1c"><br>                                <li class="li">位 0 - <code class="ph codeph">BOOT_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 1 - <code class="ph codeph">TZAPPS_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 2 -<code class="ph codeph"> PILSUBSYS_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 3 - <code class="ph codeph">MSA_ANTI_ROLLBACK_EN</code></li><br><br>                            </ul> |
| `ANTI_ROLLBACK_FEATURE_EN[3]` | 7801D4 | 35 | 1 | <ul class="ul" id="appendix-fuse-configurations__ul_ckt_k2d_s1c"><br>                                <li class="li">位 0 - <code class="ph codeph">BOOT_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 1 - <code class="ph codeph">TZAPPS_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 2 -<code class="ph codeph"> PILSUBSYS_ANTI_ROLLBACK_EN</code></li><br><br>                                <li class="li">位 3 - <code class="ph codeph">MSA_ANTI_ROLLBACK_EN</code></li><br><br>                            </ul> |
| **公钥哈希** | **公钥哈希** | **公钥哈希** | **公钥哈希** | **公钥哈希** |
| `PK hash 0[0:383]` | 780248 | [0:383] | - | 这是 OEM 特定的根证书 的公钥哈希值。 |
| **OEM 安全启动** | **OEM 安全启动** | **OEM 安全启动** | **OEM 安全启动** | **OEM 安全启动** |
| `OEM_SECURE_BOOT1_PK_HASH_IN_FUSE` | 780728 | 4 | 1 | 当此位为 1 时，使用存储在 OEM\_PK\_HASH 中的值作为根证书哈希值。 |
| `OEM_SECURE_BOOT1_AUTH_EN` | 780728 | 5 | 1 | 熔断此位可为程序和其他外设镜像启用安全启动。当此位为 1 时，它将为引用安全启动配置 1 的任何代码启用身份验证。 |
| `OEM_SECURE_BOOT2_PK_HASH_IN_FUSE` | 780728 | 12 | 1 | 对于启动配置 2：<br>如果此位为 0，则使用内部 ROM 哈希索引和 `OEM_SECURE_BOOT1_ROM_PK_HASH_IDX[3:0]`。<br><br><br>如果此位为 1，则使用存储在`OEM_PK_HASH` 中的值作为根证书哈希值。 |
| `OEM_SECURE_BOOT2_AUTH_EN` | 780728 | 13 | 1 | 熔断此位以启用安全启动。当此位为 1 时，它将为引用安全启动的任何代码启用身份验证。 |
| `OEM_SECURE_BOOT3_PK_HASH_IN_FUSE` | 780728 | 20 | 1 | 对于引导配置 3：<br>如果此位为 0，则使用内部 ROM 哈希索引和 `OEM_SECURE_BOOT1_ROM_PK_HASH_IDX[3:0]`。<br><br><br>当此位为 1 时，则使用存储在`OEM_PK_HASH` 中的值作为根证书哈希值。 |
| `OEM_SECURE_BOOT3_AUTH_EN` | 780728 | 21 | 1 | 熔断此位以启用安全启动。当此位为 1 时，它将为引用安全启动配置 3 的任何代码启用身份验证。 |
| **次级密钥派生密钥** | **次级密钥派生密钥** | **次级密钥派生密钥** | **次级密钥派生密钥** | **次级密钥派生密钥** |
| `Sec Key derivation Key[0:255]` | 780738 | [0:255] |  | 此 256 位值用作次级密钥派生输入，后者用于为加密引擎生成次级密钥。在非安全模式下运行（未启用安全启动或启用调试）时，SKDK 将馈送到密钥派生函数中，以生成唯一的非安全次级密钥供加密引擎使用。<br><br><br>                            <br>在安全模式下运行（禁用安全启动且禁用调试）时，SKDK 将作为次级密钥直接馈送到加密引擎。<br><br><br>                            <br>正确编程 SKDK 值后，必须熔断 SKDK 读取禁用以永久保护 SKDK 值。在进行此项更正之前，软件从 QFPROM 中读取 SKDK 值。<br><br><br>                            <br>SBL 熔丝 API 可以自动生成一个随机数作为 SKDK，确保 SKDK 值在设备外部永远不可用。 |
|  |  |  |  |  |
|  |  |  |  |  |
|  |  |  |  |  |

**Parent Topic:** [启用安全启动](https://docs.qualcomm.com/doc/80-70014-11Y/topic/enable-secure-boot.html)

Last Published: Aug 27, 2024

[Previous Topic
启用安全启动](https://docs.qualcomm.com/bundle/publicresource/80-70014-11Y/topics/enable-secure-boot.md) [Next Topic
生成本地（不安全）根密钥和证书](https://docs.qualcomm.com/bundle/publicresource/80-70014-11Y/topics/generate-local-insecure-root-key-and-certificates.md)