Skip to main content
Log in

A Custom Instruction Approach for Hardware and Software Implementations of Finite Field Arithmetic over \(\mathbb{F}_{{2^{{163}} }} \) using Gaussian Normal Bases

  • Published:
The Journal of VLSI Signal Processing Systems for Signal, Image, and Video Technology Aims and scope Submit manuscript

Abstract

This paper presents a comprehensive analysis of the design of custom instructions in a reconfigurable hardware platform dedicated to accelerate arithmetic operations in the binary field \(\mathbb{F}_{{2^{{163}} }} \), using a Gaussian normal basis representation. The resulting platform is capable of running real applications, thus allowing a precise measurement of the execution overheads, and a fair comparison of the hardware and software speedups at several implementation levels. By using this approach, we determine which field operations (e.g., multiplication) are better suited to constrained environments, and which ones provide an enhanced performance in general-purpose systems. Experimental results reveal that by using our fastest field multiplier implemented as a custom instruction in a combined hardware/software approach, we accelerate point multiplication (the fundamental operation in Elliptic Curve Cryptography) over 126 times.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13

Similar content being viewed by others

References

  1. IEEE Std. 1363–2000, “IEEE Standard Specification for Public-Key Cryptography,” IEEE, 2000. (January)

  2. Altera Corporation, “Nios II Processor Reference Handbook,” 1st edition, Altera Corporation, 2004. (May)

  3. W. Mao, “Modern Cryptography: Theory and Practice,” 1st edition, Prentice Hall, 2003. (July)

  4. M. Rosing, “Implementing Elliptic Curve Cryptography,” Manning Publications, 1998.

  5. A. Menezes, “Elliptic Curve Public Key Cryptosystems,” Kluwer, 1993.

  6. D. Hankerson, A. J. Menezes, and S. Vanstone, “Guide to Elliptic Curve Cryptography,” 1st edition, Springer, 2004. (January)

  7. A. J. Menezes, P. C. Van Oorschot, and S. A. Vanstone, “Handbook of Applied Cryptography,” CRC, 1996. (October)

  8. V. S. Miller, “Use of Elliptic Curves in Cryptography,” in Proc. Crypto’85, 1986, pp. 417–426.

  9. N. Koblitz, “Elliptic Curve Cryptosystems,” Math. Comput., vol. 48, 1987, pp. 203–209.

    Article  MATH  MathSciNet  Google Scholar 

  10. D. W. Ash, I. F. Blake, and S. A. Vanstone, “Low Complexity Normal Bases,” Discrete Appl. Math., vol. 25, 1989, pp. 191–210.

    Article  MATH  MathSciNet  Google Scholar 

  11. R. Dahab, D. Hankerson, F. Hu, M. Long, J. López, and A. Menezes, “Software Multiplication using Gaussian Normal Bases,” IEEE Trans. Comput., vol. 55, no. 8, 2006, pp. 974–984. (August)

  12. J. López and R. Dahab, “Fast Multiplication on Elliptic Curves over GF(2m) without pre-computation,” in Proc. of the I Workshop on Cryptographic Hardware and Embedded Systems (CHES), LNCS 1717, 1999, pp. 316–327. (January)

  13. J. López, “A note on Multiplication over GF(2m) using Gaussian Normal Bases,” Manuscript, 2004.

  14. A. Reyhani-Masoleh and M. A. Hasan. “Fast Normal Basis Multiplication Using General Purpose Processors,” in Selected Areas in Cryptography (SAC 2001), LNCS 2259, 2001, pp. 230–244.

  15. A. Reyhani-Masoleh and M. A. Hasan, “Fast Normal Basis Multiplication Using General Purpose Processors,” IEEE Trans. Comput., vol. 52, no. 11, 2003, pp. 1379–1390. (November)

    Article  Google Scholar 

  16. J. Groβschaedl and E. Savas, “Instruction Set Extensions for Fast Arithmetic in Finite Fields GF(p) and GF(2m),” in CHES 2004, LNCS 3156, 2004, pp. 133–147.

  17. T. Kerins, E. M. Popovici, W. P. Marnane, and P. Fitzpatrick, “Fully Parameterizable Elliptic Curve Cryptography Processor over GF(2m),” in FPL 2002, LNCS2438, 2002, pp. 750–759.

  18. N. Telle, W. Luk, and R. C. C. Cheung, “Customizing Hardware Designs for Elliptic Curve Cryptography,” in SAMOS 2004, LNCS 3133, 2004, pp. 274–283.

  19. V. Trujillo, J. Velasco, and J. López, “Design of an Elliptic Curve Cryptoprocessor over GF(2163),” in XI Iberchip, 2005. (March)

  20. J. Lutz and A. Hasan, “High Performance FPGA based Elliptic Curve Cryptographic Co-Processor,” in Proc. of the International Conference on Information Technology: Coding and Computing (ITCC 2004), vol. 2, 2004, pp. 486–492.

    Article  Google Scholar 

  21. J. Wolkerstorfer and W. Bauer, “A PCI-Card for Accelerating Elliptic Curve Cryptography,” in Proceedings of Austrochip 2002, 2002.

  22. M. Ernst, M. Jung, F. Madlener, S. Huss, and R. Blümel, “A Reconfigurable System on Chip Implementation for Elliptic Curve Cryptography over GF(2m),” in CHES 2002, LNCS 2523, 2002, pp. 381–399.

  23. S. Tillich and J. Groβschaedl, “A Simple Architectural Enhancement for Fast and Flexible Elliptic Curve Cryptography over Binary Finite Fields GF(2m),” in Proceedings of 9th Asia-Pacific Conference on Advances in Computer Systems Architecture (ACSAC 2004), pp. 282–295, 2004.

  24. K. H. Leung, K. W. Ma, W. K. Wong, and P. H. W. Leong, “FPGA Implementation of a Microcoded Elliptic Curve Cryptographic Processor,” in Proc. of the 2000 IEEE Symposium on Field-Programmable Custom Computing Machines, 2000, pp. 68–76.

  25. P. Ning and Y. Yin, “Efficient Software Implementation for Finite Field Multiplication in Normal Basis,” in Information and Communications Security 2001. LNCS 2229, 2001, pp. 177–189.

  26. J. López and R. Dahab, “High-speed software multiplication in F(2m),” in INDOCRYPT 2000, LNCS 1977, 2000, pp. 203–212.

  27. N. Gura, S. Shantz, H. Eberle, D. Finchelstein, S. Gupta, V. Gupta, and D. Stebila, “An End-to-End Systems Approach to Elliptic Curve Cryptography,” in CHES 2002, LNCS 2523, 2002, pp. 349–365.

  28. P. Leong and I. Leung, “A Microcoded Elliptic Curve Processor using FPGA Technology,” IEEE Transactions on VLSI, vol. 10, no. 5, 2002, pp. 550–559.

    Article  Google Scholar 

  29. T. Itoh and S. Tsujii, A Fast Algorithm for Computing Multiplicative Inverses in GF(2m) using Normal Bases,” Inf. Comput., vol. 78, no. 3, 1988, pp. 171–177.

    Article  MATH  MathSciNet  Google Scholar 

  30. W. Diffie and M. E. Hellman, “New Directions in Cryptography,” IEEE Trans. Inf. Theory, vol. IT-22, no. 6, 1976, pp. 644–654.

    Article  MathSciNet  Google Scholar 

Download references

Acknowledgements

We would like to thank FAPESP (Grant 03/11674-0) and CNPq (Grants 55.2117/2002-1 and 30.1731/2003-9) for the financial support to this work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Marcio Juliato.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Juliato, M., Araujo, G., López, J. et al. A Custom Instruction Approach for Hardware and Software Implementations of Finite Field Arithmetic over \(\mathbb{F}_{{2^{{163}} }} \) using Gaussian Normal Bases. J VLSI Sign Process Syst Sign Image Video Technol 47, 59–76 (2007). https://doi.org/10.1007/s11265-006-0015-8

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-006-0015-8

Keywords

Navigation