Processor Security Controller for Firmware Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing multiprocessor systems lack effective mechanisms to prevent unauthorized and malicious software from being executed, particularly during firmware execution, which can lead to security breaches and data integrity issues.
Innovation Solution
A processing device is designed with a security processor that verifies firmware before allowing execution, using a controller to manage access and ensure only authenticated software is fetched and executed, employing mechanisms like secure boot and memory protection units to prevent tampering.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a multiprocessor system executes firmware directly without verification, then system productivity is improved, but security and reliability deteriorate due to unauthorized or malicious software execution
Solution Approach 1:
The system performs verification of the firmware's digital signature before allowing execution. The verification unit checks whether the firmware was signed by an authorized entity, and only permits execution if verification succeeds. This preliminary action ensures security is established before the productivity-critical execution phase begins.
Solution Approach 2:
A verification unit is introduced as an intermediary component between the firmware storage and the execution unit. This mediator checks the digital signature of the firmware and controls whether the execution unit is permitted to run the firmware, thereby separating the concerns of execution speed and security verification.
2Reliability
If firmware verification is performed before execution, then security and reliability are improved, but processing time increases due to verification overhead
Solution Approach 1:
The digital signature verification is performed as a preliminary action before firmware execution. By checking the signature in advance and caching the verification result, the system ensures that time-consuming verification operations are completed before the critical execution phase, minimizing the impact on overall processing time.
3Reliability
If memory access control is implemented to prevent unauthorized firmware loading, then security is improved, but device complexity increases due to additional control mechanisms
Solution Approach 1:
A verification unit acts as an intermediary between the memory system and the execution unit, controlling access to firmware based on digital signature verification results. This mediator implements security policies without requiring complex modifications to the underlying memory or processor architectures.
Solution Approach 2:
The system uses the existing digital signature embedded in the firmware itself to perform self-verification. The verification unit checks whether the firmware's signature matches authorized keys, allowing the firmware to prove its own authenticity without requiring external certification infrastructure.
Data Source
AI summary
A processing device includes a memory, a first processor configured to execute software fetched from the memory, a second processor configured to perform a verification of the software stored in the memory, and a controller configured to control a fetch of the software from the memory by the first processor according to the verification performed by the second processor. The controller prohibits the fetch by the first processor until the verification of the software performed by the second processor is successful and permits the fetch by the first processor when the verification of the software performed by the second processor is successful.


