Code Unit Validation for Secure Boot Time Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing length of binary codes during the booting process of image processing apparatuses delays the booting time due to the need for security checks during secure booting.
Innovation Solution
An image processing apparatus with a storage, RAM, and a storage controller that divides data into units of code, performs validation using a preset validation code, and loads validated units of code to RAM for execution, allowing for efficient secure booting by validating and loading only the necessary code units.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If secure booting is performed with security checks on binary code, then security is improved, but booting time is delayed
Solution Approach 1:
The binary code is divided into multiple units, each with its own validation code. The storage controller performs validation on individual code units as they are loaded, rather than validating the entire binary code at once. This segmentation allows security checks to be distributed throughout the booting process, reducing the peak time loss while maintaining security.
Solution Approach 2:
Validation codes are pre-generated and stored alongside the binary code units. During booting, the storage controller performs validation checks as each code unit is loaded from storage to RAM, rather than waiting until the entire binary code is loaded. This preliminary validation approach prevents delays caused by validating large amounts of data at a single point in time.
2Speed
If the entire binary code is loaded to RAM before execution, then execution speed is improved, but memory usage increases and security validation time increases
Solution Approach 1:
The binary code is divided into multiple units that are loaded and validated individually. The storage controller loads code units from storage to RAM in segments, performing validation on each unit as it is loaded. This approach maintains execution speed by keeping validated code units in RAM for quick access while reducing validation time through distributed validation across multiple smaller units.
Solution Approach 2:
The validation process continues continuously as code units are loaded from storage to RAM, rather than pausing to validate all code at once. The storage controller performs validation checks in parallel with the loading process, ensuring that validated code units are immediately available for execution without interrupting the overall booting flow.
Data Source
AI summary
An image processing apparatus and control method are provided. An image processing apparatus including: a storage configured to store data which is divided into a plurality of units of code; a random access memory (RAM) configured to be loaded with the data; a central processing unit (CPU) configured to execute the data; and a storage controller configured to read a requested unit of code from the storage in response to receiving a request from the CPU for the unit of code to be currently executed, and load the read unit of code to the RAM so that the unit of code can be processed by the CPU, wherein the storage controller performs validation with regard to the unit of code when reading the unit of code from the storage, and loads the unit of code, when the validation passes, to the RAM.


