Instruction Execution Validation Using Signatures and Policy Matching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems lack the ability to verify that the intended sequence of instructions has been executed and the correct data items have been processed, making them vulnerable to replay attacks and falsification.

Innovation Solution

An apparatus and method that generate a signature indicative of executed instructions and data items, validated against a predefined policy to ensure the correct processing has occurred, using techniques such as single-use codes, control flow graphs, and cryptographic hashes to prevent falsification and ensure authenticity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If processing circuitry executes program instructions to process data items, then productivity is improved, but reliability deteriorates due to inability to verify execution integrity

Engineering Contradiction:
Improvedata processing capabilityVSAvoidexecution verification
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by generating a control flow graph and expected signature before executing the program instructions. This pre-computed reference is then used to verify the actual execution, allowing the system to ensure reliability without sacrificing processing productivity. The signature generation and control flow analysis are performed in advance, creating a benchmark against which actual execution can be validated.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If validation procedures are implemented to verify instruction execution, then reliability is improved, but device complexity increases

Engineering Contradiction:
Improveexecution verificationVSAvoidvalidation circuitry
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses copying by creating a control flow graph that replicates the program's execution paths and generating a signature that copies essential execution characteristics. Instead of complex validation circuitry, the system creates simplified representations (copies) of the execution flow that can be easily compared against actual execution, reducing device complexity while maintaining reliability.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent transforms the verification problem by changing parameters - converting program instructions into a control flow graph representation and further into a signature. This parameter transformation simplifies the validation process, allowing complex execution verification to be performed through comparison of transformed representations rather than direct instruction-by-instruction analysis.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If signatures are generated to indicate executed instructions and data items, then measurement precision is improved, but loss of information increases due to signature abstraction

Engineering Contradiction:
Improveexecution tracking accuracyVSAvoiddetailed execution data
Core Design Contradiction:
Measurement precisionVSLoss of information

Solution Approach 1:

The patent applies extraction by taking out only the essential characteristics of execution into a signature - specifically, the control flow path and key execution points. Rather than preserving all detailed execution data, the system extracts the critical elements needed for verification, maintaining measurement precision for execution tracking while minimizing information loss by focusing on what is truly necessary for validation.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20260046140A1Apparatus, method of operating an apparatus and a computer program
Publication Date: 2026.02.12 ARM LTD
  • US20260046140A1 patent drawing
  • US20260046140A1 patent drawing
  • US20260046140A1 patent drawing

AI summary

There is provided an apparatus, a method of operating the apparatus and a computer program for controlling a host data processing apparatus to provide an instruction execution environment equivalent to the apparatus. The apparatus comprises processing circuitry configured to execute a sequence of program instructions to process data items. The processing circuitry is configured to generate a signature indicative of executed instructions in the sequence of program instructions and indicative of the data items. The apparatus is also provided with validation circuitry configured to implement a validation procedure. The validation procedure comprises the steps of evaluating the signature against a predefined policy to verify that the processing circuitry has processed the data items using the sequence of program instructions and, in response to a match between the signature and the predefined policy, generating confirmation information to indicate the match.