aboutsummaryrefslogtreecommitdiffstats
path: root/src/entropy
Commit message (Collapse)AuthorAgeFilesLines
* Reduce /dev/random poll times: 5ms for fast, 20 for slowlloyd2008-11-101-2/+2
|
* The device reader constructors were being called too soon. Insteadlloyd2008-11-102-19/+40
| | | | close the fds in the entropy source destructor.
* Split base.h into block_cipher.h and stream_cipher.hlloyd2008-11-081-0/+2
| | | | | | It turned out many files were including base.h merely to get other includes (like types.h, secmem.h, and exceptn.h). Those have been changed to directly include the files containing the declarations that code needs.
* Cache device descriptors in Device_EntropySourcelloyd2008-11-072-34/+45
|
* Add fast_poll implementationlloyd2008-11-042-3/+12
|
* Substantially change Randpool's reseed logic. Now when a reseedlloyd2008-10-2713-16/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | is requested, Randpool will first do a fast poll on each entropy source that has been registered. It will count these poll results towards the collected entropy count, with a maximum of 96 contributed bits of entropy per poll (only /dev/random reaches this, others measure at 50-60 bits typically), and a maximum of 256 for sum contribution of the fast polls. Then it will attempt slow polls of all devices until it thinks enough entropy has been collected (using the rather naive entropy_estimate function). It will count any slow poll for no more than 256 bits (100 or so is typical for every poll but /dev/random), and will attempt to collect at least 512 bits of (estimated/guessed) entropy. This tends to cause Randpool to use significantly more sources. Previously it was common, especially on systems with a /dev/random, for only one or a few sources to be used. This change helps assure that even if /dev/random and company are broken or compromised the RNG output remains secure (assuming at least some amount of entropy unguessable by the attacker can be collected via other sources). Also change AutoSeeded_RNG do an automatic poll/seed when it is created.
* Move EntropySource base class to new entropy_src.h (which allows the ↵lloyd2008-10-268-8/+64
| | | | | | implementations to decouple from knowing about RandomNumberGenerator).
* Add BOTAN_DLL macro to public class definitions that were missing it.lloyd2008-10-098-8/+8
|
* propagate from branch 'net.randombit.botan' (head ↵lloyd2008-09-301-0/+1
| | | | | | fd327b29aa542e0ad5ff6d37d8392321670f0369) to branch 'net.randombit.botan.modularized' (head 3f8d05493d4b192243fdc8a7f518ed1013c3be54)
* Rename all modinfo.txt files to info.txt, since they are all (none) oflloyd2008-09-298-0/+0
| | | | | them modules now. In any case there is no distinction so info.txt seems better.
* New filters module. Add deps for it in some needed areas (codec, pbes)lloyd2008-09-281-0/+10
|
* Move buf_es into module, add deps where neededlloyd2008-09-286-0/+144
|
* Move all modules into src/ directorylloyd2008-09-2824-0/+1445