Compressed Integrity Check Counters for Memory Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in providing effective data integrity and freshness due to large counter sizes leading to deep integrity trees, which result in increased overhead in operations and storage, while using smaller counters may lead to security degradation by ignoring overflows and repeating counter values.

Innovation Solution

Implementing compressed integrity check counters using small counters that provide short-term freshness, where the combination of counter values and keys ensures data protection, and counters are reset with new keys to prevent overflows, utilizing a Generalized Multi-Dimensional Counter (GMDC) to reduce memory overhead and integrity tree depth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If large counters are used to prevent overflow and maintain security, then security is improved, but integrity tree depth increases leading to increased operational overhead and storage requirements

Engineering Contradiction:
ImprovesecurityVSAvoidintegrity tree depth
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the single large counter into multiple smaller counters organized in a tree structure. Each node in the integrity tree contains a small counter, and the tree is organized in levels where parent counters aggregate information from child counters. This segmentation allows the system to use small counters throughout while maintaining security through the hierarchical structure, resolving the contradiction between counter size and security.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a one-dimensional approach (single large counter) to a multi-dimensional hierarchical structure (integrity tree with multiple levels and branches). By adding the dimension of hierarchical organization, the system can use small counters at each node while the overall structure provides the security equivalent of a large counter, thus reducing integrity tree depth overhead while maintaining security.

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

2Quantity of substance

If small counters are used to reduce memory overhead and integrity tree depth, then storage efficiency is improved, but security degrades due to counter overflow and repeating values

Engineering Contradiction:
Improvememory overheadVSAvoidsecurity
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

By segmenting the counter system into multiple small counters arranged in a tree, the patent achieves both goals: small counters reduce memory overhead at each node, while the hierarchical aggregation across the tree structure prevents overflow and maintains security. The segmentation distributes the counting function across many small units rather than relying on a single large unit.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple small counters at parent nodes to create an aggregated counter value. This combining operation allows the system to use small counters throughout the tree (reducing individual storage requirements) while the merged result at each level provides the overflow protection needed for security, thus resolving the contradiction between small counter size and security reliability.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If counters are stored in memory to provide freshness, then data integrity is improved, but read/write operations incur additional overhead

Engineering Contradiction:
Improvedata integrityVSAvoidread/write throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the counter data from being stored alongside user data in the same memory locations. Instead, counters are stored separately in the integrity tree structure, and only counter verification (not the counters themselves) is performed during read/write operations. This extraction reduces the overhead of storing and managing counters while maintaining data integrity through the separate integrity verification mechanism.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The integrity tree acts as an intermediary structure between the user data and the freshness verification mechanism. Rather than directly storing and managing counters with user data (which incurs overhead), the patent introduces the integrity tree as a mediator that provides freshness verification through its hierarchical structure, reducing the direct overhead on read/write operations while maintaining data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10846437B2Compressed integrity check counters in memory
Publication Date: 2020.11.24 INTEL CORP
  • US10846437B2 patent drawing
  • US10846437B2 patent drawing
  • US10846437B2 patent drawing

AI summary

System and techniques for compressed integrity check counters in memory are described herein. A set of counters may be maintained for data areas in memory. A respective counter is the set of counters is used to provide a variance to encryption operations on a corresponding data area. The respective counter is each time data is modified in the corresponding data area. The respective counter implemented by a generalized multi-dimensional counter (GMDC). In response to a trigger, a counter reset is performed on the set of counters. The counter reset may include refreshing the corresponding data area using a new key and resetting the respective counter to a default value in response to the refresh.