aboutsummaryrefslogtreecommitdiffstats
path: root/src/math
Commit message (Collapse)AuthorAgeFilesLines
* Allow creating uninitialized PointGFp and CurveGFpslloyd2010-03-012-0/+10
|
* Rename mult2_in_place just mult2 (double would be better but is a keyword...)lloyd2010-03-012-6/+6
|
* Simplify mult2_in_place slightlylloyd2010-02-251-7/+3
|
* Move contents of gfpmath to numbertheory. Adjust dependencies.lloyd2010-02-255-15/+3
|
* Delete gfp_element.h and remove the gfpmath testslloyd2010-02-252-250/+0
|
* Hide MillerRabin_Test class (only used in numthry.cpp)lloyd2010-02-256-84/+84
| | | | | | Inline simple functions in Modular_Reducer Add Modular_Reducer::cube convenience function
* Cache the Modular_Reducer of p in CurveGFp; speedup of 3-4xlloyd2010-02-252-8/+11
|
* Remove GFpElement from check_invariants, remove includelloyd2010-02-251-20/+15
|
* create_random_point was not used anywhere, so remove itlloyd2010-02-252-28/+0
|
* s/GFpElement/Modular_Reducer/ in get_affine_{x,y}lloyd2010-02-251-14/+6
|
* Convert PointGFp::operator+= to using BigInt + Modular_Reducer instead oflloyd2010-02-251-34/+18
| | | | GFpElement
* Make PointGFp::mult2_in_place privatelloyd2010-02-252-20/+25
|
* Use Modular_Reducer instead of GFpElement in operator*=lloyd2010-02-251-13/+8
|
* Inline PointGFp constructorslloyd2010-02-252-51/+13
|
* In PointGFp::operator==, compare coordinates first, then the curvelloyd2010-02-251-4/+2
|
* There was only one caller of set_z_to_one (which was get_z_to_one) andlloyd2010-02-252-60/+24
| | | | | only one caller of get_z_to_one (in operator*=). Inline into operator*= and remove.
* Rewrite PointGFp::mult2_in_place to use plain BigInt plus a Modular_Reducerlloyd2010-02-251-47/+29
| | | | Clean up PointGFp::operator*=
* Hide PointGFp funcs set_z_to_one and get_z_to_onelloyd2010-02-251-15/+15
|
* Name vars in Modular_Reducer decllloyd2010-02-251-4/+4
|
* Inline GFpElementlloyd2010-02-253-172/+121
|
* Remove include of unused headerslloyd2010-02-251-3/+0
|
* Inline some simple GFpElement functions. Remove ostream << operatorlloyd2010-02-252-65/+15
|
* Move Illegal_Transformationlloyd2010-02-252-7/+7
|
* Remove point_{x,y,z} funcs, hide GFpElement entirelylloyd2010-02-253-33/+56
|
* CurveGFp: Inline, deleting source file. Store only a,b,p aslloyd2010-02-255-84/+39
| | | | | BigInts. Also reorder constructor args to p, a, b which seems more sensible to me.
* Change PointGFp to store BigInts instead of GFpElementslloyd2010-02-252-65/+68
|
* Rename PointGFp member variableslloyd2010-02-252-74/+74
|
* Cleanup EC2OSP, remove should-have-been-internal functionslloyd2010-02-252-85/+35
|
* Convert the PointGFp constructor taking three coordinates (Jacobian scheme)lloyd2010-02-252-10/+13
| | | | to take BigInts instead of GFpElements
* Convert PointGFp::get_jac_proj_{x,y,z} to return just the BigInt value,lloyd2010-02-252-10/+9
| | | | not a GFpElement
* Convert PointGFp::get_affine_{x,y} to return just the BigInt valuelloyd2010-02-252-13/+19
|
* Remove clutter. Add note about bug in mult by scalar (mult by -1 is wrong)lloyd2010-02-251-8/+5
|
* Convert 3-arg constructoor of PointGFp to take BigInts instead oflloyd2010-02-252-149/+93
| | | | | | GFpElements. Clean up OS2ECP
* Cleanupslloyd2010-02-251-16/+10
|
* Make compression types an enumlloyd2010-02-251-14/+5
|
* De-mutable PointGFplloyd2010-02-244-9/+9
|
* Inline small funcs. Remove mult2lloyd2010-02-242-46/+12
|
* Add BOTAN_DLL exports to some CurveGFp funcslloyd2010-02-241-2/+2
|
* Remove the montgomery optimizations from GFpElement entirely.lloyd2010-02-246-561/+29
| | | | | | | | This makes things even slower than they were before, but will make refactoring easier. And most of the montgomery code there was duplicates of other code that already existed in the codebase. Anything useful can be pulled back out from history later if needed.
* Remove PointGFp::mult_this_securelloyd2010-02-242-82/+0
|
* Remove GFpModulus entirelylloyd2010-02-244-180/+52
|
* In CurveGFp, store just the BigInt mod instead of a GFpModuluslloyd2010-02-241-2/+2
|
* propagate from branch 'net.randombit.botan' (head ↵lloyd2010-02-2410-1110/+308
|\ | | | | | | | | | | 84baf58b29f3aaaee34e2b873d0040be5a6c4368) to branch 'net.randombit.botan.gost_3410' (head 63cbe3e357c071d7960bfedc31101eff35895285)
| * Remove UTF-8 chars in commentslloyd2010-02-243-8/+4
| |
| * Remove the precomputed z^2, z^3, a*z^4 values from PointGFplloyd2010-02-232-123/+23
| |
| * in GFpElement remove some mutables and de-const membmer funcs as necessarylloyd2010-02-232-11/+11
| |
| * Remove vestigal code in pointgfp for various side-channel countermeasureslloyd2010-02-231-56/+1
| |
| * Cleanups. Remove PointGFp::mult_looplloyd2010-02-232-33/+14
| |
| * Remove use of tr1 entirely from gfpmath.lloyd2010-02-238-911/+298
| | | | | | | | | | | | | | Remove a handful of tests which were based on testing the sharing aspects, which are gone now; everything is based on value copies. All tests pass on x86-64 with GCC. Valgrind output looks clean too.
| * Remove almost entirely unnecessary friend access from GFpElement tolloyd2010-02-173-59/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | GFpModulus. Doing this pointed out what is probably a threading/race bug as well: assigning to a single GFpElement causes it to reset the GFpModulus to new values, but of course the other GFpElements don't know about this. Sharing the GFpModulus was a really really bad design choice by the InSiTo folks and it needs to die. That might end up wasting a bit of memory, but it will probably fix a lot of nasty bugs, and also remove the use of atomic operations which in the long run is going to hurt performance a lot worse than some extra cache use.