C implementation of NTRUEncrypt
An implementation of the public-key encryption scheme NTRUEncrypt in C.
NTRUEncrypt's main strengths are high performance and resistance to quantum computer
attacks. Its main drawback is that it is patent encumbered. The patents expire
in 2020; when built with the NTRU_AVOID_HAMMING_WT_PATENT flag, libntru becomes
patent-free in 2017.
For more information on the NTRUEncrypt algorithm, see the NTRU introduction
page at http://tbuktu.github.com/ntru/
Homepage
Download
Recent Releases
0.514 May 2016 09:14
minor feature:
* RNGs: NTRU_RNG_DEFAULT uses CTR_DRBG now, NTRU_RNG_CTR_DRBG replaces NTRU_RNG_IGF2
This change breaks the API!
* Denser encoding of private keys
This change breaks binary compatibility!
* new API feature: multiple public keys for the same private key
* new parameter sets: EES443EP1 and EES587EP1
* new #defines for referencing param sets by strength: NTRU_DEFAULT_PARAMS_xxx_BITS
* BSD support
* bugfixes:
o fixed deterministic encryption on big-endian machines
o fixed some incorrect error codes when key generation failed
o fixed generation of polynomial g which deviated from the standard
o fixed SSE detection on BSD
o fixed buffer overruns (thanks Jeffrey Quesnelle)
o fixed a resource leak
o fixed tests on ARMv6
o fixed calculation of M_len
* AVX2 optimizations (thanks Shay Gueron and Fabian Schlieker)
* minor optimizations
0.4.113 May 2015 16:44
minor feature:
* Experimental support for OS/2 (thanks Elbert Pol)
* Fixed build when the CC environment variable is set
* Fixed a memory leak
0.404 May 2015 13:45
minor feature:
massive performance improvements; new Makefile targets for distros (thanks Julian Ospald); made the library C++ friendly (thanks Ruben De Smet); new functions: ntru_params_from_key_pair() and ntru_params_from_priv_key(); fixed a memory leak; fixed parameter values; fixed data-dependent branches
0.314 Nov 2014 22:53
minor feature:
* option to exclude code that is patented beyond 2017
* RNG-related API changes for thread safety and closeability of OS handles
* several bugs fixed
* sample code for NTRU+AES encryption