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

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.