Trace Print Verification for Embedded Execution Integrity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for controlling program execution integrity in small embedded systems, such as smart cards, are inadequate in detecting and preventing disturbances caused by physical attacks, which can lead to incorrect execution of instructions and data, compromising security and confidentiality.
Innovation Solution
A method that dynamically updates a trace print representing the execution pathway and/or handled data, comparing it with a statically expected value at critical points, and performing special treatment if the current trace print differs, using trace print operations like setTrace, addTrace, adjustTrace, and checkTrace, to ensure execution integrity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If trace print verification is implemented to detect execution disturbances, then security and reliability are improved, but device complexity and code size increase
Solution Approach 1:
The patent pre-calculates and stores expected trace print values in a table during program development. These reference values are computed beforehand using the same trace print function that will be used during execution, allowing runtime verification without complex real-time calculations or large hardcoded verification tables
Solution Approach 2:
The patent uses a simplified trace print function that computes a compact hash value of the execution pathway. This compact representation serves as a copy or summary of the entire execution trace, enabling efficient verification without storing or transmitting the complete execution history
Solution Approach 3:
The patent replaces complex manual verification methods with automated trace print calculation and comparison. The verification process is substituted by a systematic algorithm that automatically computes trace prints at check points and compares them against pre-stored expected values, eliminating the need for manual security analysis and reducing code complexity
2Measurement precision
If manual trace print calculation is used to verify execution, then detection capability is improved, but programmer effort and time consumption increase
Solution Approach 1:
The patent enables the program to automatically perform trace print verification itself during execution. The system self-monitors its own execution integrity by computing trace prints and comparing them against expected values without requiring external manual intervention or complex tooling
Solution Approach 2:
The patent pre-calculates all expected trace print values during program development and stores them in a lookup table. This preliminary computation eliminates the need for programmers to manually calculate or verify trace prints during execution, significantly reducing programmer effort while maintaining precise disturbance detection
Data Source
AI summary
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.


