Software developed within the CARAMBA project-team



MPFR is a library for computing with arbitrary precision floating-point numbers, together with well-defined semantics In particular, all arithmetic operations are performed according to a rounding mode provided by the user, and all results are guaranteed correct to the last bit, according to the given rounding mode. MPFR is distributed under the LGPL license.


MPC is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It is built upon and follows the same principles as MPFR. MPC is distributed under the LGPL license.


GMP-ECM is a program to factor integers using the Elliptic Curve Method (ECM). It also implements the $p-1$ and $p+1$ methods. GMP-ECM’s efficiency partly comes from the GNU-MP library. GMP-ECM is distributed under the GPL license for the runtime program, and under the LGPL license for the corresponding library.


CADO-NFS is a complete implementation of the number field sieve algorithm for factoring integers. It consists in various programs corresponding to all the phases of the algorithm, and a general perl script that run them, possibly in parallel over a network of computers. CADO-NFS is distributed under the LGPL license.


GF2X is a C/C++ software package containing routines for fast arithmetic in $\operatorname{GF}(2)[x]$ (multiplication, squaring, GCD) and searching for irreducible/primitive trinomials. It is distributed under the GPL / LGPL licence (depending on the part of the software).


MPFQ is a software library, or more exactly a set of Perl programs aimed at generating fast C code for handling arithmetic in finite fields. MPFQ produces code which obeys a uniform API, so that conversion of existing code from one finite field to another is easy. MPFQ is distributed under the LGPL license.


Belenios is an online voting system that provides confidentiality and verifiability. It builds upon Helios, a voting protocol used in several elections. The main design enhancement of Belenios vs Helios is that the server can no longer stuff the ballot box, thanks to the use of credentials.