# Montgomery reduction within the context of residue number system arithmetic

@article{Bajard2017MontgomeryRW, title={Montgomery reduction within the context of residue number system arithmetic}, author={Jean-Claude Bajard and Julien Eynard and Nabil Merkiche}, journal={Journal of Cryptographic Engineering}, year={2017}, volume={8}, pages={189-200} }

This paper is a survey of Montgomery reduction in the context of residue number system arithmetic. We present the main variants of RNS Montgomery reduction, some efficient embedded hardware implementations, applications in asymmetric cryptography (RSA, ECC, pairing, lattices), to end with the use of RNS against side-channel analysis and fault attacks.

## 16 Citations

Improved Sum of Residues Modular Multiplication Algorithm

- Computer Science, MathematicsCryptogr.
- 2019

This paper presents an algorithm to calculate the precise value of “ X mod p ” directly in the RNS representation of an integer directly on XILINX FPGAs.

VHDL Implementation of 4096-bit RNS Montgomery Modular Exponentiation for RSA Encryption

- Computer Science, Mathematics
- 2019

This work aims to improve the performance of modular exponentiation for an existing FPGA platform containing a soft core RISC-V processor by introducing a peripheral that performs Montgomery multiplication with 4096-bit operands.

Implementation of RSA Signatures on GPU and CPU Architectures

- Computer Science, MathematicsIEEE Access
- 2020

This paper reports a constant-time CPU and GPU software implementation of the RSA exponentiation by using algorithms that offer a first-line defense against timing and cache attacks and reports that a combination of the schoolbook and Karatsuba algorithms for integer multiplication along with Montgomery reduction, yields the fastest modular multiplication procedure.

RNS Montgomery reduction algorithms using quadratic residuosity

- Computer Science, MathematicsJournal of Cryptographic Engineering
- 2018

New RNS Montgomery reduction algorithms are proposed, the main part of which is twice a matrix multiplication, which makes it possible to remove some multiplication steps from conventional algorithms, and thus the new algorithms are simpler and have higher regularity compared with conventional ones.

An efficient implementation of the Chinese Remainder Theorem in minimally redundant Residue Number System

- Computer ScienceComput. Sci.
- 2020

This paper proposes a minimally redundant RNS, which provides low computational complexity of the rank calculation and the effectiveness of the novel method is analyzed concerning conventional non-redundant RNS.

Using Floating-Point Intervals for Non-Modular Computations in Residue Number System

- Computer ScienceIEEE Access
- 2020

This work proposes to compute the interval evaluation of the fractional representation of an RNS number in floating-point arithmetic of limited precision and proposes new algorithms for magnitude comparison and general division in RNS and implements them for GPUs using the CUDA platform.

Enabling Faster Operations for Deeper Circuits in Full RNS Variants of FV-like Somewhat Homomorphic Encryption

- Computer Science, MathematicsIACR Cryptol. ePrint Arch.
- 2020

A set of optimizations to a popular RNS variant of the B/FV encryption scheme that allow for the use of significantly larger ciphertext moduli without increased overhead due to excessive numbers of RNS components or computational overhead, as well as computational optimizations.

Efficient Algorithms for Sign Detection in RNS Using Approximate Reciprocals

- Computer Science, MathematicsIEICE Trans. Fundam. Electron. Commun. Comput. Sci.
- 2021

This work used the CRT to derive an equation approximating a value of x relative to M, the product of moduli, and proposed two algorithms that efficiently evaluate the equation and output a sign bit and the expected number of steps of these algorithms is of order n.

Fast Power-of-Two RNS Scaling Algorithm for Large Dynamic Ranges

- Computer Science2017 IVth International Conference on Engineering and Telecommunication (EnT)
- 2017

This paper presents a new efficient algorithm for scaling by power of two in the residue number system (RNS) that focuses on arbitrary moduli sets with large dynamic ranges and requires only machine-precision integer and floating-point operations.

Efficient Cryptographic Hardware for Safety Message Verification in Internet of Connected Vehicles

- Computer Science, MathematicsACM Transactions on Internet Technology
- 2022

This paper proposes a fully RNS based ECC scalar multiplication co-processor for NIST-P256r1 and Brainpool 256r1 standard curves and improved the Scalar multiplication speed using NAF and DBC numbering systems.

## References

SHOWING 1-10 OF 54 REFERENCES

Modulo Reduction in Residue Number Systems

- Computer Science, MathematicsIEEE Trans. Parallel Distributed Syst.
- 1995

This paper shows a new combination of residue number systems with efficient modulo reduction methods, and two methods are compared, and the faster one is scrutinized in detail.

a full RNS implementation of RSA

- Computer Science, MathematicsIEEE Transactions on Computers
- 2004

We present the first implementation of RSA in the residue number system (RNS) which does not require any conversion, either from radix to RNS beforehand or RNS to radix afterward. Our solution is…

Implementation of RSA Algorithm Based on RNS Montgomery Multiplication

- Computer ScienceCHES
- 2001

An implementation of RSA cryptosystem using the RNS Montgomery multiplication is described, and an implementation method using the Chinese Remainder Theorem (CRT) is presented.

FPGA Implementation of Pairings Using Residue Number System and Lazy Reduction

- Computer Science, MathematicsCHES
- 2011

This paper presents two FPGA-based high speed pairing designs using the Residue Number System and lazy reduction, and shows that by combining RNS, which is naturally suitable for parallel architectures, and lazy Reduction, the speed of pairing computation in hardware can be largely increased.

Leak Resistant Arithmetic

- Computer Science, MathematicsCHES
- 2004

It is shown how the usage of Residue Number Systems can easily be turned into a natural defense against many side-channel attacks (SCA) and its capacities to defeat timing, power, DPA and electromagnetic attacks are presented.

A coprocessor for secure and high speed modular arithmetic

- Computer Science, MathematicsIACR Cryptol. ePrint Arch.
- 2011

A coprocessor design for fast arithmetic over large numbers of cryptographic sizes that uses the residue number system (RNS) in an efficient manner to protect from leakage and fault, while keeping its ability to fast execute modular arithmetic with large numbers.

Double Level Montgomery Cox-Rower Architecture, New Bounds

- Computer Science, MathematicsCARDIS
- 2014

The conditions of Kawamura’s theorem for the base extension without error are rewritten to define the maximal range of the set from which the moduli can be chosen to build a base, and a procedure to compute correctly the truncation function of the Cox module is given.

Trade-Off Approaches for Leak Resistant Modular Arithmetic in RNS

- Computer Science, MathematicsACISP
- 2015

This paper proposes a variant of the LRA in RNS: to change only one or a few moduli of the RNS basis, which reduces the cost of the randomization and makes it possible to be executed at each loop of a modular exponentiation.

Implementing cryptographic pairings

- Mathematics, Computer Science
- 2007

The state-of-the-art in cryptographic pairing implementation is reviewed, starting with a basic Miller algorithm for the Tate pairing, and a series of optimizations and tricks are applied to improve performance.

Efficient RNS Implementation of Elliptic Curve Point Multiplication Over ${\rm GF}(p)$

- Computer Science, MathematicsIEEE Transactions on Very Large Scale Integration (VLSI) Systems
- 2013

A new hardware architecture for ECPM over GF(p) is presented, based on the residue number system (RNS), which encompasses RNS bases with various word-lengths in order to efficiently implement RNS Montgomery multiplication.