Crypto-signing custom firmware or similar?
Posted: Fri Jan 08, 2021 5:54 pm
I have a commercial hardware/software project I'm working on that we're considering making open source. One of our concerns is that if the software is done wrong, hardware damage can result. If someone decided to download the firmware, "optimize" it improperly, and break the hardware (against our objections and warranty), then we'd like to have some mechanism by which they couldn't pave over their tracks, load the original firmware back on, and then do a warranty claim.
To put it in vague but close-enough terms, it's a heating-cooling system on a PID controller. When you flip modes between heat and cool, there needs to be a ~60 second delay in firing it up in the new mode.
I've seen that in the ESP-IOT dev kit for the ESP32, you can make it so you need a crypto key to read the firmware off the esp32 (though I've not fully flushed this out). Either way, is there some mechanism by which we could see if the firmware had been messed with?
To put it in vague but close-enough terms, it's a heating-cooling system on a PID controller. When you flip modes between heat and cool, there needs to be a ~60 second delay in firing it up in the new mode.
I've seen that in the ESP-IOT dev kit for the ESP32, you can make it so you need a crypto key to read the firmware off the esp32 (though I've not fully flushed this out). Either way, is there some mechanism by which we could see if the firmware had been messed with?