Patent ID: 12013955

Abstract:
A method for transmitting a boot code, with improved data security, from a programming device to a microcontroller, including: a) creating a first public key, a first private key, and a password; b) generating a bootloader binary for execution on the microcontroller, c) estimating a tolerable total processing time, which consists of the processing times of steps d) to f); d) transmitting the bootloader binary from the programming device to the microcontroller; e) executing, by the microcontroller, the bootstrap loader code, the decryption routine, and the decrypted bootloader routines; f) transmitting at least the second public key from the microcontroller to the programming device; g) if the actual processing times of steps d) to f) are outside the tolerable total processing time, terminating the method; and h) otherwise, encrypting, by the programming device, the boot code by the second public key and transmitting an encrypted boot code to the microcontroller.