Open Source Library Ratings for Transitive Vulnerability Assessment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing security rating systems for open source libraries do not consider vulnerabilities of dependent libraries, leading to potential security risks in software projects.

Innovation Solution

Generate open source library ratings based on dependencies, vulnerabilities, age, popularity, and history, using a combination of scores to evaluate the security of a specific library version and prevent insecure libraries from being added to software projects.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If existing security rating systems only consider direct vulnerabilities of a library, then the rating process is simple and fast, but the security assessment is incomplete and may miss transitive vulnerabilities through dependencies

Engineering Contradiction:
Improvesecurity assessment completenessVSAvoidrating system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a nested rating structure where each library's security rating is composed of multiple component ratings: direct vulnerability rating, dependency rating, and transitive dependency rating. This nested approach allows the system to evaluate security at multiple levels (direct dependencies, indirect dependencies, and transitive dependencies) without creating a single monolithic complex system. Each nested level can be calculated independently using the same scoring methodology, maintaining simplicity while achieving comprehensive security assessment.

Inventive Principle:
Principle #7Nested doll (Nesting)

2Reliability

If the system considers all dependency levels for security ratings, then security assessment becomes more thorough, but the rating calculation time increases significantly

Engineering Contradiction:
Improvesecurity rating accuracyVSAvoidrating calculation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-calculating and storing security ratings for libraries at different dependency levels during the library resolution process. When a vulnerability is detected in a direct dependency, the system proactively retrieves and applies pre-computed ratings for transitive dependencies rather than calculating them in real-time. This preliminary computation approach significantly reduces the time required for complete security assessment while maintaining comprehensive coverage of all dependency levels.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If developers manually review each library dependency for security issues, then they can assess security thoroughly, but development time increases and productivity decreases

Engineering Contradiction:
Improvesecurity review thoroughnessVSAvoiddevelopment speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements self-service by enabling the dependency resolution system to automatically perform security assessments as an inherent part of the library resolution process. When a vulnerability is detected in a direct dependency, the system automatically retrieves security information for transitive dependencies and applies appropriate ratings without requiring developer intervention. This automation maintains thorough security review while completely eliminating the manual review time that would otherwise reduce development productivity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12373583B2Open source library security rating
Publication Date: 2025.07.29 SAP SE
  • US12373583B2 patent drawing
  • US12373583B2 patent drawing
  • US12373583B2 patent drawing

AI summary

An open source library rating is generated for an open source library based on dependencies of the library, vulnerabilities of the library, an age of the library, a popularity of the library, a history of the library, or any suitable combination thereof. The rating of a specific version of a library may be generated based on a base score for all versions of the library and a version score for the specific version of the library. An authorization system receives a request from a developer to add a library to a software application. In response, the authorization system accesses a rating for the library. Based on the rating, the authorization system approves the request, denies the request, or recommends an alternative library.