Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | s/u32bit/size_t/ for block cipher parallelism queries | lloyd | 2010-10-12 | 6 | -9/+9 |
| | |||||
* | s/u32bit/size_t/ in codec and benchmark | lloyd | 2010-10-12 | 9 | -56/+56 |
| | |||||
* | s/u32bit/size_t/ in alloc | lloyd | 2010-10-12 | 8 | -79/+91 |
| | | | | Also handle partial writes in alloc_mmap | ||||
* | s/u32bit/size_t/ | lloyd | 2010-10-12 | 4 | -12/+12 |
| | |||||
* | Use a full write instead of seek+write to create a sparse | lloyd | 2010-10-12 | 1 | -9/+7 |
| | | | | | file. FreeBSD's man page for mmap warns that using NOSYNC with sparse files causes problems. Closes PR 30 | ||||
* | Change ifs to compares to make it easier for a compiler to figure out | lloyd | 2010-10-12 | 1 | -11/+9 |
| | | | | | | it should use add with carry or conditional moves if available. Also remove the amd64 asm; the mp_amd64 code should be used for this case. | ||||
* | Fix CRL reason codes and updating of CRLs. Add tests for both cases. | lloyd | 2010-10-07 | 7 | -45/+8 |
| | |||||
* | Fix a bug in X509_Time: when decoding, the tag would not be set, so | lloyd | 2010-10-07 | 1 | -18/+24 |
| | | | | reencoding the same object would fail. This affected CRL updates. | ||||
* | Remove debug.h include | lloyd | 2010-10-07 | 1 | -1/+0 |
| | |||||
* | Drop debug.h, it didn't turn out to be that useful for most things, | lloyd | 2010-10-07 | 2 | -38/+0 |
| | | | | especially now that the standalone hex encoder is around | ||||
* | Forward port CRL fixes from rev 7bb2001cd554a1acc3d345914ea710ff0e1d3a6b | lloyd | 2010-10-07 | 3 | -7/+29 |
| | |||||
* | Compile fix | lloyd | 2010-10-04 | 1 | -1/+1 |
| | |||||
* | Make names more consistent | lloyd | 2010-10-01 | 3 | -2/+2 |
| | |||||
* | Also deal with short values in OctetString | lloyd | 2010-10-01 | 1 | -1/+1 |
| | |||||
* | Handle memory overwrite if hex input was not byte wide | lloyd | 2010-10-01 | 1 | -1/+1 |
| | |||||
* | Doxygen | lloyd | 2010-10-01 | 1 | -14/+61 |
| | |||||
* | Fix macro | lloyd | 2010-09-30 | 1 | -0/+1 |
| | |||||
* | Fix dependencies | lloyd | 2010-09-30 | 2 | -2/+2 |
| | |||||
* | Split SHA-2 into 32 and 64 bit versions; they are totally independent | lloyd | 2010-09-30 | 7 | -3/+13 |
| | | | | of each other anyway. | ||||
* | s/x.ptr()/&x[0]/ | lloyd | 2010-09-30 | 1 | -5/+5 |
| | |||||
* | Tidy | lloyd | 2010-09-30 | 2 | -4/+6 |
| | |||||
* | Make configure output more sensible wrt incompatible modules | lloyd | 2010-09-28 | 6 | -2/+22 |
| | |||||
* | Cleanup Karatsuba a bit | lloyd | 2010-09-28 | 1 | -103/+107 |
| | |||||
* | Use visibility control with Clang, same syntax as GCC | lloyd | 2010-09-28 | 1 | -1/+3 |
| | |||||
* | Cleanup | lloyd | 2010-09-26 | 1 | -9/+9 |
| | |||||
* | Silence warning, cms is really getting pretty broken... | lloyd | 2010-09-26 | 1 | -1/+1 |
| | |||||
* | Fix, wasn't returning pointer | lloyd | 2010-09-26 | 1 | -0/+1 |
| | |||||
* | Use BOTAN_ASSERT in various places | lloyd | 2010-09-26 | 9 | -34/+43 |
| | |||||
* | If we generate a k such that s or r is 0, don't fail, simply retry | lloyd | 2010-09-26 | 1 | -11/+13 |
| | | | | with a new k. | ||||
* | Malloc_Allocator isn't a pool, so it needs to fail directly if malloc | lloyd | 2010-09-26 | 1 | -1/+3 |
| | | | | | fails, not just return 0 since callers expect that the allocator will either succeed or throw. | ||||
* | There is a pretty common pattern in the code for testing for internal | lloyd | 2010-09-26 | 3 | -0/+86 |
| | | | | | | | | | | errors of the form if(some_expr_indicating_failure) throw Internal_Error("Some mildly informative message"); Make this simpiler with the addition of a BOTAN_ASSERT macro which will throw an exception upon failure. | ||||
* | At some point I 'simplified' the divide code to always run the | lloyd | 2010-09-26 | 1 | -1/+5 |
| | | | | | | | | | | division algorithm unless x == y, but this could result in n - t + 1 being negative which would cause an attempt to allocate about 4 gigabytes of memory. Fix this, and also add an assertion check in the code to ensure that can't happen in any other way. Never reproduced this with 32 bit digits but it would show up if the build used 8 or 16 bit words. | ||||
* | Move the core MPI functions to src/math/mp, leaving src/math/bigint just | lloyd | 2010-09-24 | 28 | -13/+24 |
| | | | | for the implementation of the BigInt class | ||||
* | Add dependencies | lloyd | 2010-09-24 | 7 | -0/+31 |
| | |||||
* | Delete obsolete asm versions | lloyd | 2010-09-24 | 7 | -781/+0 |
| | |||||
* | Minor performance tweak, avoid zeroing things we'll immediately write | lloyd | 2010-09-24 | 1 | -2/+1 |
| | | | | to. Helps more than I would have thought. | ||||
* | Modify bigint_monty_redc to take an additional workspace argument. | lloyd | 2010-09-24 | 5 | -71/+83 |
| | | | | | | | Modify it to avoid a timing condition during the compare at the end; this is done by always doing the subtraction, and then copying to the output either the pre-subtraction or post-subtraction value depending on if the final borrow was set or not. | ||||
* | s/carry/borrow/ in subtraction routines | lloyd | 2010-09-24 | 1 | -14/+18 |
| | |||||
* | s/j/i for loop variables | lloyd | 2010-09-24 | 1 | -36/+36 |
| | |||||
* | Cleanup | lloyd | 2010-09-23 | 2 | -16/+24 |
| | |||||
* | Make these functions mostly constant-time, and in particular not | lloyd | 2010-09-23 | 1 | -29/+9 |
| | | | | | depending on the value of the final carry out for anything control-flow related. | ||||
* | In the IDEA key schedule, using the extended Euclidean algorithm to | lloyd | 2010-09-23 | 1 | -17/+14 |
| | | | | | | compute the inverses mod 65537 exposed a timing vulnerability. Avoid this by instead using exponentiation, which takes constant time (up to variability in the multiplication operation, at least). | ||||
* | Fix OpenSSL engine WRT memory vector changes, append is no more | lloyd | 2010-09-23 | 1 | -1/+3 |
| | |||||
* | Add a convenience overload of hex_encode taking a MemoryRegion<byte>& | lloyd | 2010-09-23 | 2 | -0/+17 |
| | |||||
* | Add a set of tests devised by Rivest which are designed to detect a | lloyd | 2010-09-23 | 1 | -0/+18 |
| | | | | | range of single bit errors in DES (though really this method is more useful for a hardware implementation than table based software). | ||||
* | In RSA and RW key generation, if we generate a key that isn't exactly | lloyd | 2010-09-22 | 2 | -11/+12 |
| | | | | | | | the requested bitsize, simply repeat instead of failing immediately. The condition could actually occur in practice if a prime that was on the very low end of the specified range was chosen (eg q happened to be chosen as 10000...001). | ||||
* | Deal with loss of store search | lloyd | 2010-09-21 | 2 | -2/+3 |
| | |||||
* | Add info.txt file | lloyd | 2010-09-21 | 1 | -0/+1 |
| | |||||
* | Do the prep/unroll phase 4 rounds before it is needed instead of 3; | lloyd | 2010-09-21 | 1 | -97/+92 |
| | | | | tests on Nehalem indicate a small but measurable win there (about 3%). | ||||
* | Clean up, hide union accesses with a macro to make it easier to test | lloyd | 2010-09-21 | 1 | -40/+92 |
| | | | | alternative methods of getting pieces of the expanded message. |