Secure Boot Image Partitioning on System-on-Chip
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Embedded devices are vulnerable to security threats such as device loss, theft, data loss, cloning, reverse engineering, and denial of service due to the lack of effective security measures during the boot process and operation, particularly in the loading of images onto system-on-chips (SoCs).
Innovation Solution
A method for generating and loading image files onto SoCs that includes reading partition attributes to determine if encryption and authentication are required, verifying authenticity, and decrypting encrypted partitions, ensuring secure boot and operation by moving authenticated partitions to secure destinations and decrypting them as necessary.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If image loading is performed without authentication and decryption, then the boot process is simple and fast, but the device is vulnerable to cloning, reverse engineering, and unauthorized access
Solution Approach 1:
The image is divided into multiple partitions, each with independent authentication and encryption attributes. This allows selective security processing where only authenticated partitions are loaded, reducing overall complexity while maintaining security for critical sections.
Solution Approach 2:
Authentication and decryption operations are performed on image partitions before loading them into the SoC. By verifying authenticity and decrypting encrypted partitions in advance, the system ensures security without compromising the boot process, as unauthorized or corrupted images are rejected before execution.
2Reliability
If all partitions are authenticated and decrypted, then security is maximized, but processing time and computational resources increase
Solution Approach 1:
The system performs authentication and decryption only on partitions that require security processing, as indicated by their attributes. Not all partitions need to be authenticated or decrypted, allowing the system to balance security requirements with boot time constraints by applying security measures selectively rather than universally.
Data Source
AI summary
A method relating generally to loading a boot image is disclosed. In such a method, a header of a boot image file is read by boot code executed by a system-on-chip. It is determined whether the header read has an authentication certificate. If the header has the authentication certificate, authenticity of the header is verified with the first authentication certificate. It is determined whether the header is encrypted. If the header is encrypted, the header is decrypted.


