Source Code Segmentation for Secure Third-Party Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for sharing source code with third-party vendors lack effective security measures, as they rely heavily on legal agreements and network access controls, which can lead to potential leaks and unauthorized use of proprietary knowledge.

Innovation Solution

A method and system for secure sharing of source code that involves identifying a first set of source code associated with defective features and a second set of source code associated with non-defective features, generating a checkout ID with access parameters and an expiration time, and using encryption and obfuscation methodologies to create a secured second set of source code, which is then provided to third-party vendors for debugging purposes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the entire source code is shared with third-party vendors for debugging, then the vendors can effectively debug defective features, but the security and integrity of proprietary knowledge is compromised

Engineering Contradiction:
Improvedebugging capabilityVSAvoidsource code security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The source code is segmented into two distinct sets: a first set containing only the defective feature and its immediate dependencies, and a second set containing the remaining non-defective features. This segmentation allows vendors to access minimal necessary code for debugging while protecting the rest of the proprietary codebase.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different security treatments are applied to different portions of the source code. The first set of source code (defective feature) is provided in plain text for debugging, while the second set (non-defective features) is encrypted or obfuscated, creating local variations in security quality across the codebase.

Inventive Principle:
Principle #3Local quality

2Reliability

If legal agreements like NDA are used to protect source code, then the proprietary knowledge is protected legally, but the security mechanism is insufficient against determined breaches

Engineering Contradiction:
Improvelegal protectionVSAvoidsource code leakage risk
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

Security measures are taken before the source code is shared with vendors. The system pre-identifies the defective feature, segments the source code accordingly, and applies encryption/obfuscation to the non-defective portions in advance, so that even if vendors attempt breaches, the protected code remains unintelligible.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

An intermediary security system is introduced between the product owner and the vendor. This system automatically segments, encrypts, and manages the source code distribution, replacing direct trust-based sharing with a controlled intermediary layer that enforces security policies.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If vendors connect to the product owner's network via VPN to access source code, then the vendors can access the source code securely, but the network security infrastructure becomes a single point of failure

Engineering Contradiction:
Improvenetwork securityVSAvoidnetwork infrastructure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The source code is extracted from the product owner's network environment and selectively distributed to vendors outside the network. Instead of requiring vendors to connect to the internal network, the necessary code segments are extracted, secured, and provided through external channels, eliminating the need for complex VPN infrastructure.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If the source code is encrypted or obfuscated, then the security of proprietary knowledge is improved, but the usability for debugging by third-party vendors is reduced

Engineering Contradiction:
Improvesource code protectionVSAvoiddebugging usability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The source code is divided into a first set (defective feature) that remains unencrypted for debugging usability, and a second set (non-defective features) that is encrypted or obfuscated for security. This segmentation resolves the contradiction by applying encryption only where necessary for protection while maintaining readability where debugging is required.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10574632B2System and method for secure sharing of a source code
Publication Date: 2020.02.25 HCL TECH LTD
  • US10574632B2 patent drawing
  • US10574632B2 patent drawing
  • US10574632B2 patent drawing

AI summary

The system and method for secure sharing of a source code is disclosed. The method comprises. The method comprises receiving a source code associated with an application, and a defect identification number associated with a defective feature in the application. The method comprises identifying a defective feature of an application and non-defective features of the application based on a defect investigation methodology. The method comprises generating a checkout ID associated with the application and further generates a secured second set of source code based on one of an encryption methodology and an obfuscating methodology. The method further comprises providing a secured source code to a third party for debugging the defective feature in the application.