Folus Wen 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
..
LICENSE 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
Makefile.in 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
README.md 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
astylerc 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_cutoffs.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_deprecated.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_2expt.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_abs.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_add.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_add_d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_addmod.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_and.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_clamp.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_clear.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_clear_multi.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_cmp.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_cmp_d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_cmp_mag.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_cnt_lsb.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_complement.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_copy.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_count_bits.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_decr.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_div.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_div_2.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_div_2d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_div_3.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_div_d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_dr_is_modulus.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_dr_reduce.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_dr_setup.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_error_to_string.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_exch.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_expt_u32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_exptmod.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_exteuclid.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_fread.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_from_sbin.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_from_ubin.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_fwrite.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_gcd.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_get_i32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_get_i64.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_get_l.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_get_ll.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_get_mag_u32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_get_mag_u64.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_get_mag_ul.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_get_mag_ull.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_grow.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_incr.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_copy.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_i32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_i64.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_l.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_ll.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_multi.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_set.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_size.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_u32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_u64.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_ul.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_init_ull.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_invmod.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_is_square.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_iseven.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_isodd.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_kronecker.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_lcm.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_log_u32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_lshd.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_mod.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_mod_2d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_mod_d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_montgomery_calc_normalization.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_montgomery_reduce.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_montgomery_setup.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_mul.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_mul_2.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_mul_2d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_mul_d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_mulmod.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_neg.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_or.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_pack.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_pack_count.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_prime_fermat.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_prime_frobenius_underwood.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_prime_is_prime.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_prime_miller_rabin.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_prime_next_prime.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_prime_rabin_miller_trials.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_prime_rand.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_prime_strong_lucas_selfridge.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_radix_size.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_radix_smap.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_rand.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_read_radix.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_reduce.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_reduce_2k.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_reduce_2k_l.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_reduce_2k_setup.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_reduce_2k_setup_l.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_reduce_is_2k.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_reduce_is_2k_l.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_reduce_setup.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_root_u32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_rshd.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_sbin_size.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set_i32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set_i64.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set_l.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set_ll.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set_u32.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set_u64.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set_ul.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_set_ull.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_shrink.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_signed_rsh.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_sqr.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_sqrmod.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_sqrt.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_sqrtmod_prime.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_sub.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_sub_d.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_submod.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_to_radix.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_to_sbin.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_to_ubin.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_ubin_size.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_unpack.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_xor.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_mp_zero.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_prime_tab.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_add.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_balance_mul.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_exptmod.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_exptmod_fast.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_get_bit.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_invmod_fast.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_invmod_slow.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_karatsuba_mul.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_karatsuba_sqr.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_montgomery_reduce_fast.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_mul_digs.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_mul_digs_fast.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_mul_high_digs.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_mul_high_digs_fast.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_prime_is_divisible.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_rand_jenkins.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_rand_platform.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_reverse.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_sqr.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_sqr_fast.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_sub.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_toom_mul.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
bn_s_mp_toom_sqr.c 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
changes.txt 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
gen.pl 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
helper.pl 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
makefile_include.mk 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
testme.sh 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
tommath.h 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
tommath_class.h 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
tommath_cutoffs.h 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
tommath_private.h 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten
tommath_superclass.h 3c1544b7f9 [Improve][GPL][Dropbear] 2 vuotta sitten

README.md

libtommath

This is the git repository for LibTomMath, a free open source portable number theoretic multiple-precision integer (MPI) library written entirely in C.

Build Status

Travis CI

master: Build Status

develop: Build Status

AppVeyor

master: Build status

develop: Build status

ABI Laboratory

API/ABI changes: check here

Summary

The develop branch contains the in-development version. Stable releases are tagged.

Documentation is built from the LaTeX file bn.tex. There is also limited documentation in tommath.h. There is also a document, tommath.pdf, which describes the goals of the project and many of the algorithms used.

The project can be build by using make. Along with the usual make, make clean and make install, there are several other build targets, see the makefile for details. There are also makefiles for certain specific platforms.

Testing

Tests are located in demo/ and can be built in two flavors.

  • make test creates a stand-alone test binary that executes several test routines.
  • make mtest_opponent creates a test binary that is intended to be run against mtest. mtest can be built with make mtest and test execution is done like ./mtest/mtest | ./mtest_opponent. mtest is creating test vectors using an alternative MPI library and test is consuming these vectors to verify correct behavior of ltm

Building and Installing

Building is straightforward for GNU Linux only, the section "Building LibTomMath" in the documentation in doc/bn.pdf has the details.