Encrypted Software Update Distribution Reducing Attack Window

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software updates often reveal vulnerabilities to attackers before they can be distributed widely, creating a window of time where many machines remain unprotected, as existing distribution methods are limited by bandwidth and resources.

Innovation Solution

Distributing updates in encrypted form and releasing the decryption key only after certain conditions are met, such as widespread distribution or successful testing, ensures that a large number of machines are protected quickly and simultaneously.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If updates are distributed in unencrypted form, then machines can install updates quickly, but attackers can reverse engineer the update to exploit the vulnerability before widespread protection is achieved

Engineering Contradiction:
Improveupdate installation speedVSAvoidvulnerability exploitation risk
Core Design Contradiction:
SpeedVSObject-affected harmful factors

Solution Approach 1:

The update distribution process is segmented into two separate components: the encrypted update payload and the decryption key. The update file is distributed first in encrypted form to many machines simultaneously, then the decryption key is distributed separately after a predetermined time delay or when distribution thresholds are met. This segmentation allows the update content to be widely distributed without exposing the vulnerability, while the key distribution is controlled to prevent premature exploitation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The update payload is prepared and distributed in encrypted form before the decryption key is made available. By performing the distribution action in advance with the update already encrypted, the system ensures that machines receive the protective update content beforehand, but cannot install or exploit it until the key is released, thereby controlling the timing of vulnerability exposure and protection activation.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If updates are distributed to all machines simultaneously, then all machines are protected at the same time, but insufficient bandwidth and physical resources prevent this from being achieved

Engineering Contradiction:
Improvewidespread protection coverageVSAvoiddistribution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The update distribution is divided into two phases: Phase 1 distributes the encrypted update payload to all target machines using available bandwidth resources, and Phase 2 distributes the small decryption key to enable installation. This segmentation allows the large update files to be distributed as widely as possible simultaneously, while the subsequent key distribution is lightweight and can be completed quickly across all machines, achieving both widespread coverage and high effective distribution speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Encryption serves as an intermediary mechanism that decouples the distribution of update content from the installation capability. The encrypted update can be distributed to all machines regardless of bandwidth constraints, and the decryption key acts as a gatekeeper that enables simultaneous installation across all receiving machines once distributed, thereby overcoming bandwidth limitations while maintaining the goal of simultaneous protection.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Object-affected harmful factors

If the update is distributed in encrypted form, then the vulnerability remains hidden from attackers, but the decryption key must be securely managed and distributed

Engineering Contradiction:
Improvevulnerability exposureVSAvoidkey management complexity
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

The decryption key is extracted and separated from the update payload, allowing independent distribution and management of the key. The update file is distributed in encrypted form without the key, and the key is distributed separately through a controlled process. This extraction simplifies the overall system by allowing the update content to be widely distributed in a secure encrypted state while the key management process is handled as a separate, controlled operation with predetermined release conditions.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS7876902B2Distribution of encrypted software update to reduce attack window
Publication Date: 2011.01.25 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7876902B2 patent drawing
  • US7876902B2 patent drawing
  • US7876902B2 patent drawing

AI summary

Software updates remedy vulnerabilities in a computer program that has been distributed and installed on a plurality of computers. The software updates are distributed in encrypted form, and then, after the encrypted update has been delivered to a sufficient number of machines, the decryption key for the update is delivered. Since the key is relatively small, it can be distributed to a large number of machines very quickly, thereby reducing the amount of time between when the update is first known to the public, and the time at which all or most machines have installed the update to protect against the vulnerability.