Jump Destination Address Validation for Embedded Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing security processing techniques that validate branch destination addresses before execution increase processing overhead, making them unsuitable for low-computing power devices like IoT and embedded devices.

Innovation Solution

A processing apparatus and method that determine if a jump destination address corresponds to a security-sensitive function region before execution, allowing execution if not sensitive, and recording jump history to identify suspicious records only when sensitive, reducing unnecessary security processing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If security processing is performed every time branch processing is executed to confirm the validity of branch destination address, then security reliability is improved, but processing overhead increases

Engineering Contradiction:
Improvesecurity reliabilityVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies local quality by differentiating security processing based on the target address region. Security validation is performed selectively only when the branch destination address falls within pre-defined sensitive address regions, rather than uniformly for all branches. This localized approach maintains high security reliability for critical areas while reducing overall processing overhead by exempting non-sensitive regions from frequent validation.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements preliminary action by pre-defining sensitive address regions and their boundaries before program execution. The system prepares a data structure containing sensitive region information in advance, allowing the processor to quickly determine whether validation is needed by comparing branch destinations against these pre-established regions, rather than performing comprehensive validation checks for every branch instruction during execution.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If comprehensive security validation is performed for all branch instructions, then attack resistance is improved, but device complexity increases

Engineering Contradiction:
Improveattack resistanceVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent reduces device complexity by applying security processing locally only to sensitive address regions rather than implementing a universal validation mechanism for all branches. The determination unit checks whether branch destinations fall within pre-defined sensitive regions, and security validation is performed only in those localized areas, simplifying the overall system architecture while maintaining attack resistance for critical functions.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments the address space into sensitive and non-sensitive regions, allowing different security processing strategies to be applied to different segments. This segmentation enables the system to manage complexity by treating only the necessary portions (sensitive regions) with rigorous validation, while leaving other segments with simpler handling.

Inventive Principle:
Principle #1Segmentation

3Reliability

If security processing is performed for every jump instruction, then control flow security is improved, but computing power consumption increases

Engineering Contradiction:
Improvecontrol flow securityVSAvoidcomputing power consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent reduces computing power consumption by applying control flow security processing locally only to jumps targeting sensitive address regions. The determination unit efficiently checks whether jump destinations fall within sensitive regions using pre-defined boundary information, and security validation is performed only when necessary, rather than consuming computing resources for every jump instruction regardless of target.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent performs preliminary action by pre-defining sensitive address region boundaries and organizing this information in an accessible data structure before execution. This allows the determination unit to quickly assess whether validation is needed through simple comparisons, reducing the computing power required during actual jump processing compared to performing comprehensive validation for every jump instruction.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12079327B2Processing apparatus, security control method, and non-transitory computer readable medium
Publication Date: 2024.09.03 NEC CORP
  • US12079327B2 patent drawing
  • US12079327B2 patent drawing
  • US12079327B2 patent drawing

AI summary

In a processing apparatus, a determination unit determines whether a jump destination address of a jump instruction in a process execution program being executed corresponds to a sensitive address region. When the determination unit determines that the jump destination address does not correspond to the sensitive address region, the security control unit executes control to allow the execution of the jump instruction and record a jump source address and the jump destination address of the jump instruction in jump history information as a jump execution record. When it is determined that the jump destination address corresponds to the sensitive address region, the security control unit searches for a “suspicious record” in the jump history information. The suspicious record is a jump execution record corresponding to an “unusual jump destination address”.