Embedding Ancillary Data in Digitally Signed Executables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing digital distribution systems face inefficiencies in creating and managing different versions of software products for various distribution networks, as modifying ancillary distribution-related information in digitally signed executables is difficult without invalidating the digital signature, making it challenging to track distribution channels and insert ancillary information.

Innovation Solution

A computer-implemented system and method that embeds and authenticates ancillary information in digitally signed content by modifying the digital signature size to include additional data without invalidating the signature, allowing distribution-related information to be stored in unused portions of the executable file, enabling efficient distribution across multiple networks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If ancillary distribution information is embedded in digitally signed executables, then distribution channel tracking capability is improved, but the digital signature validity is compromised

Engineering Contradiction:
Improvedistribution channel tracking capabilityVSAvoiddigital signature validity
Core Design Contradiction:
Loss of informationVSReliability

Solution Approach 1:

The executable file is divided into authenticated sections (code, resources) and unauthenticated sections (signature directory, CRC block). Ancillary distribution information is embedded in the unauthenticated sections, specifically in the signature directory or CRC block, allowing information storage without affecting the digital signature validation of the authenticated sections.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses the signature directory and CRC block as intermediary storage locations within the executable file structure. These sections serve as mediators that can hold ancillary information while the digital signature continues to protect the core executable code, effectively separating the information storage function from the security function.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If multiple versions of software are created for different distribution networks, then distribution network tracking is improved, but device complexity and manufacturing cost increase

Engineering Contradiction:
Improvedistribution network trackingVSAvoidsoftware version management complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

A single executable file structure is designed to serve multiple distribution networks by incorporating variable-length signature directories and CRC blocks that can accommodate different distribution information. This universal structure eliminates the need to create separate executable versions for each distribution network while maintaining the ability to track and compensate different distribution channels.

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

Solution Approach 2:

The patent employs variable-length fields in the signature directory and CRC block to adapt the same executable structure to different distribution networks. By changing the length and content parameters of these sections, the system can encode distribution network-specific information without altering the core executable code or creating multiple file versions.

Inventive Principle:
Principle #35Parameter changes

3Loss of information

If ancillary information is inserted into the executable, then distribution tracking is improved, but the executable integrity is compromised

Engineering Contradiction:
Improvedistribution tracking informationVSAvoidexecutable integrity
Core Design Contradiction:
Loss of informationVSStability of the object's composition

Solution Approach 1:

The executable is segmented into integrity-critical sections (code, resources) and information-storage sections (signature directory, CRC block). The digital signature covers only the integrity-critical sections, while ancillary distribution information is stored in the separate storage sections, maintaining executable integrity while enabling distribution tracking.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the information storage function from the core executable code by utilizing the signature directory and CRC block as separate storage areas. This extraction allows distribution tracking information to be stored without being included in the digital signature verification process, thus preserving executable integrity.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS8892894B2Computer-implemented method and system for embedding and authenticating ancillary information in digitally signed content
Publication Date: 2014.11.18 ADEIA SOLUTIONS LLC
  • US8892894B2 patent drawing
  • US8892894B2 patent drawing
  • US8892894B2 patent drawing

AI summary

A computer-implemented system and method for embedding and authenticating ancillary information in digitally signed content are disclosed. The method and system include: loading digital content containing a digitally signed portion into memory for processing; identifying an existing digital signature block and an existing digital signature size block in a digitally signed file header of the digitally signed portion; obtaining a digital signature size value from the digital signature size block, the digital signature size value corresponding to the size of the digital signature block plus the length of an ancillary data block plus a pre-determined pad; authenticating the integrity of the digitally signed portion using the digital signature while processing the digital content; unwrapping a purchase mechanism built into as wrapper associated with the digital content; and extracting from the ancillary data block data referenced by instructions of the purchase mechanism, the extracting being performed without invalidating the digital signature.