| CPC G06F 3/0619 (2013.01) [G06F 3/0655 (2013.01)] | 30 Claims |

|
1. A device comprising:
a first storage; and
a processing circuit configured to:
determine, during a boot or startup sequence of a controller, a first authentication value for a first block of a second storage, the first block of the second storage including executable code;
store a first snippet in the first storage, the first snippet being based on the first authentication value;
determine, at run-time of the controller, data integrity of the first block, wherein determining the data integrity of the first block comprises:
determining a second authentication value of the first block, and
comparing a second snippet with the first snippet to generate a comparison result, the second snippet being based on the second authentication value,
responsive to the comparison result indicating the first and second snippets do not match, halt or prevent the executable code from running in the controller, or prevent the controller from receiving the executable code, or provide a fault signal; and
responsive to the comparison result indicating the first and second snippets match, allow the controller to execute the executable code.
|