Abstract

In literature, there are a number of cryptographic algorithms (RSA, ElGamal, NTRU, etc.) that require multiple computations of modulo multiplicative inverses. In this paper, we describe the modulo operation and we recollect the main approaches to computing the modulus. Then, given a and n positive integers, we present the sequence (zj)j≥0, where zj=zj−1+aβj−n, a<n and GCD(a,n)=1. Regarding the above sequence, we show that it is bounded and admits a simple explicit, periodic solution. The main result is that the inverse of a modulo n is given by a−1=⌊im⌋+1 with m=n/a. The computational cost of such an index i is O(a), which is less than O(nlnn) of the Euler’s phi function. Furthermore, we suggest an algorithm for the computation of a−1 using plain multiplications instead of modular multiplications. The latter, still, has complexity O(a) versus complexity O(n) (naive algorithm) or complexity O(lnn) (extended Euclidean algorithm). Therefore, the above procedure is more convenient when a<<n (e.g., a<lnn).

Highlights

  • The modulo operation returns the remainder of a division, after one number is divided by another number called “modulus”

  • In literature, there are a number of cryptographic algorithms (RSA, ElGamal, NTRU, etc.) that require multiple computations of modulo multiplicative inverses

  • We suggest an algorithm for the computation of a−1 using plain multiplications instead of modular multiplications

Read more

Summary

Introduction

The modulo operation returns the remainder of a division, after one number is divided by another number called “modulus”. A modular multiplicative inverse of an integer a is an integer x such that the product ax is congruent to 1 with respect to the modulus n, and it is denoted as ax ≡ 1 (mod n). If a has an inverse modulo n, there are an infinite number of solutions that belong to the congruence class with respect to the said modulus. The solution of Equation (1) has practical applications in the field of public-key cryptography and, in particular, in the Rivest–Shamir–Adleman (RSA) algorithm [1] where encryption and decryption are performed by using a pair of large prime numbers that are multiplicative inverses with respect to a selected modulus. Cryptographic algorithms rely on multiple computations of modulo multiplicative inverses.

Main Approaches to the Computation of Modulus
Euler’s Phi Function
Extended Euclidean Algorithm
Definitions and Main Results
Properties of the Sequence zj
Limitations and Future Challenges
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call