Hi,ESP32C3 支持最多三个签名,这些签名信息统一存储在固件的 4096 bytes 签名块中。
谈到签名,必须了解的是签名的机制,即数字签名的一些使用方法。数字签名使用私钥进行签名,私钥进行颁发公钥,然后公钥校验签名。
如果需要启用三个签名,则签名的三个私钥请保存好。并在初次使能 secure boot v2 的时候使用命令对 bootloader.bin 进行签名。
对 bootloader.bin 的第一个签名,可以通过 menuconfig 里选中的签名文件来自动执行。其他的第二、第三个签名,目前需要手动来执行追加,具体的命令为 `espsecure.py sign_data -k secure_boot_signing_key2.pem -v 2 –append_signatures -o signed_bootloader.bin build/bootloader/bootloader.bin`.。这里可以详细地阅读 这里的说明:
https://docs.espressif.com/projects/esp ... tiple-keys。
在初次使能 secure boot v2 时,设备若检测到有三个签名信息,会自动将签名校验的相关数据写到 efuse 存储区域。这不需要手动操作。
当然,也可以手动操作,但我们建议使用自动的方式。
手动操作可以使用 espefuse.py 这个烧录 efuse 的工具,具体的使用方法建议运行 espefuse.py -h 来详细了解下说明,也可直接参考文档:
https://docs.espressif.com/projects/esp ... index.html
希望能帮助到您。