Masked AES Field Inversion Against High-Order Side-Channel Attacks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for securing AES block cipher algorithms against high-order side-channel attacks, such as Differential Power Analysis (DPA), are inefficient and resource-intensive, particularly in systems with limited RAM, due to the need for large tables and recomputation of masking functions during the SubBytes step.

Innovation Solution

A method involving (n+1)-additive sharing and (n+1)-multiplicative sharing of the internal state, combined with a Dirac function to handle field inversions, using precomputed tables and efficient Dirac function implementations to secure the SubBytes step against high-order side-channel attacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a RAM table is used to store precomputed values for the Dirac function, then the computational speed is improved, but the memory requirement increases significantly (from 32 bits to 256 bits)

Engineering Contradiction:
Improvecomputational speedVSAvoidmemory requirement
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent precomputes and stores the Dirac function values in a RAM table during system initialization, so that during actual cryptographic operations, the system only needs to perform table lookups rather than computing the Dirac function in real-time. This preliminary action significantly speeds up the SubBytes step execution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the Dirac function implementation in the form of a precomputed lookup table, separate from the main cryptographic computation. This allows the actual encryption operation to simply reference the precomputed values without performing complex calculations during the critical security operations.

Inventive Principle:
Principle #26Copying

2Quantity of substance

If the Dirac function is computed on the fly without precomputed tables, then the memory requirement is reduced, but the computational complexity and execution time increase

Engineering Contradiction:
Improvememory requirementVSAvoidexecution time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent performs the computationally intensive precomputation of the Dirac function values during system initialization or offline processing, before the actual cryptographic operations begin. This separates the heavy computation from the time-critical encryption/decryption operations, reducing execution time during security-sensitive operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses a small, fixed-size lookup table that is precomputed and stored in read-only memory or non-volatile memory. This disposable precomputed structure avoids the need for large RAM tables while providing fast access during operations, effectively trading off the one-time computation cost for repeated fast lookups.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Reliability

If the internal state is masked using multiplicative sharing, then the security against side-channel attacks is improved, but the complexity of handling zero values increases

Engineering Contradiction:
Improvesecurity against side-channel attacksVSAvoidcomplexity of handling zero values
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces the Dirac function as an intermediary component that detects whether a masked value is zero and provides appropriate handling. This intermediary function allows the system to maintain multiplicative sharing for security while systematically addressing the zero-value problem through a well-defined mathematical approach.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the parameter representation by using the Dirac function to transform the masked value into a form that is safe for inversion. When a value is zero, the Dirac function detects this and modifies the handling accordingly, allowing the system to work with multiplicative shares without encountering division-by-zero errors.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12413387B2Method for securing an AES block cipher algorithm against high-order side-channel attacks
Publication Date: 2025.09.09 THALES DIS FRANCE SA
  • US12413387B2 patent drawing
  • US12413387B2 patent drawing
  • US12413387B2 patent drawing

AI summary

Provided is a method for securing against high-order side-channel attacks wherein a substep of field inversion is performed by a cryptographic device. The method includes computing (S1) a Dirac output value, adding (S2) said Dirac output value to one of said shares of the first set of shares to obtain a second set of shares, performing a conversion of the second set of shares (S3) from said (n+1) additive sharing to a (n+1)-multiplicative sharing, performing an inversion of each share of the (n+1)-multiplicative sharing (S4), performing a conversion of the inverted shares (S5) from said multiplicative sharing to a (n+1)-additive sharing to obtain a third set of shares, and adding (S6) said Dirac output value to one of said shares of the third set of shares. Other embodiments disclosed.