Dual Controller Firmware Integrity Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Electronic devices face issues with firmware and BIOS integrity, as they can be manipulated or damaged, leading to system failures during booting. Existing solutions that merge controllers to verify integrity can result in system efficiency deterioration due to excessive firmware.
Innovation Solution
An electronic device is designed with a first controller, a first memory storing BIOS and firmware, a second memory storing corresponding backup firmware and BIOS, and a second controller that compares the firmware and BIOS during power-on. The second controller turns on the first controller based on the comparison result, ensuring the system boots only with intact firmware and BIOS.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware and BIOS are stored in a single memory without verification, then device complexity is reduced, but reliability deteriorates due to potential manipulation or damage
Solution Approach 1:
A second controller is introduced as an intermediary verification component that compares firmware and BIOS against stored hash values before allowing the first controller to execute them. This mediator approach ensures reliability without requiring the main controller to perform complex verification operations, thus managing device complexity effectively.
Solution Approach 2:
Hash values of firmware and BIOS are pre-calculated and stored in memory during manufacturing or initial setup. This preliminary action enables rapid verification during boot operations without requiring complex real-time computation, maintaining both reliability and acceptable device complexity.
2Reliability
If a second controller is added to verify firmware and BIOS, then reliability is improved, but device complexity increases
Solution Approach 1:
The second controller serves as a dedicated verification intermediary that handles security checks, allowing the main controller to focus on system operations. This separation of concerns improves reliability while keeping the added complexity localized to a specialized verification component.
Solution Approach 2:
The second controller uses hash value copying and comparison instead of full firmware verification. By working with compact hash representations rather than complete firmware images, the verification process achieves high reliability with minimal additional computational complexity.
3Reliability
If firmware verification is performed during power-on, then reliability is improved, but productivity decreases due to extended boot time
Solution Approach 1:
Hash values are pre-computed and stored during manufacturing or initial system setup. During power-on verification, the system only needs to compute hashes of current firmware and compare them against stored values, rather than performing full firmware analysis. This preliminary preparation significantly reduces boot time while maintaining verification reliability.
Solution Approach 2:
The verification process uses hash value copying and comparison instead of examining complete firmware images. This approach reduces the data processing requirement from megabytes of firmware code to just a few dozen bytes of hash values, dramatically speeding up the verification process while ensuring integrity.
Data Source
AI summary
An electronic device is provided. The electronic device includes a first controller, a first memory configured to store a first basic input output system (BIOS) and first firmware for controlling the first controller and functionally connected to the first controller, a second memory configured to store second firmware corresponding to the first firmware and a second BIOS corresponding to the first BIOS, and a second controller functionally connected to the first memory, the second memory, and the first controller, wherein the second controller is configured to compare the first firmware and the second firmware during power-on when the electronic device is applied with power, and turn on the first controller at least based on a result of the comparison, and wherein the first controller is configured to, in response to being turned on by the second controller, control a system of the electronic device to be booted.


