summaryrefslogtreecommitdiffstats
path: root/crypto/bn
AgeCommit message (Collapse)Author
2001-02-10Simplify BN_rand_rangeBodo Möller
2001-02-08Another comment change. (Previous comment does not applyBodo Möller
for range = 11000000... or range = 100000...)
2001-02-08Change comments. (The expected number of iterations in BN_rand_rangeBodo Möller
never exceeds 1.333...).
2001-02-08oops -- remove observation codeBodo Möller
2001-02-08Integrate my implementation of a countermeasure againstBodo Möller
Bleichenbacher's DSA attack. With this implementation, the expected number of iterations never exceeds 2. New semantics for BN_rand_range(): BN_rand_range(r, min, range) now generates r such that min <= r < min+range. (Previously, BN_rand_range(r, min, max) generated r such that min <= r < max. It is more convenient to have the range; also the previous prototype was misleading because max was larger than the actual maximum.)
2001-02-07Bleichenbacher's DSA attackUlf Möller
2001-01-23There is no C version of bn_div_3_wordsUlf Möller
2000-12-15The C version of bn_sub_part_words is needed not onlyBodo Möller
in NO_ASM configurations
2000-12-15Very few in the "README" is up-to-dateBodo Möller
2000-12-14The BN_mul bug test apparently is no longer neededBodo Möller
2000-12-13Problem: bn_mul_normal() misbehaves if the size of b is 0.Richard Levitte
Solution: multiply a with 0, putting the result in r, and return.
2000-12-13In bn_mul_recursive(), make sure the comba routines are only calledRichard Levitte
when both a and b are of the exact right size. This may change to something better later.
2000-12-13Rewrite the extension code to use an ASN1_ITEM structureDr. Stephen Henson
for its ASN1 operations as well as the old style function pointers (i2d, d2i, new, free). Change standard extensions to support this. Fix a warning in BN_mul(), bn_mul.c about uninitialised 'j'.
2000-12-08bn_part_sub_word prototype.Ulf Möller
2000-12-07Fix some things that look like bugs.Bodo Möller
One problem that looked like a problem in bn_recp.c at first turned out to be a BN_mul bug. An example is given in bn_recp.c; finding the bug responsible for this is left as an exercise.
2000-12-07TEST_MUL and TEST_SQR added.Bodo Möller
2000-12-07Sign-related fixes (and tests).Bodo Möller
BN_mod_exp_mont does not work properly yet if modulus m is negative (we want computations to be carried out modulo |m|).
2000-12-07Move 'q->neg = 0' to those places where it is neededBodo Möller
(just in cases someone uses a negative modulus)
2000-12-06BN_mod_sqrt documentation/commentBodo Möller
2000-12-06remove a comment that shouldn't have been there any moreUlf Möller
2000-12-06Faster BN_mod_sqrt algorithm for p == 5 (8).Bodo Möller
2000-12-06Use bc's "print" feature whenever it is available,Bodo Möller
not just on certain platforms.
2000-12-06remove useless instructionUlf Möller
2000-12-06Intel assembler version for bn_sub_part_words(). I haven't gotUlf Möller
reliable timings yet, please try it out!
2000-12-06test_mod_mul is useful, let's run it more often.Ulf Möller
2000-12-05Use assert as in the rest of the BN library.Ulf Möller
2000-12-04Remove the last bn_wexpand()s that made us break constness. OfRichard Levitte
course, that means we need to handle the cases where the two arrays to bn_mul_recursive() and bn_mul_part_recursive() differ in size. I haven't yet changed the comments that describe bn_mul_recursive() and bn_mul_part_recursive(). I want this to be tested by more people before I consider this change final. Please test away!
2000-12-04Change error message to "bignum too long"Bodo Möller
2000-12-03include <limits.h>Bodo Möller
2000-12-03Don't allow BIGNUMs to become so large that computations with dmaxBodo Möller
might overflow.
2000-12-02Add a comment to explain the purpose of bn_cmp_part_words().Richard Levitte
2000-12-02last commit was wrong. Now it works. :)Ulf Möller
2000-12-02arglUlf Möller
2000-12-02forgot to remove the loop variableUlf Möller
2000-12-02Loops like this one:Ulf Möller
if (bp == NULL) for (j=0; j<10000; j++) BN_add(&c,&a,&b); seem to be pretty useless, and bp never is NULL anyway.
2000-12-02New function BN_bntest_rand() to detect more BN library bugs.Ulf Möller
The bn_cmp_part_words bug was only caught in the BN_mod_mul() test, not in the BN_mul() test, so apparently the choice of parameters in some cases is bad.
2000-12-02Fix bn_cmp_part_words() and move it to bn_lib.c.Ulf Möller
2000-12-01functionality for BN_mod_sqrt timingsBodo Möller
2000-12-01"make depend"Bodo Möller
2000-11-30Fix the recently introduced test that checks if the result is 0Bodo Möller
2000-11-30Fix BN_rshift, which caused lots of trouble.Bodo Möller
2000-11-30Remove randomness from the test. These constants give me a segmentBodo Möller
violation in test_kron on a 32 bit system.
2000-11-30BN_mod_exp(r,a,p,m,ctx) should not be called with r == p.Bodo Möller
But even if this is avoided, there are still segmentation violations (during one of the BN_free()s at the end of test_kron in some cases, in other cases during BN_kronecker, or later in BN_sqrt; choosing a different exponentiation algorithm in bntest.c appears to influence when the SIGSEGV takes place).
2000-11-30It's "#elif", not "#elsif".Bodo Möller
2000-11-30Changes to Lenka's Montgomery implementation.Bodo Möller
Submitted by: Lenka Fibikova
2000-11-30Corrections to the comments in BN_mod_inverse.Bodo Möller
2000-11-30BN_mod_exp problems ...Bodo Möller
2000-11-30Move reduction step from BN_mod_exp to BN_mod_exp_mont_word.Bodo Möller
Fix BN_mod_exp_simple for a==0 (mod m). Skip useless round in BN_mod_sqrt (1 is always a square, no need to test BN_kronecker for it).
2000-11-30bn_modfs.c is no longer needed, a BN_sqrt implementationBodo Möller
exists in bn_sqrt.c now
2000-11-30Fix bntest.c problem -- one of the primes got lostBodo Möller