Memory Integrity via Random Bit Sampling and Block Cipher Binding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory integrity techniques are vulnerable to corruption attacks, as they either rely on deterministic methods like parity, which can be guessed by adversaries, or high-storage-cost non-deterministic methods that cause performance degradation and power consumption issues due to frequent memory access.

Innovation Solution

The proposed solution involves a memory controller that determines whether unencrypted data has a random distribution of bits using a logic module, implementing an integrity action to prevent access when corruption is detected, and utilizing a block cipher like Threefish with a tweak function to bind data with memory addresses, ensuring diffusion and minimizing the need for integrity values.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If conventional parity techniques are used for memory integrity, then storage cost is low and the approach is in-line, but the method is deterministic and can be guessed by adversaries

Engineering Contradiction:
Improvestorage costVSAvoidintegrity protection against corruption attacks
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent changes the fundamental parameter of integrity verification from deterministic parity checks to probabilistic random sampling. By randomly selecting bits from memory locations and verifying their integrity without predetermined patterns, the system achieves both low storage overhead and resistance to adversarial guessing, as the adversary cannot predict which bits will be sampled.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If large codes are used to verify integrity of stored data, then the method is non-deterministic to the adversary, but storage cost becomes relatively high

Engineering Contradiction:
Improveintegrity verification effectivenessVSAvoidstorage cost
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential integrity verification function from comprehensive error-correcting codes. Instead of storing and processing large code words, it extracts random samples of memory bits and performs minimal verification operations on these samples, achieving effective integrity verification with negligible storage overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If codes are used each time data is fetched from memory, then integrity verification is thorough, but memory access events increase causing performance degradation and additional power consumption

Engineering Contradiction:
Improveintegrity verification completenessVSAvoidmemory access performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial verification by randomly sampling a small subset of memory bits rather than verifying all data. This partial action is sufficient to detect corruption with high probability while minimizing the number of memory access events, thereby avoiding performance degradation and excessive power consumption.

Inventive Principle:
Principle #16Partial or excessive action

4Measurement precision

If frequent memory access is performed for integrity verification, then detection accuracy improves, but power consumption increases

Engineering Contradiction:
Improvecorruption detection accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system performs partial verification by randomly sampling a small number of memory bits rather than accessing all data for integrity checks. This approach maintains high detection accuracy for corruption while minimizing memory access frequency and associated power consumption.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3077913B1Memory integrity
Publication Date: 2022.10.05 INTEL CORP
  • EP3077913B1 patent drawingFigure 1
  • EP3077913B1 patent drawingFigure 2
  • EP3077913B1 patent drawingFigure 3

AI summary

Systems and methods may provide for identifying unencrypted data including a plurality of bits, wherein the unencrypted data may be encrypted and stored in memory. In addition, a determination may be made as to whether the unencrypted data includes a random distribution of the plurality of bits. An integrity action may be implemented, for example, when the unencrypted data includes a random distribution of the plurality of bits.