With the Internet of Things revolution, there is always a need to push new firmware to remote devices to keep them updated with new features, fix bugs or patch security issues. There is a pressing need to make the update procedure secure without any outside interference.
TI has released a whitepaper on implementing a cryptographic bootloader in the MSP430 FRAM family of microcontrollers(MSP430FR59xx/69xx). The implementation is based on the symmetric approach where the same key is used to encrypt and decrypt the binary. A mechanism to update or modify the secret key to a deployed device is also provided.
The code footprint of Crypto-Bootloader using the above configuration uses 3.27 KB of code and constants stored in FRAM non-volatile memory and 908 Bytes of volatile memory using RAM. Decryption, verification and programming time of a 256-Byte packet at 8 MHz took approximately 7.03ms or 56,000 cycles.
- Part 1: Firmware updates in network-connected MCUs
- Part 2: Security definition, known attacks and security measures
- Part 3: Crypto-bootloader flow and implementation
- Part 4: FRAM advantages, tools overview and summary