High-Performance FPGA Implementation of Elliptic Curve Cryptography Processor over Binary Field GF(2^163)

Md Selim Hossain, Ehsan Saeedi, Yinan Kong

2016

Abstract

Elliptic curve cryptography (ECC) plays a vital role in pass secure information among different wireless devices. This paper presents a fast, high-performance hardware implementation of an ECC processor over binary field GF(2^m) using a polynomial basis. A high-performance elliptic curve point multiplier (ECPM) is designed using an efficient finitefield arithmetic unit in affine coordinates, where ECPM is the key operation of an ECC processor. It has been implemented using the National Institute of Standards and Technology (NIST) recommended curves over the field GF(2^163). The proposed design is synthesized in field-programmable gate array (FPGA) technology with the VHDL. The delay of ECPM in a modern Xilinx Kintex-7 (28-nm) technology is 1.06 ms at 306.48 MHz. The proposed ECC processor takes a small amount of resources on the FPGA and needs only 2253 slices without using any DSP slices. The proposed design provides nearly 50% better delay performance than recent implementations.

References

  1. Chelton, W. and Benaissa, M. (2008). Fast elliptic curve cryptography on FPGA. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 16(2):198- 205.
  2. Ghanmy, N., Fourati, L. C., and Kamoun, L. (2014). Elliptic curve cryptography for WSN and SPA attacks method for energy evaluation. Journal of Networks, 9(11):2943-2950.
  3. Guo, J.-H. and Wang, C.-L. (1998). Systolic array implementation of euclid's algorithm for inversion and division in GF(2m). IEEE Trans. Comput., 47(10):1161- 1167.
  4. Hankerson, D., Menezes, A. J., and Vanstone, S. (2003). Guide to Elliptic Curve Cryptography. SpringerVerlag New York, Inc., Secaucus, NJ, USA.
  5. Hassan, M. N. and Benaissa, M. (2010). Efficient time-area scalable ECC processor using ยต-coding technique. In Third International Workshop, WAIFI, Arithmetic of Finite Fields, LNCS 6087, pages 250-268.
  6. IEEE (2000). IEEE standard specifications for public-key cryptography. IEEE Std 1363-2000, pages 1-228.
  7. Koblitz, N. (1987). Elliptic curve cryptosystems. In Math. Computation, volume 48 (177), pages 203-209.
  8. Koblitz, N., Menezes, A., and Vanstone, S. (2000). The state of elliptic curve cryptography. Des. Codes Cryptography, 19(2-3):173-193.
  9. Kong, Y. and Phillips, B. (2009). Fast scaling in the residue number system. Very Large Scale Integration (VLSI) Systems, IEEE Transactions on, 17(3):443-447.
  10. Machhout, M., Guitouni, Z., Torki, K., Khriji, L., and Tourki, R. (2010). Coupled FPGA/ASIC implementation of elliptic curve crypto-processor. International Journal of Network Security & its Applications (IJNSA), 2(2):100-112.
  11. Miller, V. S. (1986). Use of elliptic curves in cryptography. In Lecture Notes in Computer Sciences; 218 on Advances in cryptology-CRYPTO 85 , pages 417-426, New York, NY, USA. Springer-Verlag New York, Inc.
  12. NIST (2000). NIST- National Institute of Standards and Technology, Digital Signature Standard, FIPS Publication 186-2.
  13. Park, J. and Hwang, J.-T. (2005). FPGA and ASIC implementation of ECC processor for security on medical embedded system. In Proceedings of the Third International Conference on Information Technology and Applications (ICITA'05) Volume 2 - Volume 02, ICITA 7805, pages 547-551, Washington, DC, USA. IEEE Computer Society.
  14. Phillips, B., Kong, Y., and Lim, Z. (2010). Highly parallel modular multiplication in the residue number system using sum of residues reduction. Applicable Algebra in Engineering, Communication and Computing, 21(3):249-255.
  15. Reaz, M. B. I., Jalil, J., Husian, H., and Hasim, F. H. (2012). FPGA implementation of elliptic curve cryptography engine for personal communication systems. WSEAS Tran. on Circuits and Systems, 11(3):82-91.
  16. Rivest, R. L., Shamir, A., and Adleman, L. (1978). A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM, 21(2):120-126.
  17. SEC2 (2000). SEC 2: Recommended elliptic curve domain parameters, standards for efficient cryptography, Certicom Research.
  18. Shieh, M.-D., Chen, J.-H., Lin, W.-C., and Wu, C.-M. (2009). An efficient multiplier/divider design for elliptic curve cryptosystem over GF(2m). Journal of Information Science and Engineering, 25:1555-1553.
  19. Smyth, N., McLoone, M., and McCanny, J. V. (2006). An adaptable and scalable asymmetric cryptographic processor. In ASAP, pages 341-346. IEEE Computer Society.
  20. Sutter, G., Deschamps, J., and Imana, J. (2013). Efficient elliptic curve point multiplication using digit-serial binary field operations. IEEE Transactions on Industrial Electronics, 60(1):217-225.
  21. Wolkerstorfer, J. (Springer, 2002). Dual-field arithmetic unit for GF(p) and GF(2m). In CHES, Lecture Notes in Computer Science, pages 500-514.
Download


Paper Citation


in Harvard Style

Hossain M., Saeedi E. and Kong Y. (2016). High-Performance FPGA Implementation of Elliptic Curve Cryptography Processor over Binary Field GF(2^163) . In Proceedings of the 2nd International Conference on Information Systems Security and Privacy - Volume 1: ICISSP, ISBN 978-989-758-167-0, pages 415-422. DOI: 10.5220/0005741604150422


in Bibtex Style

@conference{icissp16,
author={Md Selim Hossain and Ehsan Saeedi and Yinan Kong},
title={High-Performance FPGA Implementation of Elliptic Curve Cryptography Processor over Binary Field GF(2^163)},
booktitle={Proceedings of the 2nd International Conference on Information Systems Security and Privacy - Volume 1: ICISSP,},
year={2016},
pages={415-422},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005741604150422},
isbn={978-989-758-167-0},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 2nd International Conference on Information Systems Security and Privacy - Volume 1: ICISSP,
TI - High-Performance FPGA Implementation of Elliptic Curve Cryptography Processor over Binary Field GF(2^163)
SN - 978-989-758-167-0
AU - Hossain M.
AU - Saeedi E.
AU - Kong Y.
PY - 2016
SP - 415
EP - 422
DO - 10.5220/0005741604150422