Multi-SCPU Secure Boot via Decryption and Authentication

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvenumber of CPUsVSAvoidsecurity isolation
Core Design Contradiction:
Device complexityVSReliability

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.

Inventive Principle:
Principle #1Segmentation

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

Engineering Contradiction:
Improveuser programming capabilityVSAvoidsystem security
Core Design Contradiction:
Adaptability or versatilityVSReliability

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.

Inventive Principle:
Principle #3Local quality

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

Engineering Contradiction:
Improvecode execution capabilityVSAvoidcode access control
Core Design Contradiction:
Ease of operationVSReliability

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP2706478B1Protecting secure software in a multi-security-CPU system
Publication Date: 2018.10.31 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • EP2706478B1 patent drawingFigure 1
  • EP2706478B1 patent drawingFigure 2
  • EP2706478B1 patent drawingFigure 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.