Abstract
We present an implementation of elliptic curves and of hyperelliptic curves of genus 2 and 3 over prime fields. To achieve a fair comparison between the different types of groups, we developed an ad-hoc arithmetic library, designed to remove most of the overheads that penalize implementations of curve-based cryptography over prime fields. These overheads get worse for smaller fields, and thus for larger genera for a fixed group size. We also use techniques for delaying modular reductions to reduce the amount of modular reductions in the formulae for the group operations.
The result is that the performance of hyperelliptic curves of genus 2 over prime fields is much closer to the performance of elliptic curves than previously thought. For groups of 192 and 256 bits the difference is about 14% and 15% respectively.
Chapter PDF
Similar content being viewed by others
Keywords
References
AMD Corporation. AMD-K6-2 Processor Data Sheet, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/21850.pdf
Avanzi, R.M.: Countermeasures against differential power analysis for hyperelliptic curve cryptosystems. In: Walter, C.D., Koç, Ç.K., Paar, C. (eds.) CHES 2003. LNCS, vol. 2779, pp. 366–381. Springer, Heidelberg (2003)
Avanzi, R.M., Mihăilescu, P.M.: Generic Efficient Arithmetic Algorithms for PAFFs (Processor Adequate Finite Fields) and Related Algebraic Structures. In: Matsui, M., Zuccherato, R.J. (eds.) SAC 2003. LNCS, vol. 3006, pp. 320–334. Springer, Heidelberg (2004)
Avanzi, R.M.: A note on the sliding window integer recoding and its left-to-right analogue (submitted)
Bosselaers, A., Govaerts, R., Vandewalle, J.: Comparison of three modular reduction functions. In: Stinson, D.R. (ed.) CRYPTO 1993. LNCS, vol. 773, pp. 175–186. Springer, Heidelberg (1994)
Brown, M.K., Hankerson, D., Lopez, J., Menezes, A.: Software implementation of the NIST elliptic curves over prime fields. In: Naccache, D. (ed.) CT-RSA 2001. LNCS, vol. 2020, pp. 250–265. Springer, Heidelberg (2001)
Cantor, D.: Computing in the Jacobian of a Hyperelliptic Curve. Math. Comp. 48, 95–101 (1987)
Cohen, H., Miyaji, A., Ono, T.: Efficient elliptic curve exponentiation. In: Han, Y., Quing, S. (eds.) ICICS 1997. LNCS, vol. 1334, pp. 282–290. Springer, Heidelberg (1997)
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)
Comba, P.G.: Exponentiation cryptosystems on the IBM PC. IBM Systems Journal 29, 526–538 (1990)
Dussé, S.R., Kaliski Jr., B.S.: A cryptographic library for the motorola DSP 56000. In: Damgård, I.B. (ed.) EUROCRYPT 1990. LNCS, vol. 473, pp. 230–244. Springer, Heidelberg (1991)
Gaudry, P.: An algorithm for solving the discrete log problem on hyperelliptic curves. In: Preneel, B. (ed.) EUROCRYPT 2000. LNCS, vol. 1807, pp. 19–34. Springer, Heidelberg (2000)
Gaudry, P., Schost, E.: Construction of Secure Random Curves of Genus 2 over Prime Fields. In: Cachin, C., Camenisch, J.L. (eds.) EUROCRYPT 2004. LNCS, vol. 3027, pp. 239–256. Springer, Heidelberg (2004)
Gonda, M., Matsuo, K., Aoki, K., Chao, J., Tsuji, S.: Improvements of addition algorithm on genus 3 hyperelliptic curves and their implementations. In: Proc. SCIS 2004, pp. 995–1000 (2004)
Gordon, D.M.: A survey of fast exponentiation methods. J. of Algorithms 27, 129–146 (1998)
Grandlund, T.: GMP. A software library for arbitrary precision integers, Available from: http://www.swox.com/gmp/
Harley, R.: Fast Arithmetic on Genus Two Curves, Available at http://cristal.inria.fr/~harley/hyper/
Jebelean, T.: A Generalization of the Binary GCD Algorithm. In: Proc. ISSAC 1993, pp. 111–116 (1993)
Kaliski Jr., B.S.: The Montgomery inverse and its applications. IEEE Transactions on Computers 44(8), 1064–1065 (1995)
Karatsuba, A., Ofman, Y.: Multiplication of Multidigit Numbers on Automata. Soviet Physics - Doklady 7, 595–596 (1963)
Koblitz, N.: Hyperelliptic Cryptosystems. J. of Cryptology 1, 139–150 (1989)
Krieger, U.: signature.c: Anwendung hyperelliptischer Kurven in der Kryptographie. M.S. Thesis, Mathematik und Informatik, Universität Essen, Fachbereich 6, Essen, Germany
Lange, T.: Efficient Arithmetic on Genus 2 Hyperelliptic Curves over Finite Fields via Explicit Formulae. Cryptology ePrint Archive, Report 2002/121 (2002), http://eprint.iacr.org/
Lange, T.: Formulae for Arithmetic on Genus 2 Hyperelliptic Curves. To appear in: J. AAECC
Lenstra, A.K., Verheul, E.R.: Selecting Cryptographic Key Sizes. J. of Cryptology 14, 255–293 (2001)
Lercier, R.: Algorithmique des courbes elliptiques dans les corps finis. These, Available from http://www.medicis.polytechnique.fr/~lercier/
Lim, C.H., Hwang, H.S.: Fast implementation of Elliptic Curve Arithmetic in GF(2m). In: Imai, H., Zheng, Y. (eds.) PKC 2000. LNCS, vol. 1751, pp. 405–421. Springer, Heidelberg (2000)
Menezes, A., Wu, Y.-H., Zuccherato, R.: An Elementary Introduction to Hyperelliptic Curves. In: Koblitz, N. (ed.) Algebraic aspects of cryptography, Springer, Heidelberg (1998)
Mestre, J.-F.: Construction des courbes de genre 2 a partir de leurs modules. Progr. Math. 94, 313–334 (1991)
Miyamoto, Y., Doi, H., Matsuo, K., Chao, J., Tsuji, S.: A Fast Addition Algorithm of Genus Two Hyperelliptic Curve. In: Proc. SCIS 2002, IEICE Japan, pp. 497–502 (2002) (in Japanese)
Montgomery, P.L.: Modular multiplication without trial division. Math. Comp. 44, 519–521 (1985)
Pelzl, J.: Fast Hyperelliptic Curve Cryptosystems for Embedded Processors. Master’s Thesis. Dept. of Elec. Eng. and Infor. Sci., Ruhr-University of Bochum (2002)
Pelzl, J., Wollinger, T., Guajardo, J., Paar, C.: Hyperelliptic Curve Cryptosystems: Closing the Performance Gap to Elliptic Curves. In: Walter, C.D., Koç, Ç.K., Paar, C. (eds.) CHES 2003. LNCS, vol. 2779, pp. 351–365. Springer, Heidelberg (2003)
Reitwiesner, G.W.: Binary arithmetic. Advances in Computers 1, 231–308 (1960)
Sakai, Y., Sakurai, K.: On the Practical Performance of Hyperelliptic Curve Cryptosystems in Software Implementation. IEICE-Tran. Fund. Elec., Comm. and Comp. Sci. E83-A(4), 692–703
Smart, N.P.: On the Performance of Hyperelliptic Cryptosystems. In: Stern, J. (ed.) EUROCRYPT 1999. LNCS, vol. 1592, pp. 165–175. Springer, Heidelberg (1999)
Solinas, J.A.: An improved algorithm for arithmetic on a family of elliptic curves. In: Kaliski Jr., B.S. (ed.) CRYPTO 1997. LNCS, vol. 1294, pp. 357–371. Springer, Heidelberg (1997)
Thériault, N.: Index calculus attack for hyperelliptic curves of small genus. In: Laih, C.-S. (ed.) ASIACRYPT 2003. LNCS, vol. 2894, pp. 75–92. Springer, Heidelberg (2003)
Weng, A.: Konstruktion kryptographisch geeigneter Kurven mit komplexer Multiplikation. PhD thesis, Universität Gesamthochschule Essen (2001)
Wollinger, T., Pelzl, J., Wittelsberger, V., Paar, C., Saldamli, G., Koç, Ç.K.: Elliptic & Hyperelliptic Curves on Embedded μ P. Special issue on Embedded Systems and Security of the ACM Transactions in Embedded Computing Systems
Wollinger, T.: Engineering Aspects of Hyperelliptic Curves. Ph.D. Thesis. Dept. of Elec. Eng. and Infor. Sci., Ruhr-University of Bochum (July 2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Avanzi, R.M. (2004). Aspects of Hyperelliptic Curves over Large Prime Fields in Software Implementations. In: Joye, M., Quisquater, JJ. (eds) Cryptographic Hardware and Embedded Systems - CHES 2004. CHES 2004. Lecture Notes in Computer Science, vol 3156. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-28632-5_11
Download citation
DOI: https://doi.org/10.1007/978-3-540-28632-5_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-22666-6
Online ISBN: 978-3-540-28632-5
eBook Packages: Springer Book Archive