Secure Software Distribution via Asymmetric Encryption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The distribution of software applications to on-premises computational instances is vulnerable to undesired modifications and unauthorized distribution, as the installation process may involve physical transportation of files, which can be modified or shared improperly, leading to security concerns and unintended installations.

Innovation Solution

A secure software distribution process using asymmetric cryptographic keys, where a pair of keys is generated, with the public key used for encryption and the private key stored by the on-premises instance, ensuring that only the intended computational instance can decrypt and install the software application, thus preventing unauthorized access and modifications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If physical transportation of installation files is used to distribute software to on-premises instances, then the software can be installed on remote computational instances, but the software may be modified or shared improperly during transport, leading to security vulnerabilities

Engineering Contradiction:
Improvesoftware distribution capabilityVSAvoidsoftware integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies preliminary action by encrypting the software application with a public key before distribution. This encryption is performed in advance during the build process, creating a secured installation file that maintains its integrity throughout physical transport. The encryption prevents any modification during transit, as the software remains in an encrypted state until decrypted by the intended recipient using the corresponding private key.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses cryptographic keys as an intermediary mechanism to secure the software distribution process. The public key acts as a mediator that encrypts the software, while the private key serves as the intermediary for decryption and verification. This intermediary cryptographic layer protects the software from unauthorized modification or sharing during physical transportation, allowing secure distribution without requiring continuous network connectivity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If cryptographic encryption is applied to software applications, then security and integrity are improved, but the complexity of the distribution process increases

Engineering Contradiction:
Improvesoftware securityVSAvoiddistribution process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent reduces distribution complexity by performing the encryption action preliminarily during the software build process. The installation file is encrypted with the public key before distribution, eliminating the need for complex runtime encryption operations. This preliminary encryption approach simplifies the distribution process, as the encrypted file can be freely transported without requiring additional security infrastructure or complex decryption protocols at the distribution stage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements self-service by enabling the on-premises computational instance to autonomously decrypt and verify the software using its stored private key. The system automatically performs the decryption and verification operations without requiring manual intervention or complex administrative procedures. This self-service capability reduces the operational complexity of the distribution process, as the cryptographic verification happens automatically during installation.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11343079B2Secure application deployment
Publication Date: 2022.05.24 SERVICENOW INC
  • US11343079B2 patent drawing
  • US11343079B2 patent drawing
  • US11343079B2 patent drawing

AI summary

A computing system includes persistent storage configured to store a plurality of software applications and a distribution application configured to perform operations. The operations include obtaining a first cryptographic key of a pair of asymmetric cryptographic keys, where a second cryptographic key of the pair is stored by an on-premises computational instance, obtaining a selection of a software application from the plurality of software applications for installation, and obtaining an identifier associated with the on-premises computational instance. The operations additionally include encrypting the software application by way of a symmetric encryption algorithm and using a third cryptographic key, and encrypting the third cryptographic key by way of an asymmetric encryption algorithm and using the first cryptographic key. The operations further include generating an installation file that includes the software application as encrypted, the third cryptographic key as encrypted, and a representation of the identifier.