Description
The Polynomial Modular Number System (PMNS) is an integer number system that aims to speed up arithmetic operations modulo a prime number p. This system is defined by a tuple (p, n, g, r, E), where p, n, g and r are positive integers, and E is a polynomial with integer coefficients, having g as a root modulo p.
Arithmetic operations in PMNS rely heavily on Euclidean lattices. Modular reduction in this system is done using a lattice of zeros L (here, the set of polynomials in Z[X], with degrees smaller than n, having g as a root modulo p).
Many works have shown that the PMNS can be an efficient alternative to the classical representation for modular arithmetic and cryptographic size integers.
In this presentation, we first present the PMNS and its arithmetic. Next, we introduce new properties of the lattice L, regarding a Montgomery-like coefficient reduction method. Then, we study the redundancy in the PMNS and explain how to choose the parameters for the desired redundancy in the system. Finally, we show how to use some properties of Euclidean lattices for efficient modular arithmetic and equality test within the PMNS.
Reference: F. Y. Dosso, A. Berzati, N. El Mrabet, and J. Proy. PMNS revisited for consistent redundancy and equality test. Cryptology ePrint Archive, Paper 2023/1231, (\url{https://eprint.iacr.org/2023/1231})