Balanced Ladder Computations for Side-Channel Resistance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cryptographic computations, such as those in RSA and ECC, are vulnerable to side-channel attacks due to power consumption variations caused by branching instructions during ladder-type operations, which can reveal secret information.

Innovation Solution

The implementation of balanced ladder computations that eliminate branching instructions by using conditional swapping and dummy exchanges to reduce power differences, thereby hindering attackers' ability to correlate power consumption with secret information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If branching instructions are used in ladder-type cryptographic computations, then the computation can be performed efficiently, but power consumption variations occur that reveal secret information

Engineering Contradiction:
Improvecomputation efficiencyVSAvoidpower consumption variations
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent changes the control parameter from bit value (0 or 1) to swap direction (forward or backward). By using a direction variable that increments or decrements based on bit values, and swapping elements in different directions, the patent eliminates conditional branching while maintaining computation efficiency. This parameter transformation resolves the contradiction by removing the source of power variations while preserving computational functionality.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces a direction variable as an intermediary between the secret key bits and the swap operations. Instead of directly conditionally swapping based on bit values, the direction variable mediates the process by accumulating direction changes. This intermediary eliminates the direct correlation between secret key bits and power-consuming conditional operations, while still achieving the required computational effect through controlled swaps.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If conditional swapping based on secret key bits is performed, then the cryptographic computation is correct, but the power consumption pattern correlates with the secret key

Engineering Contradiction:
Improvecomputation correctnessVSAvoidsecret information leakage
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent performs preliminary actions by pre-defining forward and backward swap operations before the main computation loop. The direction variable is initialized and updated in advance, and the swap operations are prepared as template instructions. This preliminary preparation allows the main loop to execute uniform swap operations without conditional branching, ensuring both computational correctness and uniform power consumption patterns that prevent secret information leakage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent inverts the traditional approach by instead of conditionally performing swaps based on bit values, it unconditionally performs swaps with directions determined by a separate direction variable. This inversion transforms the conditional operation into an unconditional one, maintaining computational correctness through the direction control while eliminating the power consumption patterns that would otherwise reveal secret key information.

Inventive Principle:
Principle #13The other way round (Inversion)

3Reliability

If dummy exchanges are added to balance power consumption, then resistance to side-channel attacks improves, but device complexity increases

Engineering Contradiction:
Improveresistance to side-channel attacksVSAvoidalgorithm complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the dummy exchange operations with the actual computational swaps by using the same swap infrastructure and control mechanism. The direction variable naturally produces both computational and balancing swaps without requiring separate dummy operation code paths. This merging approach achieves power consumption balancing and side-channel resistance while minimizing additional complexity by reusing existing computational resources.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The direction variable serves dual purposes: it controls the actual cryptographic computation and simultaneously generates the balancing swaps needed for power consumption equalization. The same control mechanism that drives the computational correctness also provides the power-balancing effect, making the system self-sufficient and avoiding the need for separate complexity-intensive balancing mechanisms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12003633B2Techniques, devices, and instruction set architecture for balanced and secure ladder computations
Publication Date: 2024.06.04 NVIDIA CORP
  • US12003633B2 patent drawing
  • US12003633B2 patent drawing
  • US12003633B2 patent drawing

AI summary

Disclosed are apparatuses, systems, and techniques to perform and facilitate secure ladder computational operations whose iterative execution depends on secret values associated with input data. Disclosed embodiments balance execution of various iterations in a way that is balanced for different secret values, significantly reducing vulnerability of ladder computations to adversarial side-channel attacks.