NTRU LPRime Side-Channel Attack Prevention via Order Table Shuffling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The Nth Degree Truncated Polynomial Ring Units (NTRU) LPRime algorithm is vulnerable to single-trace side-channel attacks, despite being secure against simple power analysis, necessitating a countermeasure to prevent the acquisition of secret information.

Innovation Solution

A method and apparatus that generate an order table with position index values for bit strings in the NTRU LPRime algorithm, shuffle the sort order based on random numbers, and determine the generation order to increase the complexity of single-trace attacks by swapping position index values according to a specific equation, thereby preventing secret information exposure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the NTRU LPRime algorithm is implemented with standard decryption procedure, then the decryption function is achieved, but the system becomes vulnerable to single-trace side-channel attacks

Engineering Contradiction:
Improvesecurity against side-channel attacksVSAvoidcomplexity of decryption process
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-generating an order table that contains all possible permutations of bit position indices before the decryption operation. This pre-computed table is then used during decryption to randomize the generation order of secret bits without performing actual shuffling operations at decryption time, thus enhancing security while maintaining efficiency

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an order table as an intermediary data structure that mediates between the secret key and the decryption output. This order table acts as a buffer that randomizes the bit generation sequence, preventing direct correlation between power consumption traces and secret bit positions, thereby defending against side-channel attacks

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the position index values are shuffled based on random numbers, then the security against single-trace attacks is improved, but the computational overhead increases

Engineering Contradiction:
Improvesecurity against single-trace attacksVSAvoidtime for shuffling operation
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The shuffling operation is performed in advance during key generation or initialization phase, creating a pre-computed order table. This eliminates the need for time-consuming shuffling operations during actual decryption, as the randomization pattern is already established and can be reused

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The order table can be reused for multiple decryption operations with the same secret key, making the shuffling operation periodic rather than repeated for each decryption. This amortizes the computational cost of shuffling across multiple operations, reducing the time loss per decryption

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS11853419B2Apparatus and method for preventing side channel attack for NTRU LPRime algorithm
Publication Date: 2023.12.26 SAMSUNG SDS CO LTD
  • US11853419B2 patent drawing
  • US11853419B2 patent drawing
  • US11853419B2 patent drawing

AI summary

A method for preventing side-channel attack according to an embodiment includes generating an order table which includes a position index value for each bit value of a bit string that is secret information to be generated through a decryption algorithm of an Nth Degree Truncated Polynomial Ring Units (NTRU) LPRime algorithm, shuffling a sort order of the position index value for the each bit value in the order table based on a random number, determining a generation order for the each bit value according to the sort order of the position index value for the each bit value in the order table, and generating the secret information through the decryption algorithm. The secret information is generated by generating the each bit value according to the determined generation order.