Software Distribution Post-Processing Server

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software distribution systems often fail to ensure that software releases include necessary protection measures, leading to potential failures in downloads and exposure of software weaknesses, as producers may neglect to encrypt, sign, or obfuscate the software, resulting in unauthorized access and reverse-engineering.

Innovation Solution

A system and method that integrates a software distribution system with post-processing steps, where a system administrator defines configurations for software producers to perform operations like encryption, obfuscation, and signing on a post-processing server, ensuring that software releases are properly protected before distribution, and restricting access based on geographic and licensing criteria.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the software producer is responsible for protecting the software release through encryption, obfuscation, and signing before submission, then the software protection features should be included in the software release, but the producer may erroneously assume protections are included or the protections may be defective, resulting in failed downloads or exposure to cyber-criminals

Engineering Contradiction:
Improvesoftware protection reliabilityVSAvoidsoftware exposure to cyber-crime
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The system performs post-processing operations (encryption, obfuscation, signing) after the software producer submits the release but before it is made available for download. This preliminary action ensures protections are applied correctly without relying on the producer's assumptions about their own protection measures.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The software distribution system acts as an intermediary between the software producer and the customer. It receives the software release, applies necessary post-processing protections through a post-processing server, and then distributes the protected release to customers, thereby ensuring protection reliability independent of the producer's capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the software distribution system applies post-processing operations to all software releases, then software protection is ensured, but the system complexity increases due to integration of post-processing server and configuration management

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

Solution Approach 1:

The system is segmented into distinct functional components: a software distribution system for managing releases, a post-processing server for applying protections, and a configuration system for defining operations. This segmentation allows each component to be developed and maintained independently, managing overall system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The post-processing server provides universal protection capabilities that can be applied to any software release regardless of the producer or customer. The same infrastructure handles encryption, obfuscation, and signing for all releases, reducing the need for multiple specialized systems.

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

3Manufacturing precision

If the system implements centralized post-processing operations with configuration files defining software images and operations, then consistent protection is applied across all releases, but the time required to process and distribute software increases

Engineering Contradiction:
Improveprotection application consistencyVSAvoidsoftware distribution time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

Configuration files defining post-processing operations and software images are prepared in advance before the actual software release process. This preliminary configuration allows the post-processing server to efficiently apply protections without requiring complex real-time decision-making during distribution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The post-processing operations are integrated into the continuous software distribution workflow rather than being separate batch processes. The system continuously receives software releases, applies configured post-processing operations, and makes protected releases available for download without interrupting the overall distribution process.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20230393831A1Software distribution system and method
Publication Date: 2023.12.07 ARRIS ENTERPRISES LLC
  • US20230393831A1 patent drawing
  • US20230393831A1 patent drawing
  • US20230393831A1 patent drawing

AI summary

A method and apparatus for distributing a software release is disclosed. The method comprises accepting, in a software distribution system, a software download configuration from a software download system administrator, the software download configuration comprising: first information defining software post processing, the software post processing identifying: a software image to be included in the software release; and a post processing operation to be performed on the software image, the post processing operation associated with a post processing configuration specifying post processing operation parameters defining how the post processing operation is performed by the post processing server; and second information defining a restriction on distribution of the software release. The method further comprises submitting, to a post processing server, the software image for post processing according to the software download configuration to generate the software release; and providing the generated software release for download by the software consumer.