Dual-Memory Bootcode Synchronization for Falsification Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing information processing apparatuses face vulnerabilities when bootdata falsification is detected, leading to potential security risks due to changes in bootdata to a vulnerable status.

Innovation Solution

An electronic apparatus with a non-volatile memory device and a falsification detecting unit that compares bootcodes across two memory areas, rewriting them if they are not identical, ensuring secure bootcode integrity by maintaining a backup and updating only when necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the bootdata is changed to a status before falsification is detected, then the information processing apparatus can restore the bootdata to a previous state, but the bootdata may be changed to a vulnerable status which is not favorable for information security

Engineering Contradiction:
Improvebootdata integrityVSAvoidinformation security vulnerability
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent divides the memory into multiple memory areas, with at least one area storing the bootdata and another area storing a backup of the bootdata. This segmentation allows the system to maintain the original bootdata in one location while keeping a safe copy in another location, preventing the harmful effect of overwriting bootdata with vulnerable versions while still enabling restoration if needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a backup of the bootdata in advance before any potential falsification or vulnerable status change occurs. This preliminary action ensures that when falsification is detected, the system can immediately restore the bootdata from the pre-created backup, preventing the bootdata from entering a vulnerable status without needing to change it to a previous state.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the bootcode is rewritten from the first memory area to the second memory area, then the bootcode integrity can be maintained and updated, but the device complexity increases due to multiple memory areas and rewriting operations

Engineering Contradiction:
Improvebootcode integrityVSAvoidmemory area structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the memory into multiple areas with specific functions: a first memory area for storing the bootcode and a second memory area for storing a backup. This segmentation is simple and direct, avoiding complex memory management structures while still providing the necessary integrity protection through clear separation of concerns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses a simple copying mechanism where the bootcode is copied to a backup location in the second memory area. This copying approach is straightforward and does not require complex rewriting operations or sophisticated memory management, thus minimizing the increase in device complexity while maintaining bootcode integrity.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250356021A1Electronic apparatus
Publication Date: 2025.11.20 KYOCERA DOCUMENT SOLUTIONS INC
  • US20250356021A1 patent drawing
  • US20250356021A1 patent drawing

AI summary

An electronic apparatus includes a non-volatile memory device, a falsification detecting unit, and a bootcode rewriting unit. The non-volatile memory device includes a first memory area and a second memory area. The falsification detecting unit is configured to read a bootcode from the first memory area and determine whether the read bootcode is falsified or not. The bootcode rewriting unit is configured to rewrite a bootcode in the second memory area with the bootcode in the first memory area if it is determined that the read bootcode is not falsified and the bootcode in the first memory area and the bootcode in the second bootcode are not identical to each other.