Obfuscated Code Analysis for Confidential Deficiency Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software code analysis methods expose proprietary code to third parties, risking unauthorized access and legal or business risks due to potential copyright, trademark, and vulnerability issues.

Innovation Solution

A code checking system analyzes user software code for deficiencies using obfuscated data structures, such as Bloom filters, without accessing the raw code, identifying issues like licenses and vulnerabilities by comparing obfuscated user code with reference data structures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If software code is sent to a third party for analysis, then deficiencies can be identified, but code confidentiality is compromised

Engineering Contradiction:
Improvedeficiency detection accuracyVSAvoidcode confidentiality
Core Design Contradiction:
Measurement precisionVSLoss of information

Solution Approach 1:

The system creates a copy of the software code and analyzes the copy instead of the original. A code representation is generated from the submitted code, and this representation is what gets stored and analyzed in the database, not the actual proprietary code itself. This allows deficiency detection while preserving code confidentiality.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces an intermediary code representation as a mediator between the submitted code and the analysis system. This representation serves as a proxy that contains the necessary information for deficiency detection without exposing the actual proprietary code. The intermediary structure enables analysis while maintaining a security barrier.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If comprehensive code analysis is performed, then all deficiencies are detected, but processing time increases

Engineering Contradiction:
Improvedeficiency detection completenessVSAvoidanalysis processing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-populating a database with code representations from various sources (open source repositories, vulnerability databases, license databases) before the actual analysis is needed. When code is submitted for analysis, the system can quickly query this pre-prepared database rather than performing comprehensive analysis from scratch, significantly reducing processing time while maintaining detection completeness.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If code is stored in a database for analysis, then deficiency checking is efficient, but security risks increase

Engineering Contradiction:
Improvecode analysis efficiencyVSAvoidsecurity vulnerability
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The system stores copies of code in the database rather than the actual proprietary code. The code representation stored in the database is a transformed version that enables efficient deficiency checking through database queries, but does not contain the sensitive proprietary information. This resolves the contradiction by enabling efficient analysis through database storage while eliminating security risks through the use of non-sensitive copies.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250225054A1Systems and methods for securely identifying deficiencies in software code
Publication Date: 2025.07.10 RAGHAVAN BARATH
  • US20250225054A1 patent drawing
  • US20250225054A1 patent drawing
  • US20250225054A1 patent drawing

AI summary

An exemplary method for securely identifying deficiencies in software code comprises: receiving, from a user device, a user query comprising obfuscated user software code data and a user-specified software code portion specification; obtaining, based on the user-specified software code portion specification, one or more obfuscated reference software code data structures constructed from reference software code associated with one or more predefined deficiencies; comparing the obfuscated user software code data with the one or more obfuscated reference software code data structures; if the obfuscated user software code data matches at least one of the obfuscated reference software code data structures, identifying the one or more predefined deficiencies in the obfuscated user software code data; and providing an indication of the identified one or more predefined deficiencies to the user device for flagging.