Compute Node Security via Hardware Transactional Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Compute nodes in data centers face significant security challenges due to side-channel attacks, particularly cache-based attacks, where malicious parties can infer sensitive information by observing memory access patterns, leading to performance overhead and efficiency reductions in existing mitigation approaches.

Innovation Solution

Implementing hardware transactional memory (HTM) in compute nodes to securely load and execute sensitive data and code, ensuring it remains in the cache until completion, thereby masking information transfer events and preventing attackers from inferring sensitive data through cache-based side-channel attacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If resource sharing between multiple parties is implemented to improve efficiency, then productivity increases, but security deteriorates due to side-channel attacks

Engineering Contradiction:
ImproveefficiencyVSAvoidside-channel attacks
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The cache is segmented into read cache lines and write cache lines with safety margins between them. This segmentation prevents malicious observation of memory access patterns by separating sequentially accessed read cache lines by a page boundary from write cache lines, thereby mitigating side-channel attacks while maintaining resource sharing for improved efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Hardware transactional memory acts as an intermediary mechanism that monitors and controls cache access patterns. It detects when information is evicted from the cache and aborts transactions accordingly, serving as a mediator between the need for resource sharing and the requirement for security against side-channel attacks

Inventive Principle:
Principle #24Intermediary (Mediator)

2Object-affected harmful factors

If specially designed algorithms are used to obfuscate memory access patterns, then security improves, but productivity deteriorates due to performance overhead

Engineering Contradiction:
Improveside-channel attacksVSAvoidperformance overhead
Core Design Contradiction:
Object-affected harmful factorsVSProductivity

Solution Approach 1:

The patent replaces software-based obfuscation algorithms with hardware-level cache line separation and safety margins. This mechanical substitution at the hardware level provides security against side-channel attacks without the significant performance overhead associated with software-based approaches, as the protection is built into the cache structure itself

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The hardware transactional memory system automatically detects cache evictions and aborts transactions without requiring external intervention or complex software algorithms. This self-service mechanism provides security while minimizing performance overhead by handling protection at the hardware level rather than through software processing

Inventive Principle:
Principle #25Self-service

3Object-affected harmful factors

If cache lines are separated with safety margins to prevent side-channel attacks, then security improves, but device complexity increases

Engineering Contradiction:
Improveside-channel attacksVSAvoidcache structure
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

The patent applies local quality by implementing safety margins specifically at the boundaries between read and write cache lines, rather than uniformly across the entire cache. This targeted approach provides security against side-channel attacks while minimizing the increase in device complexity by only modifying specific regions of the cache structure

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3631672B1Compute node security
Publication Date: 2021.09.08 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3631672B1 patent drawingFigure 1
  • EP3631672B1 patent drawingFigure 2
  • EP3631672B1 patent drawingFigure 3

AI summary

In various examples a compute node is described. The compute node has a central processing unit which implements a hardware transactional memory using at least one cache of the central processing unit. The compute node has a memory in communication with the central processing unit, the memory storing information comprising at least one of: code and data. The compute node has a processor which loads at least part of the information, from the memory into the cache. The processor executes transactions using the hardware transactional memory and at least the loaded information, such that the processor ensures that the loaded information remains in the cache until completion of the execution.