Software Pipeline Release Validation With Stage Signatures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software deployment systems lack a way to validate that a software release has successfully completed multiple development stages and has not been altered after deployment, posing security risks due to potential malicious changes.

Innovation Solution

A system generates digital signatures for data components generated during each development stage using a private key, stores them in a secure data structure like a private blockchain, and provides validation information to node devices to verify the integrity of the software release.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If digital signatures and secure data structures are implemented to validate software releases, then security and reliability are improved, but device complexity and manufacturing precision requirements increase

Engineering Contradiction:
Improvesoftware release validationVSAvoidvalidation system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The validation system is segmented into distinct components: a server that generates digital signatures for data components, a secure data structure (blockchain) for storage, and node devices for validation. This segmentation allows each component to be optimized independently and simplifies the overall system architecture while maintaining high reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A server acts as an intermediary between the development process and node devices, generating digital signatures that validate software releases. This intermediary component centralizes the complexity of validation while keeping node devices simple, resolving the contradiction between reliability and device complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If digital signatures are generated for each data component, then measurement precision of validation is improved, but loss of time during validation increases

Engineering Contradiction:
Improvevalidation accuracyVSAvoidvalidation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

Digital signatures are generated in advance during the development process itself, before the software is deployed to node devices. This preliminary action ensures that validation can be performed quickly and accurately without adding significant time delays, as the signatures are already ready for verification.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of re-validating the entire software, the system uses cryptographic copies (digital signatures) of critical data components. These signatures can be verified quickly and accurately without processing the full software again, thus maintaining measurement precision while minimizing time loss.

Inventive Principle:
Principle #26Copying

3Ease of manufacture

If the private key is made accessible to the server, then ease of manufacture of digital signatures is improved, but object-generated harmful factors increase due to potential key compromise

Engineering Contradiction:
Improvedigital signature generationVSAvoidsecurity vulnerability
Core Design Contradiction:
Ease of manufactureVSObject-generated harmful factors

Solution Approach 1:

The system uses a master key that can be regenerated if compromised, rather than relying on a single permanent private key. This approach treats security keys as disposable resources that can be rotated, making the system more resilient to key compromise while maintaining ease of signature generation during the key's valid period.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The private key functionality is extracted and centralized in the server, while node devices only store and verify public keys. This extraction concentrates the complexity and potential vulnerability in a controlled location, making the system easier to manage while limiting the spread of harmful factors if compromise occurs.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12417299B2Software pipeline and release validation
Publication Date: 2025.09.16 JFROG LTD
  • US12417299B2 patent drawing
  • US12417299B2 patent drawing
  • US12417299B2 patent drawing

AI summary

The present disclosure provides systems, methods, and computer readable storage devices for validating that a software release has successfully completed multiple development stages of a development process without alteration. To illustrate, as software (e.g., one or more files or artifacts) completes at least a portion of a development process including the development stages, data components are generated. Digital signatures are generated based on the data components and a private key, and the digital signatures are stored in a secure data structure, such as a blockchain or a tree structure. Upon receipt of the data components (e.g., as validation data of a software release) by a node device, the node device generates validation signatures based on the data components and a public key and compares the validation signatures to the digital signatures stored in the secure data structure to validate the software before processing the software.