aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add an implementation of the Shanks-Tonelli algorithm, which is used tolloyd2008-07-074-2/+98
| | | | find square roots modulo a prime. Contributed by FlexSecure GmbH
* Remove printf in catch blocklloyd2008-07-071-1/+0
|
* Extend random_prime() to be able to generate primes of any bit size.lloyd2008-07-051-1/+10
| | | | | | | | | | | bits <= 1 -> error bits == 2 -> choose 2 or 3 at random bits == 3 -> choose 5 or 7 at random bits == 4 -> choose 11 or 13 at random bits >= 5 -> procedure used previously. Tested by running random_prime() with random bit sizes <= 16 until it had generated all <= 16 bit primes.
* Set MSVC dll import flags (from Joel Low)lloyd2008-07-031-1/+1
|
* Missing BOTAN_DLL for XTEA, noted by Joel Lowlloyd2008-07-031-1/+1
|
* Document changes so far since 1.7.7lloyd2008-06-301-0/+5
|
* Remove the free-standing function deref_alias. It only served as a forwarderlloyd2008-06-308-38/+32
| | | | | | for the implementation in Library_State. Instead explicitly call deref_alias on global_state() wherever the old freestanding version was used. This serves to make (more) uses of the global state explicit rather than implicit.
* Remove unnecessary include of rng.hlloyd2008-06-301-1/+0
|
* Remove the default_pbe option. Instead hardcode the default intolloyd2008-06-302-5/+2
| | | | | | | PKCS8::encrypt_key - this is slightly less flexible, but removes the dependency on the Library_State object. And if someone wants to use a different algorithm, they just have to pass in an actual value for the pbe string instead of letting it default to the empty string.
* Remove option v1_assume_ca, no longer usedlloyd2008-06-301-2/+0
|
* Previously X509_Store took two configuration values from the librarylloyd2008-06-303-10/+6
| | | | | | | | | config state: how long successful validations should be cached, and the amount of slack to allow on time boundary checks. Now these are passed as arguments to the constructor, as a pair of 32-bit integers representing the number of seconds to allow as slack and the number of seconds to cache validations for. They default to the same compiled in defaults as before, 24 hours (86400 seconds) and 30 minutes (1800 seconds), respectively.
* Remove the Config class.lloyd2008-06-3014-217/+118
| | | | | | | | In reality, Config was a singleton, with the only owner being the Library_State object. Theoretically one could create and use another Config instance, but in practice it was never done. Reflect the reality and inline the members and public functions of Config in Library_State, removing Config entirely.
* Remove unnecessary inclusion of botan/config.h in several moduleslloyd2008-06-305-5/+0
|
* Remove global_config() - replace by direct calls to global_state()lloyd2008-06-3014-46/+48
|
* Mark this as 1.7.8-pre in readme and log filelloyd2008-06-302-1/+3
|
* Bump version code to 1.7.8lloyd2008-06-301-1/+1
|
* Ignore files containing # chars (emacs temp files)lloyd2008-06-301-1/+2
|
* Make use of RandomNumberGenerator implementing add_entropy_source inlloyd2008-06-281-14/+16
| | | | make_rng()
* Add interfaces for add_entropy_source and add_entropy tolloyd2008-06-285-19/+41
| | | | | | | | | | | 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
* Reseed the underlying PRNG when ANSI_X931_PRNG:reseed is calledlloyd2008-06-281-0/+2
|
* Document the removal of the PK filter objects (somewhat after the fact)lloyd2008-06-281-0/+1
|
* Default to using clock(), not rdtsc1.7.7lloyd2008-06-281-2/+2
|
* Update changelog and readme for 1.7.7lloyd2008-06-282-2/+3
|
* The two remaining locks were not being deleted, leaking memorylloyd2008-06-281-0/+2
|
* Fix the DSA examples. Reindent.lloyd2008-06-2813-30/+50
|
* 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-283-7/+4
|
* Include rng.h in botan.hlloyd2008-06-271-0/+1
|
* Update more of the exampleslloyd2008-06-273-5/+11
|
* Update pkcs10, passhash exampleslloyd2008-06-272-9/+16
|
* Update some of the examples for the recent API changeslloyd2008-06-277-28/+42
|
* New structure for entropy sources + RNGs. The entropy sources are owned bylloyd2008-06-2711-198/+202
| | | | | | | 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.
* Avoid warninglloyd2008-06-271-1/+1
|
* Remove the global PRNG object as well as the global list of entropy sources.lloyd2008-06-274-134/+1
|
* Remove PRNG_Unseeded throw() specifies from the RNG randomize() functions.lloyd2008-06-274-4/+4
| | | | | | They were probably not a good idea. If nothing else, these functions might throw bad_alloc, and possibly other errors. Something broad like std::exception might be applicable, but that seems pointlessly broad.
* 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)
* OctetString now requires a RandomNumberGenerator& to create a randomlloyd2008-06-272-4/+5
| | | | key or IV; it does not reference the global RNG.
* Reorganize the EMSA classes, and remove the last references to prng_referencelloyd2008-06-277-60/+138
| | | | in the library ccode.
* Previously if DL_Group was given a q value of zero, it would check tolloyd2008-06-271-4/+0
| | | | | | | | | | | | see if (p-1)/2 was prime, and if so set q to that. This is to deal with certain bogus DH formats (PKCS #3, specifically; the 'modern' ANSI formats always provide the q subgroup value). However this required access to the RNG. Rather than push RNG usage all the way down into that part of DL group, simply remove the feature. Since PKCS #3 format is only really used for DH keys, it will not much affect anything functionally (that I can see).
* Remove unneeded include of libstate.hlloyd2008-06-271-1/+0
|
* Remove load checking, as it requires an RNG (at least at the moment).lloyd2008-06-2722-101/+106
| | | | | | | | | 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.
* Split IF_Core constructor into two, one for public keys and one for private.lloyd2008-06-273-7/+17
| | | | Public version doesn't need an RNG argument.
* The change in rev f6d0cb6f9569d228ed6a11d021c3f57f55220bde was actuallylloyd2008-06-261-4/+4
| | | | | | | | | | | completely wrong, and it is rather disturbing I made that mistake. The poll() function will gather up to the number of bytes passed as its argument; it will do this by opening up files and reading up to 1024 bytes from each one. So we might open between 256 and 256*1024 files, depending on the sizes of them (ignoring empty files, which count for zero bytes). (Idea: also include the name of the file in the output? Is that useful?) Move the read_buf out of the loop to minimize allocator thrashing.
* merge of '763336fcbf1dad6a9acfdc1e899b59916ab55a20'lloyd2008-06-261-2/+2
|\ | | | | | | and 'f6d0cb6f9569d228ed6a11d021c3f57f55220bde'
| * ew_ftw was reading up to 32 Mb for a fast poll and 256 Mb for a slow poll.lloyd2008-06-221-2/+2
| | | | | | | | That seems excessive. Reduce to 32 Kb and 256 Kb (resp).
* | Remove SHA1PRNG for the moment, untillloyd2008-06-235-218/+5
|/ | | | | | | | | a) I am sure we really want to include this (proprietary, unanalyzed?) PRNG in Botan b) I have a chance to add test cases and clean up the code. Also note a few more changes in the changelog, and set a provisial release date for sometime in July.
* Remove the hooks for the AEP module, since it was removed due to lack oflloyd2008-06-221-16/+0
| | | | | | testability (have a card still, but the drivers are for 2.4 kernel and seemingly not 64-bit or thread safe, so it's pretty much a paperweight right now).
* Use croak instead of dielloyd2008-06-221-1/+1
|
* An unknown module name pass to --module died with a undef hash reference,lloyd2008-06-221-0/+2
| | | | which is pretty unfriendly. Die with an error instead.