Cryptographic Circuitry Nested Masking Side-Channel Attacks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Block encryption algorithms are vulnerable to side-channel attacks, where attackers exploit information such as power consumption and execution time to deduce encryption keys, and existing countermeasures like data masking can be insufficient against second-order attacks.

Innovation Solution

The method involves executing cryptographic operations in multiple rounds, where the content of specific registers is masked using random values generated by a random number generator, alternating between different masks for odd and even rounds to prevent unauthorized data recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data masking is applied to protect against side-channel attacks, then security against first-order attacks is improved, but vulnerability to second-order attacks remains

Engineering Contradiction:
Improvesecurity against side-channel attacksVSAvoidmasking mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies nested masking by introducing multiple layers of masking variables. The first masking variable masks the data, and the second masking variable masks the first masking variable itself. This nested structure creates a hierarchical protection scheme where each layer protects the previous layer, effectively defending against second-order side-channel attacks that could exploit single-layer masking vulnerabilities.

Inventive Principle:
Principle #7Nested doll (Nesting)

Solution Approach 2:

The patent introduces intermediate masking variables that act as mediators between the original data and the encrypted output. These intermediate variables (first and second masking variables) serve as protective buffers that prevent direct correlation between physical measurements and the actual secret data, thereby blocking side-channel attack paths while maintaining cryptographic functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If multiple masking variables are used to protect against second-order attacks, then security is improved, but computational overhead increases

Engineering Contradiction:
Improvesecurity against second-order attacksVSAvoidencryption processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the masking process into distinct phases corresponding to different rounds of the cryptographic algorithm. During odd-numbered rounds, the first masking variable is updated and applied; during even-numbered rounds, the second masking variable is updated and applied. This segmentation allows the system to manage multiple masking variables efficiently by activating only the necessary variable in each round, reducing redundant computations while maintaining security.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements periodic updating of masking variables based on round parity. The first masking variable is periodically updated during odd rounds, and the second masking variable is periodically updated during even rounds. This periodic action ensures that masking variables are refreshed at appropriate intervals to maintain security against second-order attacks, while the alternating pattern optimizes computational efficiency by avoiding unnecessary updates in each round.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12158978B2Protection of data processed by an encryption algorithm
Publication Date: 2024.12.03 STMICROELECTRONICS (ROUSSET) SAS
  • US12158978B2 patent drawing
  • US12158978B2 patent drawing
  • US12158978B2 patent drawing

AI summary

The present disclosure relates to a method for protecting a first data item applied to a cryptographic algorithm, executed by a processor, wherein said algorithm is a per-round algorithm, with each round processing contents of first, second and third registers, the content of the second register being masked, during first parity rounds, by the content of a fourth register and the content of the third register being masked, during second parity rounds, by the content of a fifth register.