Feature-Based Software Licensing Authorization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software licensing management tools are insecure and inflexible, failing to effectively authorize and manage individual features of computer programs across single- and multi-user environments, leading to revenue losses and compliance issues.

Innovation Solution

A method and apparatus for authorizing computer programs using encrypted license data generated with a private key-public key pair, where a unique identifier associated with a product is used to specify authorized features, enabling secure and flexible feature activation based on product identification and usage conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If existing software licensing management tools are used, then software can be protected from piracy, but the tools are insecure and inflexible, failing to authorize individual features

Engineering Contradiction:
Improvesecurity of licensingVSAvoidflexibility to authorize individual features
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the software licensing system into distinct components: feature identification modules that separately identify each software feature, authorization modules that independently evaluate licensing conditions for each feature, and license data structures that contain individual feature identifiers. This segmentation enables flexible, secure authorization of individual features rather than treating software as a monolithic unit.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic licensing where the system can adaptively determine which features to authorize based on varying conditions such as user credentials, device characteristics, and usage contexts. The authorization process dynamically evaluates multiple factors and selectively activates features, providing both security through condition verification and flexibility through adaptive feature selection.

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If all features of a computer program are made accessible to licensed users, then user satisfaction is improved, but providers cannot realize additional revenue when new features are added

Engineering Contradiction:
Improveuser access to featuresVSAvoidrevenue generation capability
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the software feature set into individually licensable units, each with its own identifier and authorization conditions. This allows providers to selectively authorize specific features based on licensing agreements, enabling users to access authorized features while providers can charge separately for different feature sets, thus maintaining both user satisfaction and revenue opportunities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the licensing parameter from all-or-nothing access to granular feature-level access. By modifying the license data structure to include individual feature identifiers and authorization conditions, the system enables flexible control over which features are accessible, allowing providers to optimize revenue by charging for specific feature combinations while users gain access to precisely the features they are licensed to use.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If license data is encrypted to improve security, then unauthorized access is prevented, but obtaining and verifying the unique identifier becomes more complex

Engineering Contradiction:
Improvesecurity of license dataVSAvoidcomplexity of identifier verification
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-encrypting the license data including the unique identifier using cryptographic algorithms during the license generation phase. The encryption keys are securely distributed to authorized systems in advance. When verification is needed, the pre-established cryptographic relationships enable secure decryption and validation without requiring complex real-time computational processes, thus maintaining security while managing complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7765600B2Methods and apparatuses for authorizing features of a computer program for use with a product
Publication Date: 2010.07.27 GOOGLE TECHNOLOGY HOLDINGS LLC
  • US7765600B2 patent drawing
  • US7765600B2 patent drawing
  • US7765600B2 patent drawing

AI summary

A method for authorizing a computer program having a number of features for use with a product includes: receiving license data generated using a first key, the license data specifying a unique identifier associated with the product and specifying at least one feature authorized for use with the product; using a second key associated with the first key, obtaining the unique identifier from the license data; retrieving a product identifier from the product; determining whether the unique identifier corresponds to the product identifier; and based on the determination, authorizing use of the at least one feature with the product.