S-box Table Alignment for Block Cipher Processing Time Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Low-function microcomputers used in integral systems face challenges in reducing processing time when implementing block ciphers in software due to the need for numerous instructions in referencing S-box tables.

Innovation Solution

An encryption device and method that generates a round key and uses an exclusive OR operation to align the S-box table to a 2m-bit boundary, reducing the number of instructions required for data mixing by storing the table entry and using it as a table index for efficient data mixing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional S-box table referencing method is used, then data mixing can be performed correctly, but processing time increases due to numerous instructions required

Engineering Contradiction:
Improveprocessing timeVSAvoidinstruction execution efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing the sum of the S-box table starting address and round key in a table-entry storage unit before the encryption process begins. This pre-computation eliminates the need to perform this addition operation during each encryption cycle, thereby reducing the number of instructions executed and decreasing processing time when referencing the S-box table.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If S-box table is referenced using traditional method, then encryption security is maintained, but device complexity increases due to additional instructions

Engineering Contradiction:
Improveencryption securityVSAvoidinstruction set complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the computationally intensive operation (adding table starting address and round key) from the main encryption loop and stores it separately in a table-entry storage unit. This extraction simplifies the instruction set required during encryption by eliminating repetitive complex operations, thereby reducing device complexity while maintaining encryption security through the preserved S-box substitution mechanism.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9571269B2Encryption device, encryption method and program
Publication Date: 2017.02.14 NEC CORP
  • US9571269B2 patent drawing
  • US9571269B2 patent drawing
  • US9571269B2 patent drawing

AI summary

A problem to be solved is to reduce processing time when a block cipher which refers to a table is implemented in software.An encryption device includes: a round-key generation module which generates a round key from a secret key; a table-entry generation module which adds a starting address of an n-bit S-box table (n≧2) aligned to a 2m-bit boundary (m≧n) in a memory, and the round key, and holds an obtained value as a table entry; and a data mixing module which mixes data by referring to the S-box stored in the first memory, by using, as a table index, an exclusive OR between the table entry stored in the second memory and the data.