Dynamic Patch Application for Executable Code Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing systems for applying patches to executable codes in mobile devices require costly and time-consuming security certification, especially after changes to the operating system, which necessitates recertification of applets and operating systems, leading to inefficient and costly functional testing.
Innovation Solution
A system and method for dynamically applying patches to executable codes by utilizing a control unit that maps execution contexts to patches, allowing specific patches to be applied only when an execution environment switches to a corresponding context, thereby avoiding unnecessary recertification and minimizing changes to original code.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If patches are applied to executable codes in mobile devices, then code functionality can be updated and security can be maintained, but security certification becomes costly and time-consuming, requiring recertification of applets and operating systems
Solution Approach 1:
The patent applies patches dynamically at runtime rather than requiring static recertification. The control unit monitors execution contexts and applies patches when specific contexts are detected, allowing security updates without time-consuming recertification processes for each change.
Solution Approach 2:
The patent segments the codebase into different execution contexts (e.g., eUICC, eSE, different applications). Patches are applied selectively to specific contexts rather than requiring recertification of the entire system, thereby reducing time and cost while maintaining security.
2Adaptability or versatility
If patches are applied to executable codes, then code functionality can be updated, but extensive functional testing is required to ensure no unintended changes occur
Solution Approach 1:
The patent applies patches locally to specific execution contexts rather than universally. The control unit identifies the specific context (e.g., payment application, network communication) and applies only the relevant patch, minimizing the scope of testing required and reducing overall testing time.
3Reliability
If patches are applied to executable codes, then security and functionality can be maintained, but the complexity of managing multiple execution environments and contexts increases
Solution Approach 1:
The control unit automatically monitors execution contexts and applies patches autonomously based on predefined conditions. This self-service mechanism reduces the manual complexity of managing multiple execution environments by automating the patch application process.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
In accordance with a first aspect of the present disclosure, a system is provided for applying patches to executable codes, comprising: a plurality of execution environments configured to execute said codes in different execution contexts; a control unit configured to apply the patches to said codes; wherein the control unit is configured to apply a specific patch to a specific code upon or after an execution environment configured to execute said specific code switches to an execution context corresponding to said specific code. In accordance with other aspects of the present disclosure, a corresponding method is conceived for applying patches to executable codes, and a corresponding computer program is provided.