More Efficient Algorithms for the NTRU Key Generation Using the Field Norm

Venue: Public Key Cryptography 2019
Authors: Thomas Prest (PQShield), Thomas Pornin

Abstract

NTRU lattices are a class of polynomial rings which allow for compact and efficient representations of the lattice basis, thereby offering very good performance characteristics for the asymmetric algorithms that use them. Signature algorithms based on NTRU lattices have fast signature generation and verification, and relatively small signatures, public keys and private keys.

NTRU lattices are a class of polynomial rings which allow for compact and efficient representations of the lattice basis, thereby offering very good performance characteristics for the asymmetric algorithms that use them. Signature algorithms based on NTRU lattices have fast signature generation and verification, and relatively small signatures, public keys and private keys. A few lattice-based cryptographic schemes entail, generally during the key generation, solving the NTRU equation: 𝑓𝐺 − 𝑔𝐹 = 𝑞 mod 𝑥𝑛+1. Here 𝑓 and 𝑔 are fixed, the goal is to compute solutions 𝐹 and 𝐺 to the equation, and all the polynomials are in 𝑍[𝑥]/(𝑥𝑛+1). The existing methods for solving this equation are quite cumbersome: their time and space complexities are at least cubic and quadratic in the dimension 𝑛, and for typical parameters they therefore require several megabytes of RAM and take more than a second on a typical laptop, precluding onboard key generation in embedded systems such as smart cards.

In this work, we present two new algorithms for solving the NTRU equation. Both algorithms make a repeated use of the field norm in tower of fields; it allows them to be faster and more compact than existing algorithms by factors 𝑂(𝑛). For lattice-based schemes considered in practice, this reduces both the computation time and RAM usage by factors at least 100, making key pair generation within range of smart card abilities.