Debug Protection Unit for Segmented Non-Secure Code

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Inhibiting debugging for non-secure portions of an application image developed by different entities is challenging, as existing systems struggle to prevent unauthorized access and modification.

Innovation Solution

A protection unit is introduced to monitor debug bus traffic and inhibit halting of the processor when a target address falls within a protected region of non-secure code, asserting a restart signal to continue execution and masking or filtering data to prevent access to developer-created code sections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a debugger is allowed to access the entire application image for debugging purposes, then debugging capability is improved, but security of non-secure code regions is compromised

Engineering Contradiction:
Improvedebugging capabilityVSAvoidcode integrity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The application image is divided into secure and non-secure regions, with further segmentation of non-secure regions into protected and unprotected sub-regions. This segmentation allows the debugger to access unprotected regions while preventing access to protected regions, thus resolving the contradiction between debugging capability and code integrity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A protection unit is introduced as an intermediary component between the debugger and the application image. This protection unit intercepts debug requests, determines whether they target protected or unprotected regions, and selectively permits or blocks access. The intermediary enables debugging of user code while protecting developer code, resolving the security-capability contradiction.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If debugging is restricted in protected regions to maintain security, then code integrity is improved, but debugging flexibility deteriorates

Engineering Contradiction:
Improvecode integrityVSAvoiddebugging flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

Different debugging permissions are applied to different regions of the application image. Unprotected non-secure regions maintain full debugging flexibility, while protected regions have restricted debugging. This local differentiation resolves the contradiction by providing debugging flexibility where needed while maintaining code integrity where required.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12361117B2System and method for inhibiting debugger in non-secure region
Publication Date: 2025.07.15 INFINEON TECHNOLOGIES AMERICAS CORP
  • US12361117B2 patent drawing
  • US12361117B2 patent drawing
  • US12361117B2 patent drawing

AI summary

One or more computing devices, systems, and/or methods are provided. In an example, a method comprises storing an application image comprising a non-secure portion in a memory. A first debug request comprising a first target address is received. Halting of a processor is inhibited responsive to the first target address being within a protected region for a portion of non-secure code.