Source Code Segmentation for Secure Third-Party Debugging
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
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
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.
Data Source
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.


