aboutsummaryrefslogtreecommitdiffstats
path: root/checks
Commit message (Collapse)AuthorAgeFilesLines
* Add GOST 34.10 benchmarks. Kill of last bits of ECKAEG terminology.lloyd2010-03-024-24/+92
|
* Rename PointGFp::get_jac_proj_{x,y,z} simply get_{x,y,z}lloyd2010-03-021-32/+32
|
* Rename ECKAEG to ECDH. As far as I can tell they are the same algorithm,lloyd2010-03-022-54/+52
| | | | | I'm not sure where the old name came from though as literally the only hits for it on Google are botan-related.
* Remove auto_ptr from ECC key typeslloyd2010-03-022-8/+7
|
* Remove a fairly useless member of EC_PublicKey that was only used forlloyd2010-03-021-4/+4
| | | | | | | handling ImplicitCA ECDSA keys in the CVC code. Currently dealt with in CVC by simply commenting out the calls - CVC is already pretty broken and I'd much rather have ECC sane and under control and CVC totally broken than ECC remaining in its current state.
* Kill get_EC_Dom_Pars_by_oidlloyd2010-03-016-28/+32
|
* Clean up EC_Domain_Paramslloyd2010-03-011-6/+6
|
* Delete gfp_element.h and remove the gfpmath testslloyd2010-02-253-531/+0
|
* Change create_random_point to use Modular_Reducerlloyd2010-02-251-11/+9
|
* Remove unneeded include of gfp_elementh.hlloyd2010-02-251-1/+0
|
* Remove another useless EC testlloyd2010-02-251-33/+0
|
* Remove a useless EC test (was testing mres)lloyd2010-02-251-34/+0
|
* create_random_point was used in one tests though, so add it back in ec_tests.cpplloyd2010-02-251-0/+25
|
* Make PointGFp::mult2_in_place privatelloyd2010-02-251-22/+17
|
* Inline some simple GFpElement functions. Remove ostream << operatorlloyd2010-02-251-0/+5
|
* CurveGFp: Inline, deleting source file. Store only a,b,p aslloyd2010-02-253-29/+31
| | | | | BigInts. Also reorder constructor args to p, a, b which seems more sensible to me.
* Convert the PointGFp constructor taking three coordinates (Jacobian scheme)lloyd2010-02-251-30/+9
| | | | to take BigInts instead of GFpElements
* Convert PointGFp::get_jac_proj_{x,y,z} to return just the BigInt value,lloyd2010-02-251-87/+32
| | | | not a GFpElement
* Convert PointGFp::get_affine_{x,y} to return just the BigInt valuelloyd2010-02-251-61/+17
|
* Convert 3-arg constructoor of PointGFp to take BigInts instead oflloyd2010-02-251-4/+3
| | | | | | GFpElements. Clean up OS2ECP
* Kill dead codelloyd2010-02-251-24/+4
|
* Remove the montgomery optimizations from GFpElement entirely.lloyd2010-02-242-140/+27
| | | | | | | | 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-74/+2
|
* Remove GFpModulus entirelylloyd2010-02-241-1/+0
|
* Make passhash9 tests more verbose since they are slowlloyd2010-02-231-2/+11
|
* Remove use of tr1 entirely from gfpmath.lloyd2010-02-232-194/+11
| | | | | | | 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.
* Correct passhash9 vector for recent format changes (longer salt+PRF output, ↵lloyd2010-02-141-2/+3
| | | | alg id)
* Fix passhash9 test for updated API and macro namelloyd2010-02-141-6/+6
|
* Prefix passhash with "$9$" in a manner similar with otherlloyd2010-02-021-0/+32
| | | | | | | | | | | | | | | | password hashing schemes. Increase salt size to 80 bits. Research shows that virtually no other PBKDF2 implementations support anything but SHA-1; for ease of implementation elsehwere switch back from SHA-512 to SHA-1. Should be mostly harmless; it limits total entropy of the password to a maximum of 160 bits, but this is unlikely anyway. Use two bytes to specify the work factor for future-proofing. Add a test.
* Modify the S2K interface. Instead of being stateful in terms of the saltlloyd2010-02-011-3/+3
| | | | | | | | | | | and iteration count, force it to be passed to each call to derive_key. So remove current_salt, set_iterations, new_random_salt, and change_salt functions from S2K interface. Update examples and test application to match. While I was in there, change the passhash example to use 64 bit salts and 128 bit PBKDF2 outputs.
* Add a set of test vectors for 3DES in counter mode generated bylloyd2010-01-291-0/+2746
| | | | | Crypto++ 5.6.0. Includes several largeish (64 and 128 block) tests, as further tests for a future bitslice implementation.
* Add a set of XTS tests using TripleDES; XTS mode supports either a 64-bitlloyd2010-01-281-0/+1408
| | | | | | | | | | or 128-bit cipher, but so far only 128-bit ciphers had been tested. I could not find another implementation of XTS supporting 3DES so these may be wrong, but at least this ensures they will be consistently wrong. Mostly in the smaller range (9 to 128 bytes) plus a few with large inputs (64 blocks) because if a bitslice DES implementation is ever added a test that actually does 64 blocks in parallel will be needed.
* Fix several buffering problems in the XTS implementation that wouldlloyd2010-01-251-0/+7110
| | | | | | | | | | | | | cause bad results if the input was not an even multiple of the block size. No released version was broken because the changes which caused the problem were related to using Buffered_Filter, which was introduced after 1.9.3 was released. Add more XTS test vectors using AES, Serpent, and Twofish. The AES tests come from Brian Gladman's XTS implementation. The Serpent and Twofish tests were generated by botan.
* Add SIMD version of Noekeon. On a Core2, about 2.7x faster using SIMD_SSE2lloyd2010-01-121-0/+2021
| | | | and 1.6x faster using SIMD_Scalar.
* Fix a test broken by the recent exception hierarchy changeslloyd2010-01-121-10/+2
|
* Add block cipher cascadelloyd2010-01-112-2/+51
|
* Clean up exceptions. Remove some unused ones like Config_Error. Makelloyd2010-01-052-15/+15
| | | | | | | Invalid_Argument just a typedef for std::invalid_argument. Make Botan::Exception a typedef for std::runtime_error. Make Memory_Exhaustion a public exception, and use it in other places where memory allocations can fail.
* Split AES tests by key length for AES-NIlloyd2010-01-051-44/+45
|
* Specific large tests for AES-128 to hit engineslloyd2010-01-041-3/+7
|
* Completely inline getopt.cpp into getopt.h so it can be used in toolbox and ↵lloyd2010-01-032-96/+85
| | | | other examples
* Add copyright and license notes to pretty much every file that didn't have them,lloyd2009-12-3114-0/+81
| | | | | | | | including the examples and self-test code. Most of these files had not copyright/license information at all; since a major point of the examples is to allow users to copy and paste code that already does something they want, an ambigious license is not good.
* Force line flush in benchmark, useful when tee'ing outputlloyd2009-12-231-1/+1
|
* Add last nights project, an SSE2 implementation of IDEA. Right about 4xlloyd2009-12-231-0/+17
| | | | faster than the scalar version on a Core2.
* Avoid VC++ warninglloyd2009-12-231-1/+1
|
* Increase default benchmark time to 5 secondslloyd2009-12-221-1/+1
|
* Full working amalgamation build, plus internal-only headers concept.lloyd2009-12-162-3/+0
|
* Consolidate the non-canonical epoch timers, like cpuid and Win32'slloyd2009-12-013-8/+7
| | | | | | | | | | | | | | QueryPerformanceCounter, into an entropy source hres_timer. Its results, if any, do not count as contributing entropy to the poll. Convert the other (monotonic/fixed epoch) timers to a single function get_nanoseconds_clock(), living in time.h, which statically chooses the 'best' timer type (clock_gettime, gettimeofday, std::clock, in that order depending on what is available). Add feature test macros for clock_gettime and gettimeofday. Remove the Timer class and timer.h. Remove the Timer& argument to the algorithm benchmark function.
* Rename/remove some secmem member variables for better matching with STLlloyd2009-11-172-4/+4
| | | | | | | | containers (specifically vector). Rename is_empty to empty Remove has_items Rename create to resize
* Split the AES vectors into 3 specifically named AES-128, AES-192, andlloyd2009-11-101-1651/+1650
| | | | | | AES-256 blocks, plus a handful remaining in a general AES block. This is necessary for any implementation which only supports a particular key size, since otherwise no tests at all will run on that implementation.
* In creating X.509 certificates and PKCS #10 requests, let (actually: require)lloyd2009-11-091-2/+8
| | | | | | | the user to specify the hash function to use, instead of always using SHA-1. This was a sensible default a few years ago, when there wasn't a ~2^60 attack on SHA-1 and support for SHA-2 was pretty much nil, but using something else makes a lot more sense these days.