Multi-SCPU Secure Boot via Decryption and Authentication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In systems with a single security central processing unit (SCPU), achieving an intermediate level of security is challenging as it either risks compromising highly secure functions or leaves the system unsecured, as it must manage both sensitive and less sensitive tasks, and allowing user programming can open the system to additional risks.
Innovation Solution
A multi-security CPU system with a first SCPU operating at a higher security level for sensitive tasks and a second SCPU at a lower security level for less sensitive tasks, such as digital rights management, using a two-stage boot process with encrypted code and a memory checker to ensure secure execution and access control, preventing unauthorized access and execution outside designated memory regions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single SCPU manages both sensitive and less sensitive tasks, then device complexity is reduced, but security reliability deteriorates due to inability to isolate security levels
Solution Approach 1:
The system segments the SCPU into multiple security levels (first security level for sensitive tasks, second security level for less sensitive tasks). Each security level has its own execution environment and access controls, allowing the system to handle different types of tasks with appropriate security measures while maintaining overall system security.
2Adaptability or versatility
If user programming is allowed in a single SCPU system, then adaptability improves, but security reliability worsens due to potential introduction of vulnerabilities
Solution Approach 1:
The system applies different security qualities to different regions of the SCPU. The first security level implements strict security controls for sensitive functions, while the second security level allows more flexible user programming. This local differentiation enables user customization without compromising the security of critical operations.
3Ease of operation
If encrypted code is decrypted for execution, then code becomes accessible for processing, but security worsens as decrypted code may be accessed by unauthorized processors
Solution Approach 1:
The system introduces an intermediary authentication mechanism between code decryption and execution. The first SCPU authenticates the decrypted code before allowing execution by the second SCPU. This intermediary step ensures that only authorized code can be executed, preventing unauthorized access even when code is decrypted.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A computing system includes a first central processing unit (CPU) and a second CPU coupled with the first CPU and with a host processor. In response to a request by the host processor to boot the second CPU, the first CPU is configured to execute secure booting of the second CPU by decrypting encrypted code to generate decrypted code executable by the second CPU but that is inaccessible by the host processor.