Montgomery Modular Multiplication on Reconfigurable Hardware: Systolic versus Multiplexed Implementation
Authors:
Open Access
- 1 January 2011
- journal article
- research article
- Published by Wiley in International Journal of Reconfigurable Computing
- Vol. 2011, 1-10
Abstract
This paper describes a comparison of two Montgomery modular multiplication architectures: a systolic and a multiplexed. Both implementations target FPGA devices. The modular multiplication is employed in modular exponentiation processes, which are the most important operations of some public-key cryptographic algorithms, including the most popular of them, the RSA. The proposed systolic architecture presents a high-radix implementation with a one-dimensional array of Processing Elements. The multiplexed implementation is a new alternative and is composed of multiplier blocks in parallel with the new simplified Processing Elements, and it provides a pipelined operation mode. We compare thetime×areaefficiency for both architectures as well as an RSA application. The systolic implementation can run the 1024 bits RSA decryption process in just 3.23 ms, and the multiplexed architecture executes the same operation in 4.36 ms, but the second approach saves up to 28% of logical resources. These results are competitive with the state-of-the-art performance.Keywords
Funding Information
- Financiadora de Estudos e Projetos
This publication has 7 references indexed in Scilit:
- A unified architecture for a public key cryptographic coprocessorJournal of Systems Architecture, 2008
- Scalable hardware implementing high-radix Montgomery multiplication algorithmJournal of Systems Architecture, 2007
- A scalable architecture for modular multiplication based on montgomery's algorithmIEEE Transactions on Computers, 2003
- Montgomery exponentiation needs no final subtractionsElectronics Letters, 1999
- Systolic modular multiplicationIEEE Transactions on Computers, 1993
- Modular multiplication without trial divisionMathematics of Computation, 1985
- A method for obtaining digital signatures and public-key cryptosystemsCommunications of the ACM, 1978