aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/math/bigint
Commit message (Expand)AuthorAgeFilesLines
* Merge GH #1774 Const time BigInt shiftsJack Lloyd2018-12-085-41/+40
|\
| * Fix bug and avoid allocations in left shiftJack Lloyd2018-12-074-19/+33
| * Const time the behavior of shifts [WIP]Jack Lloyd2018-12-062-31/+16
* | In calc_sig_words save the size of m_reg before the loopJack Lloyd2018-12-081-3/+4
* | Merge GH #1773 Add BigInt::ct_reduce_belowJack Lloyd2018-12-072-2/+37
|\ \ | |/ |/|
| * Add BigInt::ct_reduce_belowJack Lloyd2018-12-062-2/+37
* | Better logic in BigInt::bits wrt valgrind const time checksJack Lloyd2018-12-061-2/+3
|/
* Do swaps in PointGFp instead of copiesJack Lloyd2018-12-051-1/+1
* Avoid needless is_zero check in set_signJack Lloyd2018-12-051-4/+4
* Make BigInt::cond_flip_sign constant timeJack Lloyd2018-12-051-3/+9
* Use BigInt::cond_flip_signJack Lloyd2018-12-053-7/+4
* Don't leak if x is zero eitherJack Lloyd2018-12-051-39/+37
* Remove some conditional branches from divisionJack Lloyd2018-12-053-22/+27
* Make binary extended Euclidean algorithm less branchyJack Lloyd2018-12-032-0/+17
* Extend ct_modulo to handle negative inputsJack Lloyd2018-12-031-8/+17
* Use const time reductions in Barrett and LCM computationsJack Lloyd2018-12-031-0/+17
* Fix shift operatorJack Lloyd2018-12-031-1/+1
* Add ct_modulo and BigInt::ct_cond_swapJack Lloyd2018-12-034-7/+62
* Merge GH #1759 Add constant time divide by uint8_tJack Lloyd2018-12-033-7/+59
|\
| * Add a constant time divide variant for dividing by uint8_tJack Lloyd2018-12-023-7/+59
* | Make variable time division less branchyJack Lloyd2018-12-021-53/+46
|/
* Add a const-time division algorithmJack Lloyd2018-12-024-8/+69
* Correct a bug in BigInt::operator%(word)Jack Lloyd2018-12-012-21/+26
* Unroll mod_sub for 6 words also, helps P-384 quite a bitJack Lloyd2018-12-011-0/+2
* Add BigInt::mod_mulJack Lloyd2018-12-013-13/+41
* Simplify BigInt addition and subtractionJack Lloyd2018-11-303-184/+115
* Add CT::Mask typeJack Lloyd2018-11-282-9/+17
* Make more BigInt functions const-timeJack Lloyd2018-11-263-74/+128
* Merge GH #1744 Make exception throws easier to debugJack Lloyd2018-11-232-3/+6
|\
| * Make exceptions easier to translate to error codesJack Lloyd2018-11-232-3/+6
* | In operator>> avoid testing for zero unless requiredJack Lloyd2018-11-231-1/+1
|/
* Use resize instead of shrink_to_fitJack Lloyd2018-11-091-0/+7
* Optimize mod_subJack Lloyd2018-11-091-10/+21
* Add a cache of sig words to BigIntJack Lloyd2018-11-093-97/+232
* Simplify BigInt::is_zeroJack Lloyd2018-11-061-6/+1
* Simplify BigInt::get_substring a bitJack Lloyd2018-09-151-10/+11
* Remove unneeded load_on autoJack Lloyd2018-09-041-2/+0
* Add operator*(BigInt, word)Jack Lloyd2018-08-232-0/+21
* Fix some Doxygen warningsJack Lloyd2018-08-151-1/+0
* Fix BigInt::to_{dec,hex}_string for zeroJack Lloyd2018-08-151-1/+8
* Cleanup of BigInt encoding/decoding functionsJack Lloyd2018-08-143-16/+138
* Add Lucas test from FIPS 186-4Jack Lloyd2018-07-312-0/+21
* Check arguments to BigInt::random_integerJack Lloyd2018-06-292-2/+5
* Document preconditions of BigInt::mod_add/mod_subJack Lloyd2018-06-231-0/+2
* Avoid needless alloc and copyJack Lloyd2018-06-211-0/+6
* Avoid unnecessary realloc in BigInt::mod_subJack Lloyd2018-06-171-2/+7
* Fix a bug in Barrett reductionJack Lloyd2018-06-051-4/+3
* Inline BigInt::shrink_to_fitJack Lloyd2018-05-092-7/+5
* Inline this operator+ [ci skip]Jack Lloyd2018-04-262-6/+1
* Add BigInt functions for adding, subtracting and comparing with wordsJack Lloyd2018-04-264-51/+142