Fast constant-time gcd computation and modular inversion
DOI:
https://doi.org/10.13154/tches.v2019.i3.340-398Keywords:
Euclid’s algorithm, greatest common divisor, gcd, modular reciprocal, modular inversion, constant-time computations, branchless algorithms, algorithm, design, NTRU, Curve25519Abstract
This paper introduces streamlined constant-time variants of Euclid’s algorithm, both for polynomial inputs and for integer inputs. As concrete applications, this paper saves time in (1) modular inversion for Curve25519, which was previously believed to be handled much more efficiently by Fermat’s method, and (2) key generation for the ntruhrss701 and sntrup4591761 lattice-based cryptosystems.
Published
2019-05-09
Issue
Section
Articles
License
Copyright (c) 2019 Daniel J. Bernstein, Bo-Yin Yang
This work is licensed under a Creative Commons Attribution 4.0 International License.
How to Cite
Fast constant-time gcd computation and modular inversion. (2019). IACR Transactions on Cryptographic Hardware and Embedded Systems, 2019(3), 340-398. https://doi.org/10.13154/tches.v2019.i3.340-398