Key Rotating Trees with Split Counters for Replay Protection
Find Innovative SolutionsGenerate 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
Engineering Contradiction Analysis
1Reliability
If traditional replay protection mechanisms are implemented, then security against replay attacks is improved, but storage overhead increases significantly
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.
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.
2Reliability
If deep counter trees are used for comprehensive replay protection, then security coverage is improved, but performance deteriorates due to increased complexity
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.
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.
Data Source
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.


