Portable Data Carrier Malicious Code Recoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Portable data carriers are vulnerable to attacks where malicious code is smuggled in as user data and executed by manipulating the instruction counter, leading to potential data breaches.
Innovation Solution
A method and data carrier design that recodes executable program code to prevent its execution, using techniques such as transcoding, filler blocks, and examination for malicious code, ensuring that even if an attacker manipulates the instruction counter, the recoded data set is not executable.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the instruction counter is manipulated to point to malicious code stored in memory, then the malicious code can be executed, but security is compromised
Solution Approach 1:
The patent applies preliminary action by recoding data sets before they are stored in memory. The coding device transforms the data set into a recoded form where any embedded malicious code becomes non-executable. This preventive measure ensures that even if an attacker manipulates the instruction counter to point to malicious code, the recoded malicious code cannot be executed, thus securing the system against light and glitch attacks before the attack occurs.
2Reliability
If recoding is applied to all data sets before storage, then security against malicious code is improved, but processing time and computational resources increase
Solution Approach 1:
The patent implements partial action by examining data sets to determine whether they contain executable program code before applying recoding. Only data sets that are identified as containing executable code undergo recoding transformation. This selective approach maintains security by ensuring that potentially malicious code is recoded while avoiding unnecessary processing of benign data, thus reducing overall processing time and computational resource consumption.
3Reliability
If recoded data sets are stored in memory, then malicious code execution is prevented, but the data must be decoded before use which adds operational complexity
Solution Approach 1:
The patent applies self-service by integrating the decoding function directly into the data carrier system. The coding device is configured to automatically decode recoded data sets when they are read from memory, making the decoding process transparent to the user. This automated self-service approach maintains security by ensuring proper decoding while minimizing operational complexity for end users who do not need to manually manage the recoding/decoding process.
Data Source
Figure 1
Figure 2~3
AI summary
A method for preventing an attack on a portable data carrier (10) by means of executable program code, in particular malicious code, comprises at least the step of recoding a data record (100) to be stored in a memory (50) of the data carrier (10) or already stored in the memory (50) of the data carrier (10) such that, if the data record (100) contains executable program code on a processor (30) of the data carrier (10), the program code is no longer executed.