Whitelist Integrity Verification for Software Execution Delay Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Whitelist type execution control techniques experience processing delays due to integrity verification at software startup, making them unsuitable for systems that cannot tolerate delays.

Innovation Solution

An information processing device that verifies software integrity at a timing independent of software execution start, generating an execution permission list of verified software, which is then referenced to permit or deny execution, thereby reducing startup delays and ensuring system safety.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If integrity verification is performed at software execution start, then system safety is ensured, but processing delay occurs

Engineering Contradiction:
Improvesystem safetyVSAvoidprocessing delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs integrity verification in advance by calculating hash values of software files and storing them in a whitelist before execution. When software is executed, the system only needs to compare the pre-calculated hash value with the whitelist entry, eliminating the need for time-consuming verification at startup. This preliminary action resolves the contradiction by ensuring safety through pre-verification while minimizing execution delay.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system proactively prevents potential security issues by verifying software integrity before execution and maintaining an execution permission list. By detecting and blocking unauthorized software in advance rather than reacting at execution time, the system ensures safety without causing delays during actual software operation.

Inventive Principle:
Principle #9Preliminary anti-action

2Reliability

If hash value calculation is performed at software execution start, then software integrity is verified, but calculation time increases startup delay

Engineering Contradiction:
Improvesoftware integrity verificationVSAvoidstartup delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent calculates and stores hash values of software files in advance in a whitelist database before execution. During software startup, the system retrieves the pre-stored hash value and performs a simple comparison operation instead of calculating the hash value again. This eliminates the time-consuming hash calculation from the startup process while maintaining integrity verification, thus resolving the contradiction between verification reliability and startup speed.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If whitelist verification is performed for each software execution, then execution security is maintained, but processing overhead increases

Engineering Contradiction:
Improveexecution securityVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent creates an execution permission list that copies and stores the whitelist data in a readily accessible format. During software execution, the system performs a simple lookup and comparison operation against this pre-prepared list rather than performing complex verification procedures. This copying approach maintains execution security through consistent verification while significantly reducing processing overhead and improving system productivity.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11132467B2Information processing device, information processing method, and computer program product
Publication Date: 2021.09.28 KK TOSHIBA
  • US11132467B2 patent drawing
  • US11132467B2 patent drawing
  • US11132467B2 patent drawing

AI summary

According to an embodiment, an information processing device includes a prior verifying unit, and an execution control unit. The prior verifying unit is configured to verify integrity of software registered in a whitelist at a timing which does not depend on an execution start of software and generate an execution permission list in which software which is successfully verified is registered as execution-permitted software. The execution control unit is configured to permit execution of the software if the software is registered in the execution permission list as the execution-permitted software when the execution start of the software is detected.