Cache Memory Random Access for Side-Channel Attack Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computing systems implementing cryptographic methods are vulnerable to side-channel attacks, particularly power consumption attacks, which exploit measurable physical characteristics like power consumption to derive secret information.

Innovation Solution

A mechanism is introduced to generate a random power profile by enabling a built-in self-test (BIST) module to perform random memory accesses, obscuring power consumption patterns, and using a random timeslot generator to further obfuscate power usage, thereby preventing attackers from deriving sensitive information from power consumption data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cryptographic operations are performed using standard cache memory access patterns, then processing efficiency is maintained, but power consumption patterns become predictable and vulnerable to side-channel attacks

Engineering Contradiction:
ImprovesecurityVSAvoidcache access control
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The cache memory is divided into multiple segments or portions, each accessible under different conditions. The patent implements a mechanism where the cache is segmented into portions that can be selectively accessed based on the operation type, allowing secure operations to use randomized access patterns while non-secure operations use standard patterns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The cache access pattern is made dynamic by introducing randomization. The patent employs a random access generator that dynamically selects which cache portions to access and in what order, changing the access pattern based on random factors rather than following a fixed or predictable sequence.

Inventive Principle:
Principle #15Dynamics

2Reliability

If random access patterns are implemented in cache memory to obscure power consumption, then resistance to side-channel attacks improves, but access time and processing speed increase

Engineering Contradiction:
ImprovesecurityVSAvoidaccess time
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent applies randomization only to specific portions of cache memory rather than the entire cache. By selectively randomizing access patterns in only certain cache segments during secure operations, the system achieves security benefits while minimizing the impact on overall access performance.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The random access pattern is implemented periodically or in controlled intervals rather than continuously. The system switches between standardized access patterns and randomized access patterns based on the operation type, applying randomization only when needed for security-critical operations.

Inventive Principle:
Principle #19Periodic action

3Reliability

If a portion of cache memory is dedicated to random access operations, then power consumption profiling is obscured, but available cache capacity for normal operations decreases

Engineering Contradiction:
ImprovesecurityVSAvoidcache memory capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The cache memory portions are designed to serve multiple functions. The same cache segments that store data for normal operations are also used for randomized access operations during secure cryptographic processing, eliminating the need for separate dedicated memory regions.

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

Solution Approach 2:

Cache portions used for randomized access during secure operations are temporarily allocated for that purpose and then recovered for normal use afterward. The system dynamically allocates and deallocates cache portions based on operational requirements, ensuring that memory resources are efficiently utilized.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS9448942B2Random access of a cache portion using an access module
Publication Date: 2016.09.20 NXP USA INC
  • US9448942B2 patent drawing
  • US9448942B2 patent drawing
  • US9448942B2 patent drawing

AI summary

A data processing system having a first processor, a second processor, a local memory of the second processor, and a built-in self-test (BIST) controller of the second processor which can be randomly enabled to perform memory accesses on the local memory of the second processor and which includes a random value generator is provided. The system can perform a method including executing a secure code sequence by the first processor and performing, by the BIST controller of the second processor, BIST memory accesses to the local memory of the second processor in response to the random value generator. Performing the BIST memory accesses is performed concurrently with executing the secure code sequence.