Cache Line Metadata Decryption Using Hash-Based Parallel Cryptography

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing encryption methods, such as AES-XTS, incur significant latency when encrypting and decrypting cache line metadata in modern computer systems, particularly in environments like CXL, which are sensitive to latency.

Innovation Solution

A cryptographic circuit that utilizes a hash function and a pseudorandom function to generate a bit sequence combined with cache line metadata for encryption/decryption, reducing the overall latency by performing these operations in parallel and requiring less than 17 cycles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional AES-XTS cryptographic methods are used to encrypt and decrypt cache line metadata along with data, then data security is improved, but decryption latency increases significantly (28 clock cycles)

Engineering Contradiction:
Improvedata securityVSAvoiddecryption latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the cryptographic processing into two independent parts: data encryption/decryption using AES-XTS and metadata encryption/decryption using a separate hash-based pseudorandom function. This segmentation allows both operations to proceed in parallel without interfering with each other, reducing total latency while maintaining security for both data and metadata.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by pre-computing hash values of encrypted data during the data encryption phase. These hash values are then used during decryption to quickly generate the pseudorandom key for metadata decryption, eliminating the need for separate cryptographic operations and reducing overall decryption latency.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If cryptographic operations are performed on both cache line data and metadata, then security protection is improved, but processing speed deteriorates

Engineering Contradiction:
Improvesecurity protectionVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides cryptographic processing into separate segments for data and metadata, allowing them to be processed independently and in parallel. The data portion uses AES-XTS while the metadata portion uses a hash-based pseudorandom function, enabling both to be secured without sequentially processing both, thus maintaining security while improving processing speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the cryptographic parameter approach by using different cryptographic methods for data and metadata: AES-XTS for data and a hash-based pseudorandom function for metadata. This parameter differentiation optimizes processing speed for each type while maintaining appropriate security levels, improving overall productivity without compromising security.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12634118B2Low latency metadata decryption using hash and pseudorandom functions
Publication Date: 2026.05.19 CRYPTOGRAPHY RESEARCH INC
  • US12634118B2 patent drawing
  • US12634118B2 patent drawing
  • US12634118B2 patent drawing

AI summary

Systems and techniques for cryptographically protecting data in a computer memory are disclosed. The techniques include dividing the data into a first portion and a second portion, encrypting the first portion of the data to create a first stored form of the data, encrypting the second portion of the data, and storing, in the computer memory, the first stored form of the data and a second stored form of the data. The techniques include, to encrypt the second portion, calculating a hash based on the first stored form of the data, applying a first pseudorandom function to the hash to obtain a bit sequence, and combining the bit sequence with the second portion of the data to obtain the second stored form of the data.