Code-Specific Digital Certificates for Granular Revocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current digital certificates lack the ability to convey specific information about the code they sign, leading to unnecessary revocation of all files signed with a single certificate, and offer limited control over certificate management and revocation.

Innovation Solution

Generating code-specific digital certificates that include metadata such as application name, version number, and content rating, allowing for granular control over validity periods and revocation, enabling software publishers and certificate authorities to manage certificates more effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single digital certificate is used to sign all files from a software publisher, then the certificate management process is simplified, but revocation of a single problematic file requires revoking all certificates from that publisher

Engineering Contradiction:
Improvecertificate management complexityVSAvoidgranular control over certificate revocation
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent segments the certificate system by incorporating file-specific metadata (such as file hash, application name, version) into the digital certificate. This creates granular certificates that are tied to specific files rather than a publisher-wide certificate, allowing individual file revocation without affecting other files. The metadata field in the certificate structure is divided to include both publisher identity and file-specific identifiers.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If traditional digital certificates are used, then the authentication process is simple, but no useful information about the signed code is conveyed beyond the entity identity

Engineering Contradiction:
Improveauthentication process simplicityVSAvoidcode-specific information conveyance
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent merges authentication functionality with information conveyance by integrating metadata about the signed code directly into the digital certificate structure. The certificate now contains both the entity identification and code-specific information (file hash, application name, version, content rating), allowing recipients to verify authenticity while simultaneously obtaining useful information about the code without requiring separate metadata files.

Inventive Principle:
Principle #5Merging (Combining)

3Loss of information

If code-specific metadata is included in digital certificates, then granular control and information conveyance are improved, but the certificate structure and generation process become more complex

Engineering Contradiction:
Improvecode-specific information conveyanceVSAvoidcertificate structure complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent creates a universal certificate structure that can accommodate both traditional authentication needs and code-specific information requirements. The extended metadata field is designed to be flexible and adaptable, allowing it to contain various types of code-specific information while maintaining compatibility with existing digital certificate verification processes. This multi-functional design allows the same certificate structure to serve multiple purposes without requiring entirely separate systems.

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

Data Source

PatentUS8572368B1Systems and methods for generating code-specific code-signing certificates containing extended metadata
Publication Date: 2013.10.29 DIGICERT INC
  • US8572368B1 patent drawing
  • US8572368B1 patent drawing
  • US8572368B1 patent drawing

AI summary

A computer-implemented method for generating code-specific code-signing certificates may include (1) receiving a code-signing request from a software publisher to sign code, the code-signing request including both information that uniquely identifies the code and metadata that identifies at least one characteristic of the code, (2) signing the code by generating a unique, code-specific digital certificate for the code that is valid only for the code in question and includes at least a portion of the metadata contained within the code-signing request, and then (3) providing the code-specific digital certificate to the software publisher to enable the software publisher to attest that the code originated from the software publisher and has not been altered since leaving the software publisher's possession. Various additional methods, systems, and encoded computer-readable media are also disclosed.