Secured Interface Between Code Domains Using Parameter Transformation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The interfaces between different software domains in mobile applications, such as the Android operating system, are vulnerable to attacks, allowing hackers to easily ascertain and manipulate parameters and returns, compromising the security of sensitive data processing.
Innovation Solution
The implementation secures these interfaces by transforming parameters and returns using a random scheme and scale/bias, storing them in an array, and creating corresponding code methods in each domain to encode and decode them, making it difficult for attackers to exploit the interface.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If interfaces between code domains are made clear and accessible for normal operation, then ease of operation is improved, but security is worsened allowing attackers to easily ascertain and manipulate parameters
Solution Approach 1:
The patent transforms the interface parameters by applying random schemes and scale/bias transformations to the parameters and returns passing between code domains. This changes the parameter space so that attackers cannot directly interpret or manipulate the transformed parameters, while the system can correctly transform and revert them during normal operation.
Solution Approach 2:
The patent introduces transformation functions as intermediary layers between the first and second code domains. These intermediaries transform parameters before passing them across the interface and revert them on the receiving end, mediating the communication to prevent direct exposure of original parameters to potential attackers.
2Object-affected harmful factors
If parameters and returns are transformed and stored in arrays with random schemes, then security is improved by obscuring actual values, but device complexity increases due to additional transformation code
Solution Approach 1:
The patent segments the transformation logic into separate corresponding code methods in each code domain. The first code domain contains transformation code that transforms parameters before passing to the second domain, while the second domain contains corresponding code that reverses the transformation. This segmentation isolates the complexity to specific modules rather than distributing it throughout the entire system.
Solution Approach 2:
The patent creates corresponding code methods in each domain that mirror each other's transformation logic. The first domain has code to transform parameters in one direction, and the second domain has corresponding code to transform them back, creating a copied but inverted transformation pattern that manages complexity through symmetry.
3Reliability
If transformed parameters are used in code methods called through the interface, then reliability is improved by protecting sensitive data, but loss of information occurs as original parameter values are obscured
Solution Approach 1:
The patent applies preliminary transformation to parameters before they are passed through the interface between code domains. By transforming the parameters in advance using random schemes and scale/bias, the original sensitive values are obscured before exposure to potential attackers, while the transformation can be reliably reverted on the receiving end to restore the original values for correct operation.
Data Source
AI summary
Systems, methods, and storage media for creating secured computer code from original computer code are disclosed. The secured computer code is created from original computer code and has a secured interface between a first code domain and a second code domain of the original computer code, the first code domain including code in a first coding language and the second code domain including code in a second coding language, the first code domain being compiled separately from the second code domain. Exemplary implementations may: identify a code method defined in the first code domain that is declared in the second code domain; create a corresponding code method in the second code domain that has a signature that corresponds to a signature of the code method; and create a transformed code method in the first code domain.


