Skip to main content

Multi-core FPGA Implementation of ECC with Homogeneous Co-Z Coordinate Representation

  • Conference paper
  • First Online:
Cryptology and Network Security (CANS 2016)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 10052))

Included in the following conference series:

Abstract

Elliptic Curve Cryptography is gaining popularity, and optimization opportunities exist on several different levels: algorithm, architecture, and/or implementation. To support a wide variety of curves and at the same time resist timing/power-based side-channel attacks, our scalar multiplication is implemented using the Co-Z ladder due to Hutter, Joye, and Sierra. We analyze the parallelism of the Co-Z ladder and show that a 12-core (though inefficient) system can complete a ladder step with the fastest speed. We also combine optimizations at every level in an efficient multi-core FPGA implementation. The size of the prime modulus can also be changed easily, for which we have implemented and tested up to 528-bits used in the NIST P-521 curve. Based on this building block, we have developed a multi-core architecture that supports multiple parallel modular additions, multiplications, and inverses.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Koblitz, N.: Ellptic curve cryptosystems. Math. Comput. 48(177), 203–209 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  2. Miller, V.S.: Use of elliptic curves in cryptography. In: Williams, H.C. (ed.) CRYPTO 1985. LNCS, vol. 218, pp. 417–426. Springer, Heidelberg (1986). doi:10.1007/3-540-39799-X_31

    Google Scholar 

  3. Bernstein, D.J., Birkner, P., Joye, M., Lange, T., Peters, C.: Twisted edwards curves. In: Vaudenay, S. (ed.) AFRICACRYPT 2008. LNCS, vol. 5023, pp. 389–405. Springer, Heidelberg (2008). doi:10.1007/978-3-540-68164-9_26

    Chapter  Google Scholar 

  4. Peter, L.: Montgomery: speeding the pollard and elliptic curve methods of factorization. Math. Comput. 48(177), 243–264 (1987)

    Article  MATH  Google Scholar 

  5. Peter, L.: Montgomery: modular multiplication without trial division. Math. Comput. 44(170), 519–521 (1985)

    Article  MATH  Google Scholar 

  6. Land, I., Kenny, R., Brown, L., Pelt, R.: Shifting from software to hardware for network security, White Paper. Altera, February 2016. https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/wp/wp-01261-shifting-from-software-to-hardware-for-network-security.pdf

  7. Zynq-7000 All Programmable SoCs Product Tables and Product Selection Guide. Xilinx (2015). http://www.xilinx.com/support/documentation/selection-guides/zynq-7000-product-selection-guide.pdf

  8. Hutter, M., Joye, M., Sierra, Y.: Memory-constrained implementations of elliptic curve cryptography in Co-Z coordinate representation. In: Nitaj, A., Pointcheval, D. (eds.) AFRICACRYPT 2011. LNCS, vol. 6737, pp. 170–187. Springer, Heidelberg (2011). doi:10.1007/978-3-642-21969-6_11

    Chapter  Google Scholar 

  9. Cohen, H., Miyaji, A., Ono, T.: Efficient elliptic curve exponentiation using mixed coordinates. In: Ohta, K., Pei, D. (eds.) ASIACRYPT 1998. LNCS, vol. 1514, pp. 51–65. Springer, Heidelberg (1998). doi:10.1007/3-540-49649-1_6

    Google Scholar 

  10. Kocher, P.C.: Timing attacks on implementations of Diffie-Hellman, RSA, DSS, and other systems. In: Koblitz, N. (ed.) CRYPTO 1996. LNCS, vol. 1109, pp. 104–113. Springer, Heidelberg (1996). doi:10.1007/3-540-68697-5_9

    Google Scholar 

  11. Coron, J.-S.: Resistance against differential power analysis for elliptic curve cryptosystems. In: Koç, Ç.K., Paar, C. (eds.) CHES 1999. LNCS, vol. 1717, pp. 292–302. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  12. Bernstein, D.J., Lange, T.: Explicit-Formulas Database. https://hyperelliptic.org/EFD/

  13. National Institute of Standards and Technology: Digital Signature Standard. FIPS Publication 186-2, February 2000

    Google Scholar 

  14. Brainpool, E.C.C.: ECC brainpool standard curves and curve generation. http://www.ecc-brainpool.org/download/Domain-parameters.pdf

  15. Research, C.: SEC 2: Recommended Elliptic Curve Domain Parameters (2000)

    Google Scholar 

  16. Kwok, Y.-K., Ahmad, I.: Static scheduling algorithms for allocating directed task graphs to multiprocessors. J. ACM CSUR 31(4), 406–471 (1999)

    Article  Google Scholar 

  17. Pedro, M.C., Massolino, L.B., Chaves, R., Mentens, N.: Low Power Montgomery Modular Multiplication on Reconfigurable Systems, Crypto ePrint 2016/280

    Google Scholar 

  18. LaForest, C.E., Gregory Steffan, J.: Efficient multi-ported memories for FPGAs. In: Proceedings of the ACM(SIGDA) FPGA, pp. 41–50 (2010)

    Google Scholar 

  19. Laforest, C.E., Liu, M.G., Rapati, E.R., Steffan, J.G.: Multi-ported memories for FPGAs via XOR. In: Proceedings of the ACM FPGA, pp. 209–218 (2012)

    Google Scholar 

  20. Laforest, C.E., Li, Z., O’rourke, T., Liu, M.G., Steffan, J.G.: Composing multi-ported memories on FPGAs. J. ACM Trans. Reconfig. Technol. Syst. 7(3) (2014). Article 16

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Bo-Yuan Peng .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Peng, BY., Hsu, YC., Chen, YJ., Chueh, DC., Cheng, CM., Yang, BY. (2016). Multi-core FPGA Implementation of ECC with Homogeneous Co-Z Coordinate Representation. In: Foresti, S., Persiano, G. (eds) Cryptology and Network Security. CANS 2016. Lecture Notes in Computer Science(), vol 10052. Springer, Cham. https://doi.org/10.1007/978-3-319-48965-0_42

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-48965-0_42

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-48964-3

  • Online ISBN: 978-3-319-48965-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics