Secure Debug Blob Authentication for SoC Boot Process

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing secure debug mechanisms for system-on-chip (SoC) devices face challenges in providing adequate protection against attackers during the boot process due to limited resources, making it difficult to secure access to JTAG or debug ports.

Innovation Solution

A secure debug mechanism using a challenge/response mechanism, where a unique chip ID, debug lifecycle fuse value, and hash of the next stage boot image are used to create a cryptographically signed debug blob, which is authenticated by the firmware to enable controlled access to debug ports, employing a nonce that ties the debug blob to the hardware and its lifecycle.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional secure debug mechanisms are used during boot process, then debug access can be provided, but security protection against attackers is insufficient due to limited resources

Engineering Contradiction:
Improvesecurity protectionVSAvoidresource constraints
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by pre-provisioning a root of trust and security credentials in the secure element before the boot process begins. The secure debug blob is signed in advance with cryptographic keys that are securely stored, allowing the firmware to verify authenticity without requiring complex runtime security resources. This pre-establishment of security mechanisms resolves the contradiction by providing strong security protection while maintaining simplicity during resource-constrained boot operations.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If debug access is enabled during boot process, then debugging capability is provided, but unauthorized access cannot be prevented

Engineering Contradiction:
Improvedebug accessVSAvoidunauthorized access
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a secure element as an intermediary between the debug interface and the system resources. This secure element acts as a mediator that verifies the authenticity of debug requests using cryptographically signed blobs before allowing any debug access. The intermediary validates that the debug blob is signed by an authorized key and has not been tampered with, thereby enabling legitimate debug access while preventing unauthorized access without complicating the boot process.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies preliminary anti-action by pre-signing the debug blob with cryptographic keys and establishing a chain of trust before any debug operations can occur. The secure element verifies the signature and authenticity of the debug request in advance, blocking any potentially harmful unauthorized access before it can affect the system. This preemptive security verification enables safe debug access while preventing attacks.

Inventive Principle:
Principle #9Preliminary anti-action

3Reliability

If security credentials are stored in limited memory resources, then security can be maintained, but memory capacity is quickly exhausted

Engineering Contradiction:
Improvesecurity credential storageVSAvoidmemory capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts security credentials from the main firmware memory and places them in a dedicated secure element with isolated storage. This separation removes the bulk of security-related data (private keys, certificates, and authentication credentials) from the limited firmware memory, preventing memory exhaustion while maintaining security. The secure element provides secure storage specifically for credentials, allowing the main firmware to operate with minimal memory requirements.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20240202313A1Implementing secure maintenance including secure debug
Publication Date: 2024.06.20 CISCO TECHNOLOGY INC
  • US20240202313A1 patent drawing
  • US20240202313A1 patent drawing
  • US20240202313A1 patent drawing

AI summary

Techniques and architecture are described to control a debug port access employing the debug image signed offline by a challenge/response mechanism, where the signed image itself is tied to an ECID of a chip together with debug lifecycle information coming from fuses and a hash of a loader being debugged. All these inputs form a nonce (the debug image) that ties the debug image to the hardware being debugged and is restricted to the current debug lifecycle. The cryptographically signed debug image is authenticated by a boot image (or the chip) with a public key in the debug image. The debug image may be expanded to secure maintenance using a secure maintenance blob or “firmware maintenance certificate or nonce.” The secure maintenance blob also includes a natural attribute list of low-level features to be enabled upon verification of the secure maintenance blob.