aboutsummaryrefslogtreecommitdiffstats
path: root/checks
Commit message (Collapse)AuthorAgeFilesLines
* Fix --bench-typelloyd2008-09-091-10/+17
|
* Add --test to OptionParser listlloyd2008-09-081-1/+1
|
* Last checkin would crash, because the destructor for the rng would notlloyd2008-09-081-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 duringlloyd2008-09-081-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 profilerlloyd2008-09-071-0/+3
|
* Reduce how often DSA and DH keys are generated during benchmarkslloyd2008-09-071-2/+2
|
* Tweak timer outputlloyd2008-09-071-2/+2
|
* Flush stdout after every new resultlloyd2008-09-071-1/+1
|
* Choice of clock_gettime, gettimeofday, times, and clock for benchmark timingslloyd2008-09-052-8/+47
|
* Use the Timer class for all benchmarkinglloyd2008-09-059-131/+91
|
* New DH benchmark, much more reflective of real usage as well.lloyd2008-09-051-114/+64
|
* Delete dead code. New shared benchmark framework for RSA/RW. RSA benchmarklloyd2008-09-021-250/+155
| | | | now uses signing instead of encryption.
* Inline some methods of Timerlloyd2008-08-3112-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,lloyd2008-08-311-51/+158
| | | | also now reporting key generation and (for DSA) parameter generation times.
* Add a simple timer classlloyd2008-08-312-0/+138
|
* Benchmark change: Skip RSA 1536, DH 1536. Add DSA 2048/256 and 3072/256, RSA ↵lloyd2008-08-301-6/+16
| | | | 8192, DH 8192
* Add the block cipher Noekeon (http://gro.noekeon.org/). Only "indirect mode"lloyd2008-07-112-1/+13
| | | | keying is supported (see section 2.3 of the specification for details)
* Add interfaces for add_entropy_source and add_entropy tolloyd2008-06-281-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.7lloyd2008-06-281-2/+2
|
* Delete the self-test global RNG: just create one in main() and pass itlloyd2008-06-286-57/+56
| | | | where it is needed.
* Remove most of the direct references to the global_rng() calllloyd2008-06-287-114/+137
|
* Change make_rng to be a static member of RandomNumberGeneratorlloyd2008-06-281-1/+1
|
* New structure for entropy sources + RNGs. The entropy sources are owned bylloyd2008-06-272-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. Assumeslloyd2008-06-279-39/+59
| | | | access to /dev/random (will be cleaned up shortly)
* Remove load checking, as it requires an RNG (at least at the moment).lloyd2008-06-272-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 keylloyd2008-06-203-14/+17
| | | | constructors.
* Consolidate the two DH_PrivateKey constructors into a single one takinglloyd2008-06-202-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_encodelloyd2008-06-201-5/+6
|
* Convert pkcs8_decoder() and x509_decoder() to take a RandomNumberGenerator&lloyd2008-06-203-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 codelloyd2008-06-204-135/+129
|
* Fix more -Wmissing-declaration warningslloyd2008-06-184-10/+22
|
* Fix -Wmissing-declarations warninglloyd2008-06-161-40/+43
|
* Fix some -Wmissing-declarations warningslloyd2008-06-128-9/+43
|
* X509_CA::{new_crl,update_crl} take a RandomNumberGenerator referencelloyd2008-06-111-2/+2
|
* X509::create_cert_req and X509::create_self_signed_cert take an RNG reflloyd2008-06-111-3/+9
|
* Modify X509_CA::make_cert and X509_CA::sign_request to take a RNG referencelloyd2008-06-111-7/+8
| | | | argument in favor of referencing the global PRNG argument
* Change PK_Signer::signature to take a RandomNumberGenerator referencelloyd2008-06-102-21/+5
| | | | instead of always using the global PRNG.
* PK_Encryptor::encrypt now takes a RandomNumberGenerator reference, insteadlloyd2008-06-102-14/+7
| | | | of using the global RNG object.
* Make the contents of Botan_types namespace be just using declarations,lloyd2008-06-071-1/+1
| | | | instead of introducing new typedefs.
* Add a full set of tests for the ANSI X9.31 PRNG, using data takenlloyd2008-06-078-53/+2158
| | | | | | | | from the NIST CAVS dataset, taken on June 7 2008 from http://csrc.nist.gov/groups/STM/cavp/standards.html AES-128, AES-192, AES-256, and 2 and 3-key TripleDES variants are all tested.
* Make the two parameters of Randpool (which underlying block cipher and MAClloyd2008-05-252-5/+13
| | | | to use) explicit arguments to the constructor instead of being hardcoded.
* Avoid using the global RNG in check_key, instead pass a reference.lloyd2008-05-241-10/+10
| | | | Update the examples
* Previously random_integer and friends used the global PRNG object to getlloyd2008-05-245-18/+28
| | | | | | | | | | | | | random bits. Now they take a reference to a RandomNumberGenerator object. This was applied several times out, so now the constructors to private key objects also take a RandomNumberGenerator& argument. This is also true for a number of randomized algorithms (Miller-Rabin, for instance). You can get a reference to the global PRNG with global_state().prng_reference() This is a provisional thing: and warning: it is not thread safe! If this is a problem instead keep per-thread PRNGs and pass them were needed.
* propagate from branch 'net.randombit.botan' (head ↵lloyd2008-04-216-20/+20
|\ | | | | | | | | | | 51f9ee5180a5cacdfff31504266e883b7bb0eb00) to branch 'net.randombit.botan.remove-libstate' (head 636b767b9686261418b1cb45a6271edeef87501b)
| * propagate from branch 'net.randombit.botan' (head ↵lloyd2008-04-106-20/+20
| |\ | | | | | | | | | | | | | | | 6afe2db1f710f75bc27e189bb8bdb23613ce1ca3) to branch 'net.randombit.botan.remove-libstate' (head e40f0dbdfd847024c30fa0092c2acefc19a550b8)
| | * Remove the Global_RNG namespace, along with rng.h and rng.cpp. This waslloyd2008-04-076-20/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | essentially a facade for the RNG object living in the global library state. Rewrite all callers to directly invoke the global state object: this makes it more clear what functions are actually accessing mutable state outside of the normal reference graph (and thus, which functions will have to be altered in order to remove this dependency). Other facades remain in place for the configuration object and the memory allocator factory.
* | | Update Fixed_Output_RNG (used for testing) to implement is_seededlloyd2008-04-211-0/+2
|/ /
* / Change the interface of X509_CA::sign_request as follows:lloyd2008-04-101-2/+7
|/ | | | | | | | | | | - The allow_ca policy value is no longer checked. Callers should check if the request is for a CA cert and treat it accordingly; this makes it simpler to to case-by-case decisions (expecially among multiple threads) - Instead of a single time value, a u32bit representing the number of seconds from now the certificate should expire, the start and end times are passed explicitly as two X509_Time values.
* Fix pk_bench.cpp compilation (remove a stray try statement)lloyd2008-01-171-3/+2
|
* merge of '3d9e9476c5b2a2ee125eee7e0dd10bfe460d0546'lloyd2007-12-2418-342/+364
|\ | | | | | | and '9fe0310805932b889bdfa17c9213f2b97d47ab6a'