NTRU Prime

Several ideal-lattice-based cryptosystems have been broken by recent attacks that exploit special structures of the rings used in those cryptosystems. The same structures are also used in the leading proposals for post-quantum lattice-based cryptography, including the classic NTRU cryptosystem and typical Ring-LWE-based cryptosystems.

NTRU Prime tweaks NTRU to use rings without these structures. Here are two public-key cryptosystems in the NTRU Prime family, both designed for the standard goal of IND-CCA2 security:

sntrup653, sntrup761, sntrup857, ntrulpr653, ntrulpr761, and ntrulpr857 are Streamlined NTRU Prime and NTRU LPRime with high-security post-quantum parameters. The resulting sizes and Haswell speeds (from unofficial benchmarks of the ntruprime-haswell-20190712 package) show that reducing the attack surface has very low cost:

System ciphertext bytes public-key bytes enc cycles dec cycles keygen cycles
sntrup653 897 994 53444 67868 790388
ntrulpr653 1025 897 73768 90348 46868
sntrup761 1039 1158 56768 71216 961992
ntrulpr761 1167 1039 80180 98252 50124
sntrup857 1184 1322 70060 95772 1305060
ntrulpr857 1312 1184 103420 128648 63556

sntrup4591761 and ntrulpr4591761 are older versions of sntrup761 and ntrulpr761 using the same mathematical one-way functions. The following speeds are from the official supercop-20190110 benchmarks for titan0:

System ciphertext bytes public-key bytes enc cycles dec cycles keygen cycles
sntrup4591761 1047 1218 44788 93676 940852
ntrulpr4591761 1175 1047 81144 113708 44948

Contributors (alphabetical order)


This work was supported by the Cisco University Research Program under the "Post-quantum networking" project.

This work was supported by the U.S. National Science Foundation under grant 1314919. "Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation."

This work was supported by the Commission of the European Communities through the Horizon 2020 program under project number 645622 (PQCRYPTO) and project number 645421 (ECRYPT-CSA).

This work was supported by the Netherlands Organisation for Scientific Research (NWO) under grant 639.073.005.

Calculations were carried out on the Saber cluster of the Cryptographic Implementations group at Technische Universiteit Eindhoven.

Version: This is version 2019.07.15 of the "Intro" web page.