Compiler Comparison to Suppress Invisible Trojan Source Code
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
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.
Data Source
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.


