Variable Permutation Tables for Symmetric Block Encryption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional symmetric block encryption methods, such as DES, are vulnerable to side-channel attacks like learning attacks, which can exploit physical signals to determine secret keys, as the key schedule is not secure against such attacks.

Innovation Solution

A method for symmetric block encryption/decryption that generates variable permutation tables dynamically during each encryption/decryption process, using functions that vary from one execution to another, making it difficult for attackers to guess the secret key or round keys by probing the data produced during the permutation steps.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If constant permutation tables PC1 and PC2 are used in the key schedule, then the encryption process is simple and efficient, but the system becomes vulnerable to side-channel attacks such as learning attacks

Engineering Contradiction:
Improveencryption efficiencyVSAvoidsecurity against side-channel attacks
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies the dynamics principle by making the permutation tables variable instead of constant. The permutation tables are generated dynamically during each encryption operation using a key derivation function that processes the secret key and a random value, ensuring that the tables change with each encryption while maintaining the same underlying secret key. This resolves the contradiction by preserving encryption efficiency through the structured generation process while significantly enhancing security against side-channel attacks.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies parameter changes by modifying the permutation tables based on the secret key and a random value. Instead of using fixed constant tables, the permutation tables are generated with varying parameters (the random value) that change with each encryption operation. This allows the system to maintain efficiency through deterministic generation while achieving security through parameter variability that prevents attackers from building static models for side-channel attacks.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If variable permutation tables are generated dynamically during each encryption, then security against side-channel attacks is enhanced, but the device complexity increases

Engineering Contradiction:
Improvesecurity against side-channel attacksVSAvoidcomplexity of permutation table generation
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-defining the structure and methodology for generating variable permutation tables before the actual encryption process. The key derivation function and table generation algorithm are established in advance, allowing the system to efficiently generate appropriate permutation tables during each encryption operation without requiring complex real-time decision-making. This reduces device complexity by having the computational complexity predetermined and structured.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies self-service by designing a self-contained key derivation function that automatically generates the variable permutation tables from the secret key and a random value without requiring external intervention or complex external systems. The system serves itself by internally generating all necessary cryptographic parameters, reducing the need for additional security hardware or complex external key management infrastructure.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10819502B2Method for symmetric block encryption or decryption
Publication Date: 2020.10.27 IDEMIA FRANCE SAS
  • US10819502B2 patent drawing
  • US10819502B2 patent drawing
  • US10819502B2 patent drawing

AI summary

The present invention relates to a method for symmetrical encryption or decryption of a data block from a secret key (K), the method comprising steps of:permutation (100) of at least one portion of the secret key (K) by means of a first permutation table (PC1′) so as to produce initial data,execution of several iterations, an iteration comprising steps of:rotation (102) of data dependent on the initial data so as to produce shifted data,permutation (104) of the shifted data by means of a second permutation table (PC2′) so as to produce a round key,execution of a plurality of encryption rounds (200) from the data block, an encryption round (200) using one of the round keys,generation of at least one of the permutation tables (PC1′, PC2′), the generation comprisingdetermination of at least one function (F, G) variable from one encryption or decryption to another,composition of said function (F, G) with a predetermined permutation table (PC1, PC2),application of the inverse of said function (F, G) to data dependent on the data produced by the permutation step (100, 104) using the generated permutation table (PC1′, PC2′).