Cryptographic Asset Mapping for Language-Independent Source Code Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems struggle to identify and manage cryptographic assets in source code across different programming languages efficiently, leading to vulnerabilities and inefficiencies in cryptographic agility.
Innovation Solution
A computing tool and method that generates a cryptographic bill of materials (CBOM) by analyzing source code using a cryptographic asset knowledge base, identifying and compiling cryptographic assets independently of programming languages, and generating a report to inform organizations about their cryptographic assets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If existing systems are used to identify cryptographic assets in source code, then programming language specific tools are required, but this increases device complexity and reduces adaptability across different programming languages
Solution Approach 1:
The patent creates a universal cryptographic asset identification system that can analyze source code across multiple programming languages (Java, C, C++, C#, Python, etc.) using a single platform. The system uses language-agnostic representation formats (JSON, XML) and a standardized cryptographic asset model that works independently of the source programming language, enabling one system to serve multiple language analysis functions.
Solution Approach 2:
The patent introduces an intermediary layer consisting of language-independent representation formats (JSON, XML) and a standardized cryptographic asset model that mediates between language-specific source code and the analysis engine. This intermediary abstraction layer allows the system to process different programming languages without requiring language-specific tooling for each language.
2Productivity
If manual identification of cryptographic assets is performed, then precision can be maintained, but productivity and speed of identification are significantly reduced
Solution Approach 1:
The patent implements automated static analysis that enables the system to self-identify cryptographic assets in source code without requiring manual intervention. The system automatically parses source code, identifies cryptographic operations, extracts asset metadata, and generates cryptographic bills of materials autonomously, dramatically improving productivity while maintaining precision through systematic analysis rules.
Solution Approach 2:
The patent replaces manual mechanical processes of cryptographic asset identification with automated computational analysis. The system uses programmatic static analysis, pattern matching, and automated metadata extraction to substitute human analysts, thereby increasing identification speed while maintaining consistency and precision through rule-based analysis.
3Reliability
If cryptographic assets are not systematically managed, then ease of operation is maintained, but security vulnerabilities increase and cryptographic agility is reduced
Solution Approach 1:
The patent performs preliminary identification and documentation of cryptographic assets by generating cryptographic bills of materials that inventory all cryptographic operations, libraries, and configurations in the source code before deployment or security audits. This advance documentation enables organizations to proactively assess security compliance, identify vulnerabilities, and plan cryptographic updates before they become critical issues.
Solution Approach 2:
The patent segments cryptographic asset management into distinct components: identification of cryptographic operations, extraction of asset metadata, classification of cryptographic functions, and generation of structured bills of materials. This segmentation organizes the complex management task into manageable parts, improving security compliance while making the system complexity more controllable and systematic.
Data Source
AI summary
Mechanisms are provided for generating a cryptographic asset bill of materials of a source code. The mechanisms generate flow graph of the source code and execute a parsing and analyzing the source code based on a cryptographic asset knowledge base to identify an initial set of cryptographic artifacts referenced in the source code. The mechanisms execute, for each cryptographic asset in the initial set of cryptographic artifacts, a flow graph analysis to identify one or more dependent cryptographic artifacts to form sets of related cryptographic artifacts. In addition, the mechanisms generate, for each set of related cryptographic artifacts, a cryptographic asset, compile the generated cryptographic assets into a cryptographic bill of materials, and generate and output a report of the cryptographic bill of materials.


