Compiler Comparison to Suppress Invisible Trojan Source Code

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The vulnerability of Trojan source code in computer systems, which is rendered differently from its logical ordering and can be exploited by attackers, is difficult to detect visually and poses a significant security risk.

Innovation Solution

A method and system that compiles source code by comparing it with its rendered version to identify and suppress Trojan source code, ensuring that only the intended, rendered code is executed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If Unicode bidirectional algorithm is used to render source code, then source code can be displayed with visual reordering of characters, but Trojan source code can be inserted that is rendered differently from its logical ordering

Engineering Contradiction:
Improvesource code rendering flexibilityVSAvoidsource code integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent creates a copy of the source code in rendered format and compares it with the original source code. This copying approach allows the system to detect discrepancies between the visual rendering and the actual code logic, enabling identification of Trojan source code that exploits Unicode bidirectional algorithms.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system implements a feedback mechanism by comparing the rendered source code against the original source code and providing alerts when differences are detected. This feedback loop enables continuous monitoring and detection of malicious code insertion that manipulates character ordering through Unicode algorithms.

Inventive Principle:
Principle #23Feedback

2Ease of operation

If visual reordering of characters is performed through control sequences, then source code can be displayed with different logic ordering, but it becomes difficult to detect Trojan source code visually

Engineering Contradiction:
Improvesource code display customizationVSAvoidTrojan source code detection
Core Design Contradiction:
Ease of operationVSDifficulty of detecting and measuring

Solution Approach 1:

The patent generates a rendered copy of the source code and compares it with the original. This copying mechanism makes invisible Trojan code visible by highlighting discrepancies between the rendered display and the actual code structure, thereby solving the detection difficulty.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system uses visual differentiation (such as coloring or highlighting) to mark discrepancies between the original and rendered source code. This visual transformation helps developers easily identify Trojan code insertion points that would otherwise be invisible in the rendered display.

Inventive Principle:
Principle #32Color changes

3Adaptability or versatility

If compilers and interpreters ingest source code with Unicode control sequences, then source code can be processed with bidirectional algorithms, but the logical ordering of tokens may differ from the displayed ordering

Engineering Contradiction:
ImproveUnicode algorithm supportVSAvoidcode logic ordering information
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The system implements a feedback comparison between the original source code and its rendered version, detecting when Unicode control sequences cause the logical ordering to diverge from the displayed ordering. This feedback mechanism preserves awareness of the original code logic while allowing flexible Unicode rendering.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces an intermediary comparison layer that sits between the original source code and the rendered display. This intermediary mechanism tracks the transformation of code through Unicode algorithms, maintaining information about the original logical ordering while allowing the rendered version to display with bidirectional reordering.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12353858B2Compiler suppression of invisible trojan source code
Publication Date: 2025.07.08 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12353858B2 patent drawing
  • US12353858B2 patent drawing
  • US12353858B2 patent drawing

AI summary

A computer implemented method compiles a source code. A computer system loads the source code into a first memory. The computer system loads a rendered source code into a second memory, wherein the rendered source code is a rendered version of the source code. The computer system determines whether a difference is present between the source code in the first memory and the rendered source code in the second memory. The computer system performs a set of actions in compiling the source code in response to determining that the difference between the source code and the rendered source code is present.