Container Image Layer Analysis and Dependency Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing container image management platforms, such as Docker, lack verification mechanisms for image content and do not allow users to easily extract specific components or apply patches without rebuilding images from scratch, leading to inefficiencies and potential security risks due to poor tagging and limited information about software and malware presence.

Innovation Solution

A method for software identification, dependency analysis, and manipulation of file system layers in container images, enabling users to extract, modify, and visualize layers, remove unwanted components, and insert new ones, while ensuring dependency integrity and detecting malware and vulnerabilities offline.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If users trust the developer's name and description for image content, then image download and usage is simplified, but security verification capability deteriorates

Engineering Contradiction:
Improveimage download processVSAvoidsecurity verification capability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system performs preliminary actions by extracting and analyzing image layers, identifying software components, and generating verification reports before the user downloads or uses the image. This allows security verification to be completed in advance, maintaining both ease of operation and reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary verification system that acts as a mediator between the image developer and the user. This intermediary analyzes the image content, identifies software components, and provides verification information, enabling security verification without complicating the user's download process.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If users rebuild images from scratch to extract specific components, then component selection flexibility is improved, but time consumption and complexity increase

Engineering Contradiction:
Improvecomponent selection flexibilityVSAvoidimage creation time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the image into multiple layers and identifies software components within each layer. This segmentation allows users to selectively extract specific components or layers without rebuilding the entire image from scratch, significantly reducing time consumption while maintaining component selection flexibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary analysis of image layers and software components before the user needs to extract anything. By pre-identifying and organizing components, the system enables rapid extraction of selected components without requiring users to rebuild images from scratch.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If users apply patches as new layers, then image integrity is maintained, but image size and complexity increase

Engineering Contradiction:
Improveimage integrityVSAvoidimage layer complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the patching operation from the traditional approach of creating new layers. By identifying and manipulating specific layers and their software components, the system allows patches to be applied more efficiently, maintaining image integrity while potentially reducing the number of layers needed.

Inventive Principle:
Principle #2Taking out (Extraction)

4Measurement precision

If complete images are downloaded for verification, then verification accuracy is improved, but network bandwidth consumption increases

Engineering Contradiction:
Improveverification accuracyVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent extracts and analyzes only the necessary image layers and software components for verification purposes, rather than requiring complete image downloads. This selective extraction maintains verification accuracy by focusing on critical components while significantly reducing network bandwidth consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system performs partial verification by analyzing specific layers and software components that are most critical for security verification, rather than verifying the entire image. This partial action approach maintains sufficient verification accuracy while reducing the resources required.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10169347B2Layer identification and dependency analysis for management of images
Publication Date: 2019.01.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10169347B2 patent drawing
  • US10169347B2 patent drawing
  • US10169347B2 patent drawing

AI summary

Methods, systems, and computer program products for software identification, dependency analysis, and manipulation of file system layers of container images are provided herein. A computer-implemented method includes extracting multiple layer files from an input image; identifying software components in each of the extracted layer files; manipulating the input image based on said identifying and user-defined parameters, wherein said manipulating comprises (i) selecting a sub-set of the layer files for retention, (ii) removing a sub-set of the layer files, and (iii) modifying one or more of the layer files selected for retention and/or inserting one or more new layer files in place of one or more of the removed layer files; and outputting a modified version of the input image that includes the sub-set of the multiple layer files selected for retention and any new layer files inserted in place of removed layer files.