FPGA ECC Scalar Multiplication via Pipeline Modular Arithmetic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing Elliptic Curve Cryptography (ECC) systems face limitations in resistance against side-channel attacks and calculation efficiency, particularly in scalar multiplication operations, which affect security and performance.

Innovation Solution

Implementing an FPGA-based system and method using an improved Montgomery ladder algorithm with a pipeline structure for modular arithmetic calculations, including a modular adder/subtractor and multiplier, to enhance calculation efficiency and resistance against side-channel attacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If software implementation of ECC scalar multiplication is used, then development flexibility is maintained, but calculation speed and security resistance are insufficient

Engineering Contradiction:
Improvecalculation speedVSAvoidhardware structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The ECC scalar multiplication process is divided into multiple pipeline stages including point doubling, point addition, and modular arithmetic operations. Each stage processes specific portions of the calculation independently, allowing parallel execution and improving overall calculation speed while maintaining manageable hardware complexity through functional decomposition.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system employs a configurable pipeline structure that can dynamically adjust the number of pipeline stages and operation sequences based on security requirements and performance needs. The Montgomery ladder algorithm implementation allows flexible scheduling of point operations to achieve optimal balance between speed and security resistance.

Inventive Principle:
Principle #15Dynamics

2Reliability

If traditional ECC calculation methods are used, then implementation is simple, but resistance against side-channel attacks is weak

Engineering Contradiction:
Improveresistance against side-channel attacksVSAvoidcalculation structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system pre-calculates and stores certain elliptic curve parameters and intermediate values in lookup tables before the actual scalar multiplication operation. This preliminary preparation allows the main calculation to proceed with standardized operations that are more resistant to side-channel attacks, as the critical secret-dependent operations are minimized and standardized.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The Montgomery ladder algorithm implements a continuous calculation flow where point doubling and point addition operations are performed in a fixed, regular sequence regardless of the secret key bits. This continuous, regular pattern prevents timing attacks and other side-channel attacks by eliminating data-dependent control flow variations.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If more calculation operations are performed to improve security, then resistance against attacks increases, but calculation time increases

Engineering Contradiction:
Improveencryption securityVSAvoidcalculation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system changes the mathematical parameters and coordinate systems used in elliptic curve operations, specifically employing projective coordinates and Montgomery ladder algorithm to reduce the number of expensive modular inversion operations. This parameter transformation maintains security while significantly reducing calculation time by replacing time-consuming operations with faster alternatives.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The implementation performs a fixed number of Montgomery ladder steps that is sufficient to achieve the required security level, rather than performing excessive operations. The pipeline structure ensures that each necessary operation is executed efficiently without redundant calculations, achieving the optimal balance between security and performance.

Inventive Principle:
Principle #16Partial or excessive action

4Productivity

If FPGA hardware implementation is used, then calculation speed improves, but cost and device complexity increase

Engineering Contradiction:
Improvecalculation speedVSAvoidmanufacturing cost
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The FPGA implementation uses a universal modular arithmetic unit that can perform addition, subtraction, multiplication, and modular reduction operations. This multi-functional unit is controlled by configuration signals to execute different cryptographic algorithms and operations, reducing the need for separate dedicated hardware circuits and thereby lowering overall manufacturing cost while maintaining high calculation speed.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11368303B2System and method for calculating faster ECC scalar multiplication on FPGA
Publication Date: 2022.06.21 PUSAN NAT UNIV IND UNIV COOPERATION FOUND
  • US11368303B2 patent drawing
  • US11368303B2 patent drawing
  • US11368303B2 patent drawing

AI summary

Disclosed are a system and method for calculating elliptic curve cryptography scalar multiplication using an FPGA (Field Programmable Gate Array), the system and method scheduling calculation, which is used in a Montgomery ladder Algorithm, and enabling efficient calculation through an improved modular arithmetic calculation method. The system for calculating elliptic curve cryptography (ECC) scalar multiplication using an FPGA includes: a scheduler implementing Montgomery ladder step calculation in a pipeline structure; a pipeline modular adder/subtractor implementing n-bit modular addition in a d-stage pipeline structure; and a modular multiplier implementing n-bit modular multiplication in a 10-stage pipeline structure up to maximum 256 bits.