Multi-Controller Boot Code Verification for Secure Activation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional boot code alteration detection methods in information processing apparatuses, such as image processing devices, fail to ensure secure activation when program codes for secondary controllers are altered, leading to reliability degradation.

Innovation Solution

An information processing apparatus comprising a main CPU, a secondary controller, and a verifier that checks the integrity of program codes stored in separate storage devices before execution, using public key encryption to verify the boot codes and ensure secure activation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If program code verification is performed for all controllers, then system security is improved, but device complexity increases

Engineering Contradiction:
Improvesystem securityVSAvoidverification system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A dedicated verifier component acts as an intermediary between storage devices and controllers. This intermediary handles all verification operations centrally, preventing direct execution of unverified code by any controller. The verifier mediates the trust relationship between storage and execution units, simplifying the overall architecture by concentrating verification logic in a single component rather than duplicating verification mechanisms across multiple controllers.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The verification system is segmented into distinct functional components: the verifier, storage devices, and controllers. Each component has a specific role - the verifier checks integrity, storage devices hold program codes, and controllers execute verified codes. This segmentation allows the verification function to be implemented independently and systematically, reducing complexity by clearly defining boundaries and responsibilities rather than embedding verification logic throughout the entire system.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11392701B2Information processing apparatus and method for controlling the same
Publication Date: 2022.07.19 CANON KK
  • US11392701B2 patent drawing
  • US11392701B2 patent drawing
  • US11392701B2 patent drawing

AI summary

According to the present invention, an information processing apparatus comprises a first controller that executes a first program code; a second controller that executes a second program code different from the first program code, and communication with the first controller; a storage device that stores the first program code to be executed by the first controller and the second program code to be executed by the second controller; and a verifier that verifies, before the first controller and the second controller execute respective program codes, the respective program codes, stored in the storage device.