Pre-tweak Value Cache for Low-Latency Memory Encryption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processor-external memory systems in automotive applications face latency issues due to long access times and security vulnerabilities, with existing encryption algorithms like AES-XTS unable to efficiently encrypt or decrypt arbitrary memory blocks within a memory sector, leading to variable decryption latency and excessive data processing.

Innovation Solution

A data cryptographic device is implemented with a pre-tweak generator, cache memory, and a block cipher (AES-XTS circuit) that allows for low-latency encryption and decryption of arbitrary memory blocks by using a pre-tweak value cache and tweak generator to optimize memory access and provide secure encryption and authentication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If existing encryption algorithms like AES-XTS are used to encrypt memory blocks, then security is improved, but decryption latency increases and becomes variable

Engineering Contradiction:
ImprovesecurityVSAvoiddecryption latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent pre-calculates and stores tweak values for all possible memory block addresses within a sector in a lookup table during system initialization. When decryption is needed, the appropriate tweak value is immediately retrieved from the table without requiring real-time calculation, thus eliminating variable latency while maintaining AES-XTS security.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If encryption is performed on arbitrary memory blocks within a sector, then data security is improved, but processing time increases excessively

Engineering Contradiction:
Improvedata securityVSAvoiddata processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent pre-computes all necessary tweak values for every possible memory block address in a sector during system initialization and stores them in a lookup table. This allows arbitrary memory blocks to be encrypted or decrypted immediately by simply looking up the pre-computed tweak value, avoiding excessive processing time while maintaining security for any memory block.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If real-time tweak value calculation is performed for each memory access, then encryption security is maintained, but access latency increases

Engineering Contradiction:
Improveencryption securityVSAvoidmemory access speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent calculates and stores all possible tweak values in a lookup table during system initialization. During memory access operations, the appropriate tweak value is immediately retrieved from the table based on the memory block address, eliminating real-time calculation overhead while maintaining the security properties of AES-XTS encryption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of all possible tweak values in a lookup table during initialization, allowing the original calculation logic to be replaced by simple table lookups during runtime. This copying approach trades initialization time for significantly faster access operations while preserving encryption security.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11438154B2Data cryptographic devices and memory systems
Publication Date: 2022.09.06 INFINEON TECHNOLOGIES AG
  • US11438154B2 patent drawing
  • US11438154B2 patent drawing
  • US11438154B2 patent drawing

AI summary

A data cryptographic device may include a pre-tweak generator to generate pre-tweak values, a pre-tweak value cache memory to store one or more pre-tweak values generated by the pre-tweak generator, and a pre-tweak value selector to check whether a pre-tweak value for an input memory address is stored in the pre-tweak value cache memory. The data cryptographic device may further include a tweak generator to generate a tweak value based on the selected pre-tweak value, and a block cipher to perform at least one block cipher algorithm to at least one of encrypt data, encrypt and authenticate data, decrypt encrypted data, decrypt and verify encrypted and authenticated data, using a cryptographic key and the generated tweak value.