Patent ID: 8856538

Claim:
A method for securely flashing a controller, said controller including at least one main processor and at least one secondary processor where the main processor includes greater computing power than the secondary processor, said-method comprising: providing a content file to be flashed and a digital signature to the controller; calculating a hash value of the content file in the controller; decrypting the digital signature to generate a decrypted hash value in the controller; comparing the decrypted hash value to the calculated hash value; determining that the content file is valid if the decrypted hash value matches the calculated hash value; and storing the content file in the at least one secondary processor, wherein one or more of calculating a hash value of the content file, decrypting the digital signature using a public key to generate a decrypted hash value, comparing the decrypted hash value to the calculated hash value and determining that the content file is valid if the decrypted hash value matches the calculated hash value are performed by the main processor, and wherein the secondary processor uses the content file if the main processor determines that the content file is valid and erases the content file if the main processor determines that the content file is invalid.