Key Rotating Trees with Split Counters for Replay Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing systems lack effective mechanisms to prevent hardware and software attacks, particularly replay attacks, which can compromise encrypted data by exploiting physical access to cache lines and replaying modified cache lines, especially in the absence of encryption, integrity, and replay protections.

Innovation Solution

Implementing key rotating trees with split counters that provide efficient hardware replay protection by using a shallow counter tree structure and periodic key rotation to prevent replay attacks during the vulnerability window, reducing storage overhead and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional replay protection mechanisms are implemented, then security against replay attacks is improved, but storage overhead increases significantly

Engineering Contradiction:
Improvereplay protectionVSAvoidstorage overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The counter structure is segmented into multiple levels (root counters, intermediate counters, leaf counters) forming a tree hierarchy. This segmentation allows the system to protect large amounts of data with a limited number of root counters stored in secure memory, while intermediate and leaf counters are distributed across regular memory, significantly reducing the storage overhead in secure memory while maintaining comprehensive replay protection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a flat, single-level counter storage structure to a multi-dimensional tree structure. By organizing counters in hierarchical levels with branching factors, the system achieves exponential coverage of protected data blocks with linear growth in root counter storage requirements, effectively reducing the dimensional complexity of secure storage needs.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If deep counter trees are used for comprehensive replay protection, then security coverage is improved, but performance deteriorates due to increased complexity

Engineering Contradiction:
Improvereplay protection coverageVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Different levels of the counter tree have different properties optimized for their specific functions. Root counters are stored in fast, secure memory with small size for quick access. Intermediate counters are distributed across regular memory with moderate size. Leaf counters are associated with individual data blocks and have minimal size. This local optimization ensures that the most critical operations (root counter access) are fastest, while maintaining comprehensive coverage through the full tree structure.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The counter tree structure allows dynamic adaptation to different protection scenarios. The branching factor and tree depth can be adjusted based on the amount of data to be protected and performance requirements. The system can dynamically select which counters to increment and validate based on the specific access pattern, optimizing performance for common cases while maintaining security for all cases.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11088846B2Key rotating trees with split counters for efficient hardware replay protection
Publication Date: 2021.08.10 INTEL CORP
  • US11088846B2 patent drawing
  • US11088846B2 patent drawing
  • US11088846B2 patent drawing

AI summary

In one example a computer implemented method comprises encrypting data to be stored in a protected region of a memory using a message authentication code (MAC) having a first value determined using a first key during a first period of time, generating a replay integrity tree structure comprising security metadata for the data stored in the protected region of the memory using the first value of the MAC, and at the end of the first period of time, re-keying the MAC to have a second value determined using a second key at the end of the first period of time, decrypting the data stored in the protected region using the first value for the MAC, re-encrypting the data stored in the protected region using the second value for the MAC, and updating the replay integrity tree using the second value for the MAC. Other examples may be described.