Hardware Timing Channel Detection via Gate-Level Flow Tracing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies face challenges in detecting and isolating timing channels in hardware designs, particularly in embedded systems, as existing methods are ineffective in distinguishing timing information from functional information flows, leading to security vulnerabilities in systems like embedded computing, mobile devices, and point of sale systems.

Innovation Solution

A method involving gate-level information flow tracing is applied to hardware designs, where the design is synthesized to the gate level, and tracking logic is added to monitor information flows, allowing for the separation of timing flows from functional flows through deterministic traces, enabling the identification and isolation of timing channels.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Difficulty of detecting and measuring

If gate-level information flow tracing is applied to detect timing channels, then timing channel detection capability is improved, but hardware design complexity increases

Engineering Contradiction:
Improvetiming channel detection capabilityVSAvoidhardware design complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The hardware design is segmented into functional modules, each with its own timing behavior characteristics. The timing channel detection system is divided into separate components: a timing model generator that creates models for each module, a comparator that analyzes deviations, and an isolation mechanism that targets specific modules. This segmentation allows comprehensive timing analysis without requiring complete redesign of the entire hardware system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A timing model serves as an intermediary between the hardware design and the detection process. The timing model captures expected timing behavior without requiring direct modification of the hardware logic. The comparator acts as another intermediary, comparing actual timing against the model to identify anomalies. This intermediary approach enables detection without increasing hardware complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If timing information is separated from functional information flows, then security assurance is improved, but information flow tracking complexity increases

Engineering Contradiction:
Improvesecurity assuranceVSAvoidinformation flow tracking complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Timing information is extracted from the combined information flow using the timing model. The model specifically captures timing characteristics separate from functional data flows. By extracting only timing-related parameters, the system achieves security assurance through timing channel isolation without requiring complex tracking of all information flows.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The timing model applies local quality analysis to specific portions of the hardware design rather than uniformly analyzing the entire system. Each functional module has its own timing characteristics captured in the model, allowing targeted security assurance where timing channels are most likely to exist without unnecessary complexity elsewhere in the system.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If deterministic traces are used to isolate timing flows, then timing channel isolation accuracy is improved, but analysis time increases

Engineering Contradiction:
Improvetiming channel isolation accuracyVSAvoidanalysis time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The timing model is generated in advance during the design phase, capturing expected timing behavior before actual operation. This preliminary action allows the comparator to quickly compare actual timing against pre-established models during operation, achieving high isolation accuracy without time-consuming analysis during runtime.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system performs partial action by focusing timing analysis only on modules identified as potential timing channel sources through the timing model, rather than analyzing the entire hardware system uniformly. This selective approach maintains high isolation accuracy for critical modules while reducing overall analysis time.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9305166B2Method and systems for detecting and isolating hardware timing channels
Publication Date: 2016.04.05 ARTERIS INC
  • US9305166B2 patent drawing
  • US9305166B2 patent drawing
  • US9305166B2 patent drawing

AI summary

A method for detecting a timing channel in a hardware design includes synthesizing the hardware design to gate level. Gate level information flow tracing is applied to the gate level of the hardware design via a simulation to search for tainted flows. If a tainted flow is found, a limited number of traces are selected. An input on the limited number of traces is simulated to determine whether the traces are value preserving with respect to taint inputs, and to determine that a timing flow exists if the traces are value preserving with respect to the taint inputs.