Scaling and reduction in the residue number system with pairs of conjugate moduli

The residue number system (RNS) with pairs of conjugate moduli uses a modulus set containing pairs of moduli of the form {2/sup k/-1, 2/sup k/+1}. This RNS provides a good trade-off between large dynamic range and channel width. It also supports efficient channel-width multiplication and addition as well as efficient conversions between weighted and RNS representations. This paper presents algorithms for exact scaling and Montgomery reduction in the RNS with pairs of conjugate moduli. The ability to perform these operations on very large integers suggest this RNS is suitable for the implementation of public key cryptosystems.

[1]  Ramdas Kumaresan,et al.  A fast and accurate RNS scaling technique for high speed signal processing , 1989, IEEE Trans. Acoust. Speech Signal Process..

[2]  Graham A. Jullien,et al.  An efficient tree architecture for modulo 2n+1 multiplication , 1996, J. VLSI Signal Process..

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

[4]  Alexander Skavantzos,et al.  Implementation issues of the two-level residue number system with pairs of conjugate moduli , 1999, IEEE Trans. Signal Process..

[5]  Neil Burgess Scaling an RNS number using the core function , 2003, Proceedings 2003 16th IEEE Symposium on Computer Arithmetic.

[6]  Jean-Claude Bajard,et al.  Modular multiplication and base extensions in residue number systems , 2001, Proceedings 15th IEEE Symposium on Computer Arithmetic. ARITH-15 2001.

[7]  Thanos Stouraitis,et al.  New power-of-2 RNS scaling scheme for cell-based IC design , 2003, IEEE Trans. Very Large Scale Integr. Syst..

[8]  Fred J. Taylor,et al.  An Autoscale Residue Multiplier , 1982, IEEE Transactions on Computers.

[9]  Graham A. Jullien,et al.  Residue Number Scaling and Other Operations Using ROM Arrays , 1978, IEEE Transactions on Computers.