Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Compliation fixes | lloyd | 2008-09-28 | 2 | -7/+6 |
| | |||||
* | Modularize the public key algorithms, though currently a great deal of | lloyd | 2008-09-28 | 3 | -52/+165 |
| | | | | | | the underlying implementation goop remains in the core library instead of being shunted off, due to various dependencies it has (most of which it shouldn't). | ||||
* | Allow test suite to build even if RNG or DLIES is missing | lloyd | 2008-09-28 | 2 | -4/+22 |
| | |||||
* | Create an x509 module containing all of the X509 certificate and CA | lloyd | 2008-09-28 | 1 | -37/+50 |
| | | | | code as well as the code for handling PKCS #10 requests. | ||||
* | Modularize hashes and checksums | lloyd | 2008-09-28 | 1 | -1/+1 |
| | |||||
* | Modularize the Adler32 checksum in checksums/adler32 | lloyd | 2008-09-28 | 1 | -6/+6 |
| | | | | | | | | | Add a new option --disable-modules which allows for disabling any set of modules that normally would be autoloaded. Rename the Botan feature test macros from BOTAN_EXT_BLAH to BOTAN_HAS_BLAH, which will be much more sensible especially when everything is done in this fashion (eg, BOTAN_HAS_BLOWFISH or BOTAN_HAS_RSA, etc) | ||||
* | Add back from Ajisai 0.5.0 the implementations of the SSLv3 MAC and PRF | lloyd | 2008-09-27 | 1 | -0/+240 |
| | | | | | | | | | | | and the TLS v1.0 PRF. These were removed from Botan in v1.4.5. Initially I had felt that since these protocols were specific to SSL/TLS they should be placed in Ajisai (an SSL/TLS library based on Botan). However upon further reflection I have realized it is quite possible that other alternate implementations of SSL/TLS based on Botan would be quite desirable, and so to make that (a very slightly bit) easier I am adding back the SSL/TLS functions to Botan, so other SSL/TLS libs can use them directly. | ||||
* | Use --init arg, was disabled at some point earlier | lloyd | 2008-09-16 | 1 | -1/+1 |
| | |||||
* | Time RSA key generation again | lloyd | 2008-09-15 | 1 | -1/+5 |
| | |||||
* | Clean up creation of RNG objects | lloyd | 2008-09-15 | 1 | -9/+8 |
| | |||||
* | Explicit cast from double to int using static_cast | lloyd | 2008-09-15 | 1 | -1/+1 |
| | |||||
* | Oops disable part of previous, was for testing | lloyd | 2008-09-14 | 1 | -1/+7 |
| | |||||
* | Only randomize inputs every 100 runs to minimize overhead (makes profiling ↵ | lloyd | 2008-09-14 | 1 | -31/+40 |
| | | | | easier) | ||||
* | Split RSA and RW benchmarks. Benchmark RSA encryption and signatures. | lloyd | 2008-09-14 | 1 | -16/+87 |
| | |||||
* | Don't allow zero second benchmarks | lloyd | 2008-09-14 | 1 | -1/+1 |
| | |||||
* | Increase default benchmark time to 5s... 1.5 seconds (old value) is too | lloyd | 2008-09-14 | 1 | -2/+2 |
| | | | | | low, can be easily thrown off by random background activity, especially on uniprocessor machines | ||||
* | Padding changes in the PK benchmarks: | lloyd | 2008-09-12 | 1 | -3/+3 |
| | | | | | | RSA: EMSA4(SHA-1) -> EMSA1(SHA-1) RW: EMSA4(SHA-1) -> EMSA2(SHA-1) ELG: Raw -> EME1(SHA-1) | ||||
* | In the benchmarks, replace Lion(MD5,WiderWake4+1-BE,65536) with1.7.11 | lloyd | 2008-09-11 | 1 | -4/+8 |
| | | | | | Lion(SHA-256,Turing,8192) and replace Luby-Rackoff(SHA-1) with Luby-Rackoff(SHA-512) | ||||
* | Handle configuration of what kind of clock to use for benchmarking. | lloyd | 2008-09-11 | 1 | -4/+39 |
| | | | | | | Linux defaults to clock_gettime, FreeBSD defaults to gettimeofday, everything else defaults to clock (though it is easy to a timer on with -DUSE_<CLOCK_NAME>=1, eg -DUSE_GETTIMEOFDAY=1 or -DUSE_TIMES=1 | ||||
* | Add implementation of Salsa20 stream cipher | lloyd | 2008-09-09 | 2 | -0/+281 |
| | |||||
* | Fix --bench-type | lloyd | 2008-09-09 | 1 | -10/+17 |
| | |||||
* | Add --test to OptionParser list | lloyd | 2008-09-08 | 1 | -1/+1 |
| | |||||
* | Last checkin would crash, because the destructor for the rng would not | lloyd | 2008-09-08 | 1 | -60/+55 |
| | | | | | | | | run until after the block ended, which was after set_global_state(0) had run, causing crashes in the destructors that attempted to free memory. Restructure the argument handling, it is significantly easier to understand now. Only create the rng where it is needed. | ||||
* | Run test_types every time prior to initialization, instead of just during | lloyd | 2008-09-08 | 1 | -58/+66 |
| | | | | | | | the test suite. Instead of exiting, just carry on; the full test suite will check if the problem is real or if std::numeric_limits is just wonky. | ||||
* | Disable extensive testing during benchmark key generation: throws off profiler | lloyd | 2008-09-07 | 1 | -0/+3 |
| | |||||
* | Reduce how often DSA and DH keys are generated during benchmarks | lloyd | 2008-09-07 | 1 | -2/+2 |
| | |||||
* | Tweak timer output | lloyd | 2008-09-07 | 1 | -2/+2 |
| | |||||
* | Flush stdout after every new result | lloyd | 2008-09-07 | 1 | -1/+1 |
| | |||||
* | Choice of clock_gettime, gettimeofday, times, and clock for benchmark timings | lloyd | 2008-09-05 | 2 | -8/+47 |
| | |||||
* | Use the Timer class for all benchmarking | lloyd | 2008-09-05 | 9 | -131/+91 |
| | |||||
* | New DH benchmark, much more reflective of real usage as well. | lloyd | 2008-09-05 | 1 | -114/+64 |
| | |||||
* | Delete dead code. New shared benchmark framework for RSA/RW. RSA benchmark | lloyd | 2008-09-02 | 1 | -250/+155 |
| | | | | now uses signing instead of encryption. | ||||
* | Inline some methods of Timer | lloyd | 2008-08-31 | 12 | -258/+26 |
| | | | | Randomly generate the RW keys as well, removing all need for the keys/ dir | ||||
* | Rewrite the RSA and DSA benchmarks to be much more readable and flexible, | lloyd | 2008-08-31 | 1 | -51/+158 |
| | | | | also now reporting key generation and (for DSA) parameter generation times. | ||||
* | Add a simple timer class | lloyd | 2008-08-31 | 2 | -0/+138 |
| | |||||
* | Benchmark change: Skip RSA 1536, DH 1536. Add DSA 2048/256 and 3072/256, RSA ↵ | lloyd | 2008-08-30 | 1 | -6/+16 |
| | | | | 8192, DH 8192 | ||||
* | Add the block cipher Noekeon (http://gro.noekeon.org/). Only "indirect mode" | lloyd | 2008-07-11 | 2 | -1/+13 |
| | | | | keying is supported (see section 2.3 of the specification for details) | ||||
* | Add interfaces for add_entropy_source and add_entropy to | lloyd | 2008-06-28 | 1 | -10/+8 |
| | | | | | | | | | | | RandomNumberGenerator, and make ANSI_X931_PRNG's implementations just forward the arguments to the underlying RNG. This allows seeding the RNG even if no entropy modules are loaded into the library. Also it allows actually adding user-specified data; to do it otherwise would require creating the RNG objects yourself and retaining a pointer to the Randpool, which is pretty bogus. Move Null_RNG to rng.h | ||||
* | Default to using clock(), not rdtsc1.7.7 | lloyd | 2008-06-28 | 1 | -2/+2 |
| | |||||
* | Delete the self-test global RNG: just create one in main() and pass it | lloyd | 2008-06-28 | 6 | -57/+56 |
| | | | | where it is needed. | ||||
* | Remove most of the direct references to the global_rng() call | lloyd | 2008-06-28 | 7 | -114/+137 |
| | |||||
* | Change make_rng to be a static member of RandomNumberGenerator | lloyd | 2008-06-28 | 1 | -1/+1 |
| | |||||
* | New structure for entropy sources + RNGs. The entropy sources are owned by | lloyd | 2008-06-27 | 2 | -22/+15 |
| | | | | | | | Randpool, it will query them as needed (or if asked to do so). New function make_rng() that creates an RNG (X9.31 backed by a Randpool) and seeds it. Remove the entropy source related code from the Modules/Builtin_Modules classes. | ||||
* | Remove uses of global PRNG from self-test and benchmark code. Assumes | lloyd | 2008-06-27 | 9 | -39/+59 |
| | | | | access to /dev/random (will be cleaned up shortly) | ||||
* | Remove load checking, as it requires an RNG (at least at the moment). | lloyd | 2008-06-27 | 2 | -24/+34 |
| | | | | | | | | | Probably some variation of it will be added back in later, at least to do basic checks like that primes are really odd (and we can do basic primality checks, etc, even with an RNG). Alternative: call check_key() manually on public keys you load with an RNG object. | ||||
* | Similiar combining transform for the ElGamal, DSA, and NR private key | lloyd | 2008-06-20 | 3 | -14/+17 |
| | | | | constructors. | ||||
* | Consolidate the two DH_PrivateKey constructors into a single one taking | lloyd | 2008-06-20 | 2 | -14/+20 |
| | | | | | a RNG reference, a group, and an (optional) private key. The public key is now always rederived from the private. | ||||
* | Use RNG& argument for PKCS8::encrypt_key and PKCS8::PEM_encode | lloyd | 2008-06-20 | 1 | -5/+6 |
| | |||||
* | Convert pkcs8_decoder() and x509_decoder() to take a RandomNumberGenerator& | lloyd | 2008-06-20 | 3 | -6/+12 |
| | | | | | | | | reference, along with PKCS8::load_key get_pbe no longer calls new_params() on the newly instantiated instance, which is not backwards compatible (you have to either call new_params yourself, or explicitly set the iteration count, salt, etc) | ||||
* | Fix remaining -Wmissing-declarations warnings in self-test/benchmark code | lloyd | 2008-06-20 | 4 | -135/+129 |
| |