Finite Field Polynomial Multiplication in the Frequency Domain with Application to Elliptic Curve Cryptography

We introduce an efficient method for computing Montgomery products of polynomials in the frequency domain. The discrete Fourier transform (DFT) based method originally proposed for integer multiplication provides an extremely efficient method with the best asymptotic complexity, i.e. O(mlogmloglogm), for multiplication of m-bit integers or (m–1)st degree polynomials. However, the original DFT method bears significant overhead due to the conversions between the time and the frequency domains which makes it impractical for short operands as used in many applications. In this work, we introduce DFT modular multiplication which performs the entire modular multiplication (including the reduction step) in the frequency domain, and thus eliminates costly back and forth conversions. We show that, especially in computationally constrained platforms, multiplication of finite field elements may be achieved more efficiently in the frequency domain than in the time domain for operand sizes relevant to elliptic curve cryptography (ECC). To the best of our knowledge, this is the first work that proposes the use of frequency domain arithmetic for ECC and shows that it can be efficient.

[1]  P. L. Montgomery Modular multiplication without trial division , 1985 .

[2]  J. Pollard,et al.  The fast Fourier transform in a finite field , 1971 .

[3]  Adi Shamir,et al.  A method for obtaining digital signatures and public-key cryptosystems , 1978, CACM.

[4]  Elwyn R. Berlekamp,et al.  Algebraic coding theory , 1984, McGraw-Hill series in systems science.

[5]  Ian F. Blake,et al.  Elliptic curves in cryptography , 1999 .

[6]  Thomas Plantard,et al.  Efficient multiplication in GF(p/sup k/) for elliptic curve cryptography , 2003, Proceedings 2003 16th IEEE Symposium on Computer Arithmetic.

[7]  R. McEliece Finite Fields for Computer Scientists and Engineers , 1986 .

[8]  L. Imbert,et al.  Efficient Multiplication in GF(pk) for Elliptic Curve Cryptography , 2003 .

[9]  Christof Paar,et al.  Generalizations of the Karatsuba Algorithm for Efficient Implementations , 2006, IACR Cryptol. ePrint Arch..

[10]  ÇETIN K. KOÇ,et al.  Montgomery Multiplication in GF(2k) , 1998, Des. Codes Cryptogr..

[11]  K. Conrad,et al.  Finite Fields , 2018, Series and Products in the Development of Mathematics.

[12]  Laurent Imbert,et al.  a full RNS implementation of RSA , 2004, IEEE Transactions on Computers.

[13]  A. Menezes,et al.  Applications of Finite Fields , 1992 .

[14]  Allan O. Steinhardt,et al.  Fast algorithms for digital signal processing , 1986, Proceedings of the IEEE.

[15]  Anatolij A. Karatsuba,et al.  Multiplication of Multidigit Numbers on Automata , 1963 .

[16]  J.L. Massey,et al.  Theory and practice of error control codes , 1986, Proceedings of the IEEE.

[17]  Charles M. Rader,et al.  Discrete Convolutions via Mersenne Transrorms , 1972, IEEE Transactions on Computers.

[18]  William Ellison,et al.  Prime numbers , 1985 .

[19]  Arnold Schönhage,et al.  Schnelle Multiplikation großer Zahlen , 1971, Computing.

[20]  Tolga Acar,et al.  Analyzing and comparing Montgomery multiplication algorithms , 1996, IEEE Micro.

[21]  J. Tukey,et al.  An algorithm for the machine calculation of complex Fourier series , 1965 .