Processor Mode Switching for Secure Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing electronic devices face challenges in securely managing and processing security-related components while allowing for testing, debugging, and servicing without compromising security functions, as third-party access to these components can potentially manipulate the device's security features.

Innovation Solution

The circuitry operates in two modes: a secure mode for processing security data and an unsecure mode for testing and debugging, with mode-setting means controlling processor access to protected data, enabling execution of non-verified software and restricting access to security information during unsecure mode operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the processor is given access to protected data for testing and debugging, then testing and debugging capabilities are improved, but security is compromised as third parties can manipulate security components

Engineering Contradiction:
Improvetesting and debugging capabilityVSAvoidsecurity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The processor operates in different operational modes (secure mode and unsecure mode) that can be dynamically switched. In secure mode, the processor has restricted access to protected data, while in unsecure mode, it has full access for testing and debugging. This dynamic switching resolves the contradiction by providing the appropriate level of access based on the current operational context.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Different access rights are assigned to different operational modes of the processor. The secure mode implements strict access control to protected data, while the unsecure mode allows broader access. This local differentiation of access quality based on operational mode enables both security and testing capabilities without compromise.

Inventive Principle:
Principle #3Local quality

2Reliability

If the processor restricts access to protected data for security, then security is improved, but testing and debugging capabilities deteriorate

Engineering Contradiction:
ImprovesecurityVSAvoidtesting and debugging capability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system dynamically adjusts access control based on the operational mode. During normal operation in secure mode, access to protected data is restricted to maintain security. When testing or debugging is required, the system can switch to unsecure mode, temporarily relaxing access controls to enable comprehensive testing while maintaining security during normal operation.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The access control mechanism applies different quality levels of access protection to different operational contexts. In secure mode, strict protection is applied to protected data. In unsecure mode, the protection level is reduced or removed to enable testing. This local quality differentiation resolves the contradiction between security and testing capabilities.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If the processor can execute non-verified software, then adaptability is improved, but security risk increases

Engineering Contradiction:
Improvesoftware execution flexibilityVSAvoidsecurity risk
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The processor can dynamically switch between secure and unsecure modes based on the software being executed. When non-verified software needs to run for testing or adaptability purposes, the system transitions to unsecure mode, allowing execution while accepting the associated security risks. When security is paramount, the system returns to secure mode, preventing execution of unverified code.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Different security verification requirements are applied to different software execution contexts. Verified software can execute in secure mode with strict access controls, while non-verified software can only execute in unsecure mode with relaxed controls. This local quality differentiation in verification requirements enables adaptability while containing security risks to specific contexts.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9111097B2Secure execution architecture
Publication Date: 2015.08.18 NOKIA TECHNOLOGIES OY
  • US9111097B2 patent drawing
  • US9111097B2 patent drawing
  • US9111097B2 patent drawing

AI summary

The present invention relates to circuitry and a method for providing data security, which circuitry contains at least one processor and at least one storage circuit. The invention is based on the idea that circuitry is provided in which a processor is operable in at least two different modes, one first secure operating mode and one second unsecure operating mode. In the secure mode, the processor has access to security related data located in various memories located within the circuitry. The access to these security data and the processing of them need to be restricted, since an intruder with access to security data could manipulate the circuitry. When testing and/or debugging the circuitry, access to security information is not allowed. For this reason, the processor is placed in the unsecure operating mode, in which mode it is no longer given access to the protected data.