Finite Field Multiplication Masking for Secure Cryptography

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for securing data in cryptographic applications, especially in software implementations, face challenges when applying non-linear functions due to inefficiencies and increased silicon area requirements, and are not effective in masking data from attackers observing electronic circuits.

Innovation Solution

A method for representing and processing elements of a finite field using a plurality of values, where multiplication is performed by picking random values and applying specific addition and multiplication operations to maintain masking, allowing non-linear functions to be applied without compromising data security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple masks are used to mask the same data item, then security against attacks is improved, but the complexity of processing the masked data increases

Engineering Contradiction:
ImprovesecurityVSAvoidprocessing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The data item is segmented into multiple masked representations (d values), where each value represents a portion of the original data combined with random masks. This segmentation allows the data to be processed in distributed form while maintaining security, as each individual masked value reveals no information about the original data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of processing by associating each masked value with an integer index and processing them in a structured sequence. The method transforms the problem from simple parallel masking to an ordered processing sequence where each step builds upon previous results, enabling systematic handling of multiple masks.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If non-linear functions are applied to masked data, then cryptographic functionality is improved, but the masking security is compromised due to increased observable electrical phenomena

Engineering Contradiction:
Improvecryptographic functionalityVSAvoidobservable electrical phenomena
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary actions by pre-processing the masked data values in a specific sequence before applying the non-linear function. Random values are introduced and processed in advance to ensure that when the non-linear function is applied, the masking properties are preserved. This preliminary structuring prevents the emergence of observable electrical phenomena that would compromise security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Random values serve as intermediaries between the original data and the non-linear function application. These random values are introduced at strategic points in the processing sequence to mask the intermediate results, ensuring that even when non-linear operations are performed, the underlying data remains protected from observation through electrical phenomena.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If software implementation is used to avoid circuit glitches, then security against certain attacks is improved, but processing efficiency deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes the parameters of processing by introducing a structured sequence with specific ordering rules and integer associations. This parameter change enables the software implementation to process masked data more efficiently by avoiding random access patterns and reducing the number of required operations, thereby improving productivity while maintaining security.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9722773B2Method of determining a representation of a product of a first element and a second element of a finite set, method of evaluating a function applied to an element of a finite set and associated devices
Publication Date: 2017.08.01 IDEMIA FRANCE SAS
  • US9722773B2 patent drawing
  • US9722773B2 patent drawing
  • US9722773B2 patent drawing

AI summary

A method for determining a representation of a product of a first element and a second element is disclosed comprising, picking a random value for each pair of a first integer between 1 and d and a second integer greater than the first integer, adding the random value to the product of a first value and a second value, and adding the result of the first addition and the product of the first value and the second value. Then summing, for each integer between 1 and d, a product of the first and second values associated with the integer, the random values associated with the pairs of which the first integer is the integer concerned, and the values obtained for the pairs of which the second integer is the integer concerned.