Paper 2016/1044

Fast Hardware Architectures for Supersingular Isogeny Diffie-Hellman Key Exchange on FPGA

Brian Koziel, Reza Azarderakhsh, and Mehran Mozaffari Kermani

Abstract

In this paper, we present a constant-time hardware implementation that achieves new speed records for the supersingular isogeny Diffie-Hellman (SIDH), even when compared to highly optimized Haswell computer architectures. We employ inversion-free projective isogeny formulas presented by Costello et al. at CRYPTO 2016 on an FPGA. Modern FPGA's can take advantage of heavily parallelized arithmetic in $\mathbb{F}_{p^{2}}$, which lies at the foundation of supersingular isogeny arithmetic. Further, by utilizing many arithmetic units, we parallelize isogeny evaluations to accelerate the computations of large-degree isogenies by approximately 57\%. On a constant-time implementation of 124-bit quantum security SIDH on a Virtex-7, we generate ephemeral public keys in 10.6 and 11.6 ms and generate the shared secret key in 9.5 and 10.8 ms for Alice and Bob, respectively. This improves upon the previous best time in the literature for 768-bit implementations by a factor of 1.48. Our 83-bit quantum security implementation improves upon the only other implementation in the literature by a speedup of 1.74 featuring fewer resources and constant-time.

Metadata
Available format(s)
PDF
Publication info
Published elsewhere. Minor revision. INDOCRYPT2016
Keywords
Post-quantum cryptographyelliptic curve cryptographyisogeny-based cryptographyField programmable gate array
Contact author(s)
azarderakhsh @ gmail com
kozielbrian @ gmail com
History
2016-11-07: revised
2016-11-07: received
See all versions
Short URL
https://ia.cr/2016/1044
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2016/1044,
      author = {Brian Koziel and Reza Azarderakhsh and Mehran Mozaffari Kermani},
      title = {Fast Hardware Architectures for Supersingular Isogeny Diffie-Hellman Key Exchange on FPGA},
      howpublished = {Cryptology ePrint Archive, Paper 2016/1044},
      year = {2016},
      note = {\url{https://eprint.iacr.org/2016/1044}},
      url = {https://eprint.iacr.org/2016/1044}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.