Cache Memory Masking Using Initialization Vectors Against Side-Channel Attacks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing electronic computers are vulnerable to side-channel attacks, as plaintext data transmitted on internal buses of the system-on-a-chip can be easily obtained, compromising data security.

Innovation Solution

Implementing hardware circuits with masking and demasking modules to protect data and instructions transmitted on internal buses, using encryption and random initialization vectors to mask data and instructions, ensuring they remain encrypted and masked during transmission.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is transmitted in plaintext on internal buses for easy processing, then processing speed is improved, but data security deteriorates due to vulnerability to side-channel attacks

Engineering Contradiction:
Improvedata processing speedVSAvoiddata security
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The data transmitted on internal buses is segmented into multiple shares using secret sharing schemes. Instead of transmitting a single plaintext value, the data is divided into N shares that are transmitted separately. This segmentation prevents side-channel attacks from recovering the original data while maintaining processing efficiency through parallel operations on the shares.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Random masks are introduced as intermediary elements between the original data and the transmitted shares. These masks act as mediators that obscure the relationship between the plaintext data and the transmitted values, preventing direct observation of sensitive information while allowing legitimate processing to proceed.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If encryption is applied to data transmitted on internal buses, then data security is improved, but processing complexity increases

Engineering Contradiction:
Improvedata securityVSAvoidprocessing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The invention changes the parameter representation of data from standard plaintext to secret-shared values. By transforming data into a different parameter space (secret shares), the system achieves security without requiring traditional encryption/decryption operations, thus avoiding the associated processing overhead and complexity.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Instead of encrypting and decrypting data, the system creates multiple copies (shares) of the data that can be processed in parallel. These copies contain redundant information that allows recovery of the original data through simple addition operations, eliminating the need for complex cryptographic operations while maintaining security.

Inventive Principle:
Principle #26Copying

3Object-affected harmful factors

If masking is applied to all data transmissions, then side-channel attack resistance is improved, but performance overhead increases

Engineering Contradiction:
Improveside-channel attack resistanceVSAvoidsystem performance
Core Design Contradiction:
Object-affected harmful factorsVSProductivity

Solution Approach 1:

The masking operation is applied periodically at specific points in the data flow rather than continuously. Secret sharing is applied at data input points and before sensitive operations, while intermediate processing steps operate on the already-masked data without requiring additional masking operations, thus reducing overall performance overhead.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The secret sharing scheme is designed to be self-service in that the masking and unmasking operations are automatically handled through algebraic operations (addition and subtraction) rather than requiring complex cryptographic key management. The system itself manages the masking without external intervention, reducing performance overhead.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP4242884B1Method for protection against side-channel attacks
Publication Date: 2025.12.31 COMMISSARIAT A LENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES
  • EP4242884B1 patent drawingFigure 1~3
  • EP4242884B1 patent drawingFigure 2~5
  • EP4242884B1 patent drawing

AI summary

This process includes: - the generation (144) of an initialization vector, then - the production (146) of a new mask from the generated initialization vector and a secret key, - the masking (148) of a data to be written in an internal cache memory using the new mask constructed to obtain a masked data, - the recording (150), in the same word of the internal cache memory, of the masked data and the generated initialization vector, - the unmasking of the masked data includes: - the extraction (162) of the initialization vector contained in the word, - the reconstruction (164) of the mask from the extracted initialization vector and the secret key, then - the unmasking (166) of the masked data using the new mask thus reconstructed.