Binary Code Similarity Analysis for Software Supply Chain Risk

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The transformation from source code to binary files introduces security risks that are difficult to identify, exacerbated by software complexity and interdependencies, with compromised firmware undermining all other security layers.

Innovation Solution

A machine learning-based approach that unpacks software packages into components, extracts features, and uses ensemble models to score supply chain risks, including open-source software control, vulnerability, license, development, and support categories, generating reports or dashboards for identified risks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If machine learning models are used to analyze binary code, then security risk detection capability is improved, but computational complexity and processing time increase

Engineering Contradiction:
Improvesecurity risk detection capabilityVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system segments binary code analysis into distinct processing stages: unpacking software packages into components, extracting features from components, generating embeddings, and analyzing with specialized machine learning models. This segmentation allows complex security analysis to be broken into manageable steps that can be optimized independently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediate representations (embeddings) as mediators between binary code and machine learning models. These embeddings transform raw binary features into a standardized format that preserves semantic meaning while reducing computational complexity for the subsequent analysis stages.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If comprehensive feature extraction is performed on binary components, then detection accuracy is improved, but processing speed decreases

Engineering Contradiction:
Improvedetection accuracyVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system performs preliminary feature extraction and embedding generation on binary components before the actual security analysis. By pre-processing and organizing features into embeddings in advance, the system reduces the computational burden during the critical detection phase, thereby improving processing speed without sacrificing detection accuracy.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If multiple machine learning models are used to score different risk categories, then comprehensive risk assessment is improved, but system complexity increases

Engineering Contradiction:
Improvecomprehensive risk assessmentVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent employs a unified machine learning framework that handles multiple risk categories (open-source software control, vulnerability, license, development, and support) through a common architecture. This universal approach allows the system to assess comprehensive risks while avoiding the complexity of entirely separate analysis systems for each risk type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Ease of operation

If binary code is analyzed without source code access, then security vulnerabilities are detected, but analysis precision is reduced

Engineering Contradiction:
Improveoperational flexibilityVSAvoidanalysis precision
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The system creates detailed embeddings as copies or representations of the binary code's semantic structure. These embeddings capture essential features and relationships from the binary code, enabling comprehensive analysis without requiring access to the original source code, thus maintaining operational flexibility while preserving analysis precision.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12591830B2Machine learning approach to identify software supply chain vulnerabilities from binary code similarity detection
Publication Date: 2026.03.31 BINARLY INC
  • US12591830B2 patent drawing
  • US12591830B2 patent drawing
  • US12591830B2 patent drawing

AI summary

A software package is received and unpacked into a plurality of components. Features are extracted from each component which are indicative (i.e., useful, etc.) in determining whether such component presents a software supply chain risk. The extracted features are consumed by one or more machine learning models to determine a level of supply chain risk associated with the component. This determined level of supply chain risk can be provided to a consuming application or process. Component identities can also be identified using machine learning or other similarity analyses. In some cases, embeddings are used to characterize risk and/or provide component identities. Related apparatus, systems, techniques and articles are also described.