esp32 加密
Posted: Wed Jul 16, 2025 1:06 am
Hi all,
我目前因為要使用 esp mdf,所以 esp idf 只能用 4.3.1 的版本,在加密上遇到了問題,想請問加密步驟是這樣嗎?
[ 第一次燒錄步驟 ]
1. 產生金鑰
espsecure.py generate_flash_encryption_key flash_encryption_key.bin
2. 燒錄金鑰
espefuse.py --port COM3 burn_key flash_encryption build\flash_encryption_key.bin
3. 開啟加密
CONFIG_FLASH_ENCRYPTION_ENABLED=y
CONFIG_FLASH_ENCRYPTION_MODE_DEVELOPMENT=y
4. 編譯程式
5. 燒錄原始韌體
idf.py -p COM3 erase_flash
idf.py -p COM3 flash monitor
[ 重新燒錄步驟 ]
1. 編譯程式
2. 加密韌體 (選用)
espsecure.py encrypt_flash_data --keyfile build\flash_encryption_key.bin --address 0x20000 --output build\app-encrypt.bin build\app.bin
刪除 app.bin
app-encrypt.bin 更名為 app.bin
3. 燒錄韌體
idf.py -p COM3 flash monitor
照這個步驟做,重新燒錄後,都會無法開機,出現 invalid header
我目前因為要使用 esp mdf,所以 esp idf 只能用 4.3.1 的版本,在加密上遇到了問題,想請問加密步驟是這樣嗎?
[ 第一次燒錄步驟 ]
1. 產生金鑰
espsecure.py generate_flash_encryption_key flash_encryption_key.bin
2. 燒錄金鑰
espefuse.py --port COM3 burn_key flash_encryption build\flash_encryption_key.bin
3. 開啟加密
CONFIG_FLASH_ENCRYPTION_ENABLED=y
CONFIG_FLASH_ENCRYPTION_MODE_DEVELOPMENT=y
4. 編譯程式
5. 燒錄原始韌體
idf.py -p COM3 erase_flash
idf.py -p COM3 flash monitor
[ 重新燒錄步驟 ]
1. 編譯程式
2. 加密韌體 (選用)
espsecure.py encrypt_flash_data --keyfile build\flash_encryption_key.bin --address 0x20000 --output build\app-encrypt.bin build\app.bin
刪除 app.bin
app-encrypt.bin 更名為 app.bin
3. 燒錄韌體
idf.py -p COM3 flash monitor
照這個步驟做,重新燒錄後,都會無法開機,出現 invalid header