Commit Graph

48 Commits

Author SHA1 Message Date
Daniel Mendler
bcec605af5
deprecate mp_prime_is_divisible and ltm_prime_tab
* it is an implementation detail used for prime testing
* there is upcoming work by @czurnieden regarding a generalised prime sieve
* furthermore remove jacobi test (replaced by kronecker)
2019-05-24 12:30:55 +02:00
Daniel Mendler
3289c9590b
introduce various mp_set_sint/mp_set_uint functions with precise types 2019-05-24 00:15:57 +02:00
Daniel Mendler
1af0de1f91
deprecate mp_tc_(and|or|xor) in favor of mp_(and|or|xor)
* same behavior for positive numbers
* generalisation for negative numbers, treating them as two complement
* improve algorithm, iterate once over the digits, manually perform two complement
* simplify mp_add_d, mp_sub_d
* functions are safe in case of a==c or b==c
* renamed mp_tc_div_2d to mp_signed_rsh (signed right shift)
2019-05-21 18:28:11 +02:00
Daniel Mendler
0dfa9da5a6
make tommath_class.h and tommath_superclass.h private
These headers are used for configuration during build time.
Therefore they shouldn't be exposed as part of the public API.
2019-05-21 18:01:17 +02:00
Daniel Mendler
a8239c2465
deprecate mp_get_bit
The return type of mp_get_bit was imprecise (either mp_err or mp_bool),
therefore this function is deprecated in favor of s_mp_get_bit for now.

If we need s_mp_get_bit to be public, we should add it under a different
name. However since mp_set_bit is not available, I don't think there any
downstream users (ab)using mp_int as bitsets.
2019-05-18 10:03:47 +02:00
Daniel Mendler
56e7a40123
deprecate mp_jacobi 2019-05-18 10:03:46 +02:00
Daniel Mendler
2a2e2716c2
move jenkins prng to bn_s_mp_rand_jenkins.c 2019-05-12 23:45:36 +02:00
Daniel Mendler
c8cc3657e7
mov s_mp_rand_source_platform to separate file 2019-05-12 23:45:36 +02:00
Daniel Mendler
0669e92e78
deprecate mp_prime_random_ex in favor of mp_prime_rand
We can use the internal mp_rand generator now, since it generates
numbers which are safe for crypto purposes.
2019-05-11 00:48:48 +02:00
czurnieden
db76bed220 added autotuning functionality for the Toom-Cook cut-offs 2019-05-06 23:29:08 +02:00
Daniel Mendler
818d8fb7f5
Rework handling of tunable cutoffs
* In the default settings, a cutoff X can be modified at runtime
   by adjusting the corresponding X_CUTOFF variable.

 * Tunability of the library can be disabled at compile time
   by defining the MP_FIXED_CUTOFFS macro.

 * There is an additional file tommath_cutoffs.h, which defines
   the default cutoffs. These can be adjusted manually or by the
   autotuner.
2019-05-04 13:08:37 +02:00
Daniel Mendler
fbfcb66184
apply rename 2019-04-12 14:56:29 +02:00
nijtmans
5968263bc4 Rename bn_error.c to bn_mp_error_to_string.c 2019-04-10 14:49:59 +02:00
czurnieden
35311aea49 added function mp_ilogb 2019-04-09 21:59:59 +02:00
czurnieden
27ca25cb82 added multiplcation balancing for the Toom-Cook algorithms 2019-04-07 22:15:09 +02:00
Daniel Mendler
70a30ae7a7
remove footers 2019-04-07 17:26:31 +02:00
czurnieden
769218ccc7 additional functions mp_incr and mp_decr 2019-04-04 07:58:19 +02:00
Daniel Mendler
cd1570bb88
split test suite 2019-03-04 01:02:22 +01:00
Francois Perrad
6ce271c4db mp_iseven & mp_isodd becomes C functions 2019-02-02 07:39:23 +01:00
Steffen Jaeckel
4f245b0476 Update makefiles etc. 2018-12-25 15:17:12 +01:00
Karel Miko
aa12f353c7 properly use test_standalone 2018-12-02 18:46:35 +01:00
Karel Miko
fc4b7f8008 update makefile.msvc 2018-12-02 15:11:10 +01:00
Karel Miko
a16f34f97e re-sort OBJECTS in makefile* 2018-12-02 13:58:50 +01:00
Daniel Mendler
81cdb9aca2
regenerate files 2018-11-22 12:05:16 +01:00
Daniel Mendler
109bfa57bf
regenerate files 2018-09-10 18:49:10 +02:00
Steffen Jaeckel
ee241c95e6 fix makefile.msvc
This fixes #74
2018-02-27 23:30:43 +01:00
Steffen Jaeckel
1f8894790b update makefiles etc. 2015-10-30 18:04:33 -04:00
Steffen Jaeckel
d4cccd52d1 udpate makefiles etc. 2014-12-10 18:59:56 +01:00
Steffen Jaeckel
cf04521695 update makefiles etc. 2014-12-10 17:21:14 +01:00
Steffen Jaeckel
d71719853a update after removing balance multiplication 2014-10-18 18:56:56 +02:00
Steffen Jaeckel
30fcfec893 update makefiles 2014-10-13 15:50:16 +02:00
Steffen Jaeckel
9bff6bbb57 prepare makefiles for "updatemakes" 2014-10-13 15:49:23 +02:00
Steffen Jaeckel
750d17cd96 update makefiles 2013-11-24 15:21:39 +01:00
Tom St Denis
9294e79150 added libtommath-0.36 2010-07-15 17:25:56 +02:00
Tom St Denis
3d0fcaab0a added libtommath-0.34 2010-07-15 17:25:51 +02:00
Tom St Denis
e549ccfec5 added libtommath-0.32 2010-07-15 17:25:47 +02:00
Tom St Denis
8eaa98807b added libtommath-0.31 2010-07-15 17:25:45 +02:00
Tom St Denis
350578d400 added libtommath-0.30 2010-07-15 17:25:43 +02:00
Tom St Denis
6c48a9b3a6 added libtommath-0.29 2010-07-15 17:25:41 +02:00
Tom St Denis
455bb4db20 added libtommath-0.28 2010-07-15 17:25:39 +02:00
Tom St Denis
c1da6aa2de added libtommath-0.25 2010-07-15 17:25:33 +02:00
Tom St Denis
eed6765fe9 added libtommath-0.23 2010-07-15 17:25:30 +02:00
Tom St Denis
4c1d3f0838 added libtommath-0.22 2010-07-15 17:25:29 +02:00
Tom St Denis
49bef06878 added libtommath-0.21 2010-07-15 17:25:27 +02:00
Tom St Denis
0ef44cea9b added libtommath-0.18 2010-07-15 17:25:22 +02:00
Tom St Denis
fd181cc841 added libtommath-0.17 2010-07-15 17:25:21 +02:00
Tom St Denis
b1756f2f98 added libtommath-0.15 2010-07-15 17:25:18 +02:00
Tom St Denis
82f4858291 added libtommath-0.14 2010-07-15 17:25:17 +02:00