Secured Interface Between Code Domains Using Parameter Transformation

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improveinterface accessibilityVSAvoidattack vulnerability
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

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.

Inventive Principle:
Principle #35Parameter changes

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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

Engineering Contradiction:
Improveattack resistanceVSAvoidcode structure complexity
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #26Copying

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

Engineering Contradiction:
Improvedata protectionVSAvoidoriginal parameter visibility
Core Design Contradiction:
ReliabilityVSLoss of information

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.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11947665B2Secured computer code and systems, methods, and storage media for creating the secured computer code from original computer code
Publication Date: 2024.04.02 IRDETO BV
  • US11947665B2 patent drawing
  • US11947665B2 patent drawing
  • US11947665B2 patent drawing

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.