Dynamic Code Redundancy for Hacking Prevention
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing countermeasures against hacking attempts, such as random delays and decoys, can be detected during side-channel analysis, allowing attackers to predict program execution and target critical points, thereby compromising security.
Innovation Solution
A method that varies the executed code and verifies intermediate results by using a counter and security variables to dynamically trigger redundancy checks, ensuring unpredictable redundancy application points and directions, thereby enhancing security against hacking attempts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If countermeasures (decoys or random delays) are inserted at multiple time locations during chip execution, then security against hacking attempts is improved, but the countermeasures can be detected during side-channel analysis, allowing attackers to predict program execution and target critical points
Solution Approach 1:
The patent applies dynamics by making the redundancy execution dynamic and unpredictable. The counter NC is incremented randomly, and the SENS function dynamically determines whether to execute front redundancy, rear redundancy, or normal execution based on the current counter value and security variables. This dynamic behavior prevents attackers from predicting when redundancy will occur, making the countermeasures undetectable through side-channel analysis while maintaining security.
Solution Approach 2:
The patent implements preliminary action by pre-defining multiple redundancy points throughout the code execution flow before any attack occurs. The counter NC is initialized to a random value between 0 and N-1, and redundancy mechanisms are pre-positioned at various points. This allows the system to be prepared for potential attacks in advance, with redundancy checks already in place at critical locations, rather than reacting to attacks after they are detected.
2Reliability
If redundancy checks are applied frequently to secure delicate operations, then security against hacking attempts is improved, but the execution time and complexity of the system increase
Solution Approach 1:
The patent applies partial action by not executing redundancy checks at every possible point in the code. Instead, the SENS function selectively triggers redundancy based on the counter value and security variables r0, r1, r2. This means redundancy is applied partially - only when the random counter NC matches one of the predefined security variable values. This selective approach provides security where needed while avoiding the time penalty of universal redundancy execution.
Solution Approach 2:
The patent uses parameter changes by varying the frequency and location of redundancy checks through the random counter NC and security variables. The parameters controlling redundancy execution (counter values, security variables r0-r2, SENS function outcomes) are dynamically changed during execution, allowing the system to adapt the level of redundancy applied based on runtime conditions rather than using a fixed, always-on redundancy mechanism.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The invention relates to a method for securing the execution of a computer code by means of the redundancy of a portion or the entirety of the functions executed. The starting point of the redundancy and the direction of the redundancy are determined dynamically.