Memory Channel Encryption via Device Unique ID

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional encrypted memory approaches are vulnerable to rudimentary attacks due to the need for individual encryption of cache lines, which is challenging in processor-memory architectures with unpredictable memory access patterns.

Innovation Solution

The use of a device-specific ID to generate a tweak value for encrypting and decrypting data, allowing for secure encryption across different memory channels and systems, using the AES-XTS algorithm with the formula Ciphertext=Tweak XOR AES(Key, Plaintext XOR tweak), ensuring data integrity and security even when the memory device is migrated to a new system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If individual cache lines are encrypted separately, then data security is improved, but the system becomes vulnerable to rudimentary attacks due to unpredictable memory access patterns

Engineering Contradiction:
Improvedata securityVSAvoidvulnerability to attacks
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent merges multiple cache lines into a superblock for joint encryption. Instead of encrypting individual cache lines separately, the encryption operation processes a group of cache lines together as a single unit, creating interdependencies that prevent attackers from analyzing individual lines in isolation.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary actions by pre-processing memory access patterns and pre-fetching cache lines into a buffer before encryption. This allows the encryption operation to work on a consolidated set of data rather than reacting to unpredictable individual access patterns, mitigating vulnerability to timing and access-pattern-based attacks.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If memory devices are migrated to different systems, then hardware flexibility is improved, but data security is compromised because encryption keys are system-specific

Engineering Contradiction:
Improvehardware flexibilityVSAvoiddata security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements a universal encryption approach where the same encryption algorithm and key derivation process can operate across different computing systems. The encryption scheme is designed to be system-agnostic, allowing memory devices to be migrated between systems while maintaining security through consistent cryptographic operations regardless of the host system.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system introduces an intermediary key derivation mechanism that translates system-specific identifiers into universal encryption keys. This intermediary process ensures that even though different systems may have different hardware identifiers, the resulting encryption keys follow a consistent cryptographic protocol that maintains security across system boundaries.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If conventional encryption algorithms are used, then implementation simplicity is improved, but security is weakened due to the need to individually encrypt cache lines

Engineering Contradiction:
Improveimplementation simplicityVSAvoidsecurity
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent segments the encryption process into distinct phases: a first encryption operation that processes multiple cache lines together in a batch, and a second encryption operation that handles individual cache line finalization. This segmentation allows the use of conventional encryption algorithms while achieving enhanced security through the structured multi-phase approach.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic encryption where the encryption parameters and operations adapt based on the specific access pattern and cache line grouping. Rather than using a static encryption scheme, the system dynamically adjusts which cache lines are grouped together and how they are processed, maintaining security while using conventional cryptographic primitives.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11816228B2Metadata tweak for channel encryption differentiation
Publication Date: 2023.11.14 ADVANCED MICRO DEVICES INC
  • US11816228B2 patent drawing
  • US11816228B2 patent drawing
  • US11816228B2 patent drawing

AI summary

Systems, apparatuses, and methods for implementing a metadata tweak for channel encryption differentiation are disclosed. A memory controller retrieves a device-unique identifier (ID) from a memory device coupled to a given memory channel slot. The memory controller uses the device-unique ID to generate a tweak value used for encrypting data stored in the device. In one scenario, the device-unique ID is embedded in the address bits of the tweak process. In this way, the memory device can be migrated to a different memory channel since the data can be decrypted independently of the channel. This is possible since the device-unique ID used for the tweak operation is retrieved from the metadata stored locally on the memory device. In one implementation, the memory device is a persistent dual in-line memory module (DIMM). In some implementations, the link between memory controller and memory device is a compute express link (CXL) compliant link.