Method for controlling program execution integrity by verifying execution trace prints
AssigneeTrusted Logic
InventorsDominique Bolignano, Xavier Leroy, Renaud Marlet
Life of this patent
Estimating the term…
Abstract
The inventive method for controlling a program execution integrity by verifying execution trace prints consists in updating the representative print of an execution path and/or data applied for a program execution, comparing the actual print value (dynamically calculated to an expected value (statistically fixed, equal to a value of the print if the program execution is not disturbed) at a determined program spots and in carrying out a particular processing by the program when the actual print differs from the expected value.
Claims25
Method for controlling program execution integrity by verifying execution traces, comprising:
- updating a trace print representing an execution pathway and/or handled data on program execution,
- adjusting the trace point along the execution pathways before reaching certain points of convergence of a check flow so that trace prints of converging pathways are made equal,
- comparing said trace print calculated dynamically with an expected value fixed statically, equal to a value the trace print should have if program execution is not disturbed at determined points of the program, and
- performing special treatment if the current trace print differs from the expected value.
Execution system enabling controlling of execution integrity wherein said system includes a microprocessor which has specialized instructions for trace print calculation and/or trace print update and/or trace print adjustment and/or trace print assignment and/or trace print controlling and/or trace print saving on calls to routines and trace print restoration on return from a program routine, wherein said controlling comprises the following steps:
- updating a trace print representing an execution pathway and/or handled data on program execution,
- comparing said trace print with an expected value at determined points of the program, wherein said trace point is a current value, calculated dynamically, and the expected value is fixed statically, equal to a value the trace print should have if program execution is not disturbed,
- performing special treatment if the current trace print differs from the expected value.
Dependencies are inferred from the claim text.