This paper presents a processor architecture for elliptic curve cryptography computations over GF(p). The speed to compute the Elliptic-curve point multiplication over the prime fields GF(p) is increased by using the maximum degree of parallelism, and by carefully selecting the most appropriate coordinates system. The proposed Elliptic Curve processor is implemented using FPGAs. The time, area and throughput results are obtained, analyzed, and compared with previously proposed designs showing interesting performance and features.
This is a preview of subscription content, log in to check access.
Buy single article
Instant access to the full article PDF.
Price includes VAT for USA
Subscribe to journal
Immediate online access to all issues from 2019. Subscription will auto renew annually.
This is the net price. Taxes to be calculated in checkout.
Miller, V. (1986). Elliptic curves in cryptography. Lecture Notes in Computer Science No. 218 on Advances in Cryptology Crypto’85 (pp. 417–246). Germany: Springer-Verlag Berlin.
Koblitz, N. (1987). Elliptic curve cryptosystems. Mathematics on Computation, 48(177), 203–209. doi:10.2307/2007884.
Cohen, H., Miyaji, A., & Ono T. (1998) Efficient elliptic curve exponentiation using mixed coordinates. Lecture Notes in Computer Science on Advances in Cryptology—ASIACRYPT 98 (vol. 1514, pp. 51–65).
Certicom, http://www.secg.org/collateral/proposal-for-sec1v2.pdf, Certicom Proposal to Revise SEC 1: Elliptic Curve Cryptography, Version 1.0, Prepared by Daniel R. L. Brown, January 14, 2005, accessed 29 April 2008.
Certicom, http://www.certicom.com/index.php?action=ecc_tutorial,home, Online elliptic curve cryptography tutorial, accessed 29 April 2008.
Gutub, A. (2006). Merging GF(p) elliptic curve point adding and doubling on pipelined VLSI cryptographic ASIC architecture. International Journal of Computer Science and Network Security—IJCSNS, 3A(6), 44–52.
Gutub, A. (2003). VLSI core architecture for GF(p) elliptic curve crypto processor. IEEE 10 th International Conference on Electronics, Circuits and Systems—ICECS (pp. 84–87). United Arab Emirates: University of Sharjah.
Miyaji, A. (1992). Elliptic curves over Fp suitable for cryptosystems. Lecture Notes In Computer Science; Vol. 718 on Advances in cryptology—AUSCRUPT 92 (pp. 479–491). Australia.
Gutub, A., & Ibrahim, M. (2003). High radix parallel architecture for GF(p) elliptic curve processor. IEEE Conference on Acoustics, Speech, and Signal Processing, ICASSP 2003 (pp. 625–628). Hong Kong.
Montgomery, P. (1985). Modular multiplication without trial division. Mathematics on Computation, 44(170), 519–521. doi:10.2307/2007970.
Blum, T., & Paar, C. (1999). Montgomery modular exponentiation on reconfigurable hardware. 14 th IEEE Symposium on Computer Arithmetic—ARITH-14 (pp. 70–77).
Brickell, E. (1983). A fast modular multiplication algorithm with application to two key cryptography. In D. Chaum, R. Rivest & A. Sherman (Eds.), Advances in Cryptology—CRYPTO 82 (pp. 51–60). Ney York: Plenum. Santa Barbara, California, USA.
http://www.nsa.gov last acceded in 29 April 2008.
Bernal, A., & Guyot, A. (1998). Design of a modular multiplier based on Montgomery’s algorithm. 13 th Conference on Design of Circuits and Integrated Systems—DCIS’98 (pp. 680–685).
Wu, C., & Chou, Y. (1994). General modular multiplication by block multiplication and table lookup. IEEE International Symposium on Circuits and Systems—ISCAS’94 (vol. 4, pp. 295–298). London, UK.
Eldridge, S., & Walter, C. (1993). Hardware implementation of Montgomery’s modular multiplication algorithm. IEEE Transactions on Computers, 42(6), 693–699. doi:10.1109/12.277287.
Eberle, H., Gura, N., Shantz, S., Gupta, V., Rarick, L., & Sundaram, S. (2004). A public-key cryptographic processor for RSA and ECC. Proceedings of the 15 th IEEE International Conference on Application-Specific Systems, Architectures and Processors (pp. 98–110).
Satoh, A., & Takano, K. (2003). A scalable dual-field elliptic curve cryptographic processor. IEEE Transactions on Computers, 52(4), 449–460. doi:10.1109/TC.2003.1190586.
Orlando, G., & Paar, C. (2001). A scalable GF(p) elliptic curve processor architecture for programmable hardware. Lecture Notes in Computer Science on Cryptographic Hardware and Embedded Systems—CHES, 2001, 348–363.
Ors, S., Batina, L., Preneel, B., & Vandewalle, J. (2003). Hardware implementation of an elliptic curve processor over GF(p). Proceedings of IEEE International Conference on Application-Specific Systems, Architectures, and Processors—ASAP’03 (pp. 433–443).
Gutub, A. (2007). Efficient utilization of scalable multipliers in parallel to compute GF(p) elliptic curve cryptographic operations. Kuwait Journal of Science & Engineering (KJSE) (vol. 34, no. 2, pp. 165–182).
Francis, C., Daly, A., & Marnane, W. (2005). A scalable dual mode arithmetic unit for public key cryptosystems. International Conference on Information Technology: Coding and Computing—ITCC’05 (vol. I, pp. 568–573).
Authors would like to thank both Computer Engineering Departments in Jordan University of Science and Technology, Irbid, Jordan, and King Fahd University of Petroleum & Minerals (KFUPM), Dhahran, Saudi Arabia, for supporting this research and the fruitful cooperation and collaboration between the universities in the region.
About this article
Cite this article
Tawalbeh, L.A., Mohammad, A. & Gutub, A.A. Efficient FPGA Implementation of a Programmable Architecture for GF(p) Elliptic Curve Crypto Computations. J Sign Process Syst Sign Image Video Technol 59, 233–244 (2010). https://doi.org/10.1007/s11265-009-0376-x
- Modulo multipliers
- Elliptic curve cryptography
- FPGA hardware designs