Software Signature Discovery via File Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software deployment and management systems lack an efficient method to determine and score software package signatures, which is crucial for tracking software usage, managing licenses, and identifying conflicts in networked environments.

Innovation Solution

A method and system that captures and scores software package signatures by comparing files on a clean computer system before and after installation, identifying files added or modified, and assigning scores based on their presence across multiple packages, with critical artifacts marked for accurate package identification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If software deployment is automated in network environments, then deployment efficiency is improved, but tracking and managing software usage becomes more difficult

Engineering Contradiction:
Improvedeployment efficiencyVSAvoidsoftware usage tracking
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The system automatically captures software signatures by comparing file listings before and after installation, then feeds this information back to the software asset management system. This feedback mechanism enables automated tracking of software usage, licensing status, and conflicts without manual intervention, resolving the contradiction between automated deployment and usage tracking.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system creates a copy of the software package identity through file comparison and hashing, storing this signature information in a database. This copying approach allows the system to track software usage across multiple computer systems without physically installing or manually recording each instance, maintaining both automation and tracking capabilities.

Inventive Principle:
Principle #26Copying

2Measurement precision

If manual software tracking is used, then accuracy of software identification is improved, but time consumption increases

Engineering Contradiction:
Improvesoftware identification accuracyVSAvoidtracking time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The software package itself provides the identification information through its own files and structure. The system automatically extracts signatures by comparing files before and after installation, eliminating the need for manual tracking while maintaining high accuracy. The software essentially tracks itself through its file system footprint.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system replaces manual mechanical tracking processes with automated digital file comparison and hashing mechanisms. By using cryptographic hashes and automated file listing comparison, the system achieves both high measurement precision for software identification and eliminates time consumption associated with manual tracking.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If software packages are modified and updated frequently, then software functionality is improved, but signature consistency and conflict identification become more difficult

Engineering Contradiction:
Improvesoftware update capabilityVSAvoidsignature consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system dynamically captures software signatures at the moment of installation or update by comparing file listings before and after the modification. This dynamic approach allows the system to adapt to frequent software updates while maintaining reliable signatures, as each signature reflects the actual state of the software at the time of capture rather than relying on static pre-defined signatures.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8966471B2Software signature discovery
Publication Date: 2015.02.24 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8966471B2 patent drawing
  • US8966471B2 patent drawing
  • US8966471B2 patent drawing

AI summary

In a method for determining and scoring signatures for a software package, a processor compares files on a clean computer system after installation of a software package to files on the clean computer system before the installation. The processor determines a signature of the software package. The signature includes files on the clean computer system after installation of the software package that were not present on the clean computer system before the installation.