Dynamic Time Dilation for Timing Attack Mitigation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing approaches to mitigate timing attacks, such as clamping explicit clocks or altering runtime frequencies, are ineffective and negatively impact system performance and user experience, as they can be worked around and cause performance and power efficiency issues.

Innovation Solution

Implementing dynamically scaled time dilation by tracking API calls or callbacks within time buckets, injecting random wait time or warping explicit clock values to prevent attackers from establishing a consistent reference clock, while scaling the degree of time dilation based on the observer's behavior.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If time dilation is applied to mitigate timing attacks, then timing attack mitigation is improved, but system performance and user experience deteriorate

Engineering Contradiction:
Improvetiming attack mitigationVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies dynamics by making the time dilation factor adjustable and adaptive rather than fixed. The system dynamically modifies the time dilation degree based on detected attacker behavior patterns, allowing it to strengthen mitigation when attacks are detected while reducing overhead during normal operation, thus resolving the contradiction between security and performance

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of time dilation factor from a static value to a dynamic one that varies based on system state and detected behavior. By adjusting this parameter in response to observed patterns, the system optimizes the balance between timing attack mitigation effectiveness and system performance impact

Inventive Principle:
Principle #35Parameter changes

2Reliability

If constant time dilation is applied, then timing attack mitigation is simplified, but system performance and power efficiency deteriorate

Engineering Contradiction:
Improvetiming attack mitigationVSAvoidpower efficiency
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system implements periodic monitoring and evaluation of behavior patterns to determine when time dilation should be active. Rather than continuously applying time dilation, the system periodically assesses system state and activates mitigation only when attack patterns are detected, reducing unnecessary energy consumption while maintaining security when needed

Inventive Principle:
Principle #19Periodic action

3Reliability

If existing mitigation approaches are used, then timing attacks are addressed, but the approaches can be worked around and fail to structurally prevent timing exploits

Engineering Contradiction:
Improvetiming attack mitigationVSAvoidmitigation effectiveness
Core Design Contradiction:
ReliabilityVSManufacturing precision

Solution Approach 1:

The patent implements feedback mechanisms where the system continuously monitors behavior patterns and adjusts time dilation in response to observed actions. This closed-loop approach allows the system to learn from attacker behavior and adapt its mitigation strategy, making it more effective against evolving attack techniques compared to static mitigation approaches

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3785157B1Mitigating timing attacks via dynamically scaled time dilation
Publication Date: 2024.05.29 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3785157B1 patent drawingFigure 1
  • EP3785157B1 patent drawingFigure 2
  • EP3785157B1 patent drawingFigure 3A~3B

AI summary

Techniques for mitigating timing attacks via dynamically scaled time dilation are provided. According to one set of embodiments, a computer system can enable time dilation with respect to a program, where the time dilation causes the program to observe a dilated view of time relative to real time. Then, while the time dilation is enabled, the computer system can track a count of application programming interface (API) calls or callbacks made by a program within each of a series of time buckets and, based on counts tracked for a range of recent time buckets, scale up or scale down a degree of the time dilation.