Randomized Butterfly Operations for Side-Channel Protection in NTT
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Dilithium digital signature schemes are vulnerable to side-channel snooping attacks due to their reliance on polynomial multiplication operations, which can expose secret information, posing a risk in secure communication systems.
Innovation Solution
Implementing a number theoretic transform (NTT) with randomized butterfly operations and modular reduction algorithms to protect against side-channel attacks, using techniques like shuffling and rejection sampling to randomize the order of computations and reduce power/EM traces, thereby enhancing security against sophisticated attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If polynomial multiplication using secret polynomial is implemented in Dilithium, then digital signature functionality is achieved, but side channel attacks can expose secret information
Solution Approach 1:
The patent applies dynamics by randomizing the order of butterfly operations in the NTT algorithm. Instead of executing operations in a fixed deterministic sequence, the system dynamically shuffles the operation order using random permutation arrays. This dynamic reordering ensures that power consumption patterns and electromagnetic emissions vary with each execution, preventing side-channel attackers from correlating consistent traces with secret polynomial coefficients.
Solution Approach 2:
The patent changes the parameter of operation sequencing from fixed to variable. By introducing random permutation arrays that shuffle the order of butterfly operations, the system transforms the execution parameters dynamically. This parameter change ensures that identical cryptographic operations produce different physical side-channel signatures, thereby protecting secret information while maintaining computational correctness through modular reduction.
2Reliability
If randomization techniques are applied to protect against side channel attacks, then security is improved, but computational overhead increases
Solution Approach 1:
The patent applies preliminary action by pre-generating random permutation arrays before executing the NTT algorithm. These permutation arrays are created in advance and stored for use during the cryptographic operation. By preparing the randomization structure beforehand, the system minimizes the computational overhead during the actual signature generation, as the shuffling operation simply applies pre-computed permutation indices rather than generating randomness on-the-fly.
Solution Approach 2:
The patent uses copying by creating multiple permutation arrays that can be reused across different NTT operations. Instead of generating entirely new random sequences for each cryptographic operation, the system can replicate and reuse validated permutation structures, reducing the computational burden of randomization while maintaining security. This copying approach allows efficient batch processing of signatures with consistent protection mechanisms.
3Object-affected harmful factors
If butterfly operations are randomized to reduce side channel leaks, then attack resistance increases, but operation complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the NTT computation into discrete butterfly operations that can be independently shuffled. Each butterfly operation is treated as a separate executable unit with a specific index in the permutation array. This segmentation allows the system to randomize the execution order of individual operations without affecting the mathematical correctness of the overall computation, as long as each operation is applied to the correct inputs according to the permutation scheme.
Solution Approach 2:
The patent introduces permutation arrays as intermediary structures that mediate between the fixed algorithm specification and the randomized execution. These arrays serve as a mapping layer that translates deterministic algorithm steps into variable execution sequences. The permutation arrays act as intermediaries that preserve the logical correctness of the NTT computation while enabling physical obfuscation against side-channel analysis by decoupling algorithmic structure from execution timing.
Data Source
AI summary
An apparatus comprises an input register comprising an input polynomial, a processing datapath communicatively coupled to the input register comprising a plurality of compute nodes to perform a number theoretic transform (NTT) algorithm on the input polynomial to generate an output polynomial in NTT format. The plurality of compute nodes comprises at least a first butterfly circuit to perform a series of butterfly calculations on input data and a randomizing circuitry to randomize an order of the series of butterfly calculations.


