Section: Software and Platforms
FPLLL: A Lattice Reduction Library
Participant : Damien Stehlé [correspondant] .
fplll contains several algorithms on lattices that rely on floating-point computations. This includes implementations of the floating-point LLL reduction algorithm, offering different speed/guarantees ratios. It contains a “wrapper” choosing the estimated best sequence of variants in order to provide a guaranteed output as fast as possible. In the case of the wrapper, the succession of variants is oblivious to the user. It also includes a rigorous floating-point implementation of the Kannan-Fincke-Pohst algorithm that finds a shortest non-zero lattice vector, and the BKZ reduction algorithm.
The fplll library is used or has been adapted to be integrated within several mathematical computation systems such as Magma, Sage, and PariGP. It is also used for cryptanalytic purposes, to test the resistance of cryptographic primitives.
Versions 4.0.4 was released in 2013, fixing a number of user-interface bugs.
URL: http://perso.ens-lyon.fr/damien.stehle/fplll/
-
ACM: D.2.2 (Software libraries), G.4 (Mathematical software)
-
Type of human computer interaction: C++ library callable, from any C++ program.
-
Documentation: available in html format on URL:http://perso.ens-lyon.fr/damien.stehle/fplll/fplll-doc.html