Secure Boot MAC Verification for Semiconductor Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing secure boot methods, such as Hash operations, require longer processing times as the program size increases, leading to prolonged boot times without a corresponding reduction in security levels.
Innovation Solution
A semiconductor device that acquires a public key and its corresponding secret key signature, performs signature verification before booting, calculates a determination value using device-specific information, and stores it, allowing for rapid boot by recalculating and verifying this value during the boot process without compromising security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If Hash operation is performed for program integrity verification at boot time, then security level is maintained, but processing time becomes long when program size is large
Solution Approach 1:
The patent performs Hash operation and signature verification in advance during program loading, before boot time. The verification result is stored and reused during boot, avoiding repeated computationally intensive operations. This preliminary action resolves the contradiction by maintaining security verification while eliminating time consumption during critical boot phase.
Solution Approach 2:
The patent divides the verification process into two independent stages: (1) program loading stage with full Hash and signature verification, and (2) boot stage with simplified verification using pre-computed values. This segmentation allows comprehensive security checking without impacting boot speed, as each stage performs only necessary verification operations.
2Reliability
If signature verification is performed before booting, then security is ensured, but additional processing steps increase boot complexity
Solution Approach 1:
The patent combines program loading and verification operations into a unified process. The Hash computation and signature verification are integrated with the program loading sequence, eliminating separate verification steps during boot. This merging reduces perceived complexity while maintaining security, as verification becomes an inherent part of the loading process rather than an additional step.
Data Source
AI summary
To shorten a processing time at boot time without lowering a security level, an acquiring unit acquires a public key, a signature generated with a secret key corresponding to the public key, and a program associated with the signature. A signature verification unit performs signature verification by using the public key and the signature acquired by the acquiring unit, before the program acquired by the acquiring unit is booted. A calculation unit calculates a first MAC value by using a device eigenvalue and stores the first MAC value, when the result of signature verification by the signature verification unit is appropriate. A boot unit calculates a second MAC value by using the device eigenvalue, compares the second MAC value and the stored first MAC value with each other to determine that the program is legitimate, and executes boot based on the determination result.


