Tracker Module Verifies Instruction Sequences for Cryptographic Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In secure processing environments, ensuring the integrity of cryptographic operations by verifying the sequence of instructions sent from a main processor to auxiliary processors is challenging, especially when software code is loaded from outside the secure environment, as tampering with the sequence can compromise the security of the overall operation.

Innovation Solution

A method is implemented to monitor and verify the sequence of instructions using verification information, where the tracker module updates a state with each instruction and compares it to verification information, enabling output only upon successful verification and generating a failure signal for tampered sequences, thereby enhancing security by controlling access to the interface memory and disabling communication between the main and auxiliary processors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If software code is loaded from outside the secure environment to improve flexibility and ease of operation, then the ease of operation is improved, but the security and reliability deteriorate because the code can be tampered with and the instruction sequence cannot be verified

Engineering Contradiction:
Improveease of operationVSAvoidsecurity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing verification information (hash values) for each instruction in the sequence before execution. This allows the tracker module to verify the integrity and sequence of instructions during runtime without compromising security, resolving the contradiction between loading code from outside (ease of operation) and ensuring its integrity (security).

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a tracker module as an intermediary between the main processor and auxiliary processors. This tracker monitors and verifies the instruction sequence executed by the main processor, ensuring that even when code is loaded from external sources, the actual execution flow remains secure and verified, thus maintaining security while allowing flexible code loading.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the main processor executes operations directly without verification to improve processing speed, then the productivity is improved, but the reliability deteriorates because tampering with the instruction sequence can compromise security

Engineering Contradiction:
Improveprocessing speedVSAvoidsecurity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Verification information is pre-computed and stored alongside the code, allowing rapid verification during execution without slowing down the processing flow. The tracker module compares incoming instructions against pre-stored hash values, enabling fast verification that maintains productivity while ensuring security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements self-service verification where the tracker module automatically monitors and verifies the instruction sequence without requiring external intervention. This automated process ensures security verification occurs seamlessly during normal operation, maintaining processing speed while preventing tampering.

Inventive Principle:
Principle #25Self-service

3Reliability

If a tracker module is introduced to monitor and verify instruction sequences to improve security, then the reliability is improved, but the device complexity increases due to additional monitoring and verification mechanisms

Engineering Contradiction:
ImprovesecurityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The tracker module is designed to perform multiple functions: it monitors the instruction sequence, verifies integrity against stored hash values, detects tampering, and controls access to auxiliary processors. By consolidating these security functions into a single multi-functional component, the patent improves security without proportionally increasing overall system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The tracker module serves as an intermediary that sits between the main processor and auxiliary processors, verifying instructions without requiring fundamental changes to the existing processor architecture. This modular approach allows security verification to be added without significantly increasing the complexity of the core processing components.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If verification is performed for every instruction to ensure complete security, then the reliability is improved, but the loss of time increases due to continuous monitoring and verification overhead

Engineering Contradiction:
ImprovesecurityVSAvoidverification time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Hash values for all instructions are pre-computed and stored before execution begins. During runtime, the tracker module performs simple hash comparisons rather than complex verification operations, significantly reducing the time overhead per instruction while maintaining complete security verification.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The verification process uses cryptographic hash functions that transform instruction sequences into fixed-size values for efficient comparison. This parameter transformation allows rapid verification of instruction integrity without the time overhead of analyzing entire instruction sequences, balancing security with performance.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11314518B2Verification of instructions from main processor to auxiliary processor
Publication Date: 2022.04.26 NAGRAVISION SA
  • US11314518B2 patent drawing
  • US11314518B2 patent drawing
  • US11314518B2 patent drawing

AI summary

A method of monitoring execution in an execution environment of an operation, for example a cryptographic operation, comprising a sequence of instructions, is disclosed. Instructions sent in the sequence from a main processor to one or more auxiliary processors, for example cryptographic processors, to execute the operation are monitored and the sequence of instructions is verified using verification information. The method comprises enabling output from the execution environment of a result of the operation in response to a successful verification of the sequence, or generating a verification failure signal in response to a failed verification of the sequence.