Source Code Obfuscation Logic for Server Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Scripting languages, such as JavaScript, are vulnerable to reverse engineering and intellectual property theft due to their interpretation-based execution, making it difficult to secure server computers from malicious attacks by client computers.
Innovation Solution
Implementing a computer system with source code obfuscation logic that applies obfuscation transformations to original source code instructions, producing obfuscated instructions that maintain functionality while obscuring the code structure, thereby enhancing security against human analysis and automation-based attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If source code is delivered to browser as source code for interpretation execution, then deployment and customization are simplified, but security and intellectual property are compromised due to vulnerability to reverse engineering and malicious alteration
Solution Approach 1:
The patent introduces an intermediary obfuscation process between the server and browser. The obfuscation logic transforms readable source code into obfuscated code that maintains functionality but is difficult to analyze. This intermediary transformation layer protects the original source code while still enabling browser execution, thus resolving the contradiction between deployment simplicity and security.
2Adaptability or versatility
If source code is made public for browser execution, then accessibility and functionality are improved, but machine analysis by bots and malicious software becomes easier
Solution Approach 1:
The patent changes the parameters of source code presentation by applying obfuscation transformations that alter the code's structure, naming conventions, and formatting while preserving its functional behavior. This parameter transformation makes the code accessible to browsers for execution but significantly increases the difficulty of machine analysis by bots and malicious software, thus resolving the contradiction between accessibility and analysis resistance.
3Adaptability or versatility
If algorithms and data are exposed in source code, then functionality and customization are enhanced, but security by obscurity is lost
Solution Approach 1:
The patent applies obfuscation transformations as a preliminary action before delivering source code to the browser. This preliminary obfuscation process hides algorithms and data within the code structure, maintaining security by obscurity while preserving full functionality. The obfuscation is applied in advance, ensuring that sensitive information remains protected before the code reaches the browser environment.
Data Source
AI summary
A computer system is configured to improve security of server computers interacting with client computers, and comprises: a memory, a processor coupled to the memory, and source code obfuscation logic coupled to the memory and the processor. The source code obfuscation logic is configured to read, from the memory, one or more original source code instructions that are configured to achieve an expected result when executed by a web browser on a client computer; to apply one or more obfuscation transformations, to the one or more original source code instructions, to produce one or more obfuscated source code instructions that are configured to achieve the same expected result when executed by the web browser but is expressed in an obfuscated format; to write the one or more obfuscated source code instructions to the memory.


