SoC Boot Sequence Verification for Artificial Reality Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Artificial reality systems face security vulnerabilities in their boot sequences, allowing attackers to exploit existing ROM designs and storage protocols, potentially leading to unauthorized access and misappropriation of user data.

Innovation Solution

Implementing a System on a Chip (SoC) that manages the boot sequence by validating firmware and physical traces, acting as an intermediary between the application processor and storage device, to ensure authorized loading and execution of firmware, thereby enhancing security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If an application processor directly loads firmware from external storage during boot sequence, then the boot process is simple and fast, but the system is vulnerable to security exploits and unauthorized code execution

Engineering Contradiction:
Improveboot sequence securityVSAvoidboot process structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A System on Chip (SoC) is introduced as an intermediary component between the application processor and external storage device. The SoC manages the boot sequence by validating firmware before it is loaded into the application processor, thereby securing the boot process while maintaining a relatively simple overall structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If existing ROM designs and storage protocols are used in the boot sequence, then device manufacturing is easier and more standardized, but security vulnerabilities and exploits become possible

Engineering Contradiction:
Improveboot sequence implementationVSAvoidsecurity exploits
Core Design Contradiction:
Ease of manufactureVSObject-affected harmful factors

Solution Approach 1:

The SoC performs preliminary validation of firmware using verification routines before the application processor executes the boot sequence. This preliminary security check prevents malicious or unauthorized code from being loaded, countering potential security exploits before they can take effect.

Inventive Principle:
Principle #9Preliminary anti-action

3Reliability

If firmware validation is performed by the application processor itself, then the verification process is straightforward, but attackers can exploit the application processor to bypass security checks

Engineering Contradiction:
Improvefirmware validation securityVSAvoidvalidation process architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The validation function is separated from the application processor and assigned to the SoC. This segmentation creates a distinct security management component that independently validates firmware, preventing attackers who compromise the application processor from bypassing security checks.

Inventive Principle:
Principle #1Segmentation

4Reliability

If the SoC validates firmware independently before booting the application processor, then security is improved, but the boot process takes longer due to additional validation steps

Engineering Contradiction:
Improveboot sequence securityVSAvoidboot sequence duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Firmware validation is performed as a preliminary action during the boot sequence initialization phase by the SoC before the application processor is activated. By completing security validation early in the boot process, the system ensures security without significantly extending the overall boot time, as the validation occurs in parallel with other initialization tasks.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11238159B1Artificial reality system with verified boot sequences
Publication Date: 2022.02.01 META PLATFORMS TECHNOLOGIES LLC
  • US11238159B1 patent drawing
  • US11238159B1 patent drawing
  • US11238159B1 patent drawing

AI summary

In general, techniques are described for improving security of a boot sequence of an application processor. In some examples, a computing device includes a first processor coupled to a first storage device, the first processor and first storage device configured to obtain firmware from a storage device external to the first processor; run a verification routine on the firmware; and in response to validation of the firmware with the verification routine, communicate the firmware to a second processor; and the second processor coupled to a second storage device, the second processor and second storage device configured to load the firmware.