Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Revert 2707eb68cb91e0633815a6d6c68d22b9f41227a4 - I had forgotten that | lloyd | 2008-11-12 | 1 | -1/+1 |
| | | | | | | | | Engine_Iterator (and thus the public key engine code) still processes in order of first engine to last in the list. Benchmarking confirmed that GNU MP is still faster than both OpenSSL and Botan for public key operations (at least on my machine). | ||||
* | Oops, 2^32 nanoseconds < 4.3 seconds, which is pretty small. Use 64 bit | lloyd | 2008-11-12 | 1 | -7/+7 |
| | | | | | integers where we manipulate values denominated in nanoseconds to avoid overflow (2^64 nanoseconds = 584.55 years, aka long enough) | ||||
* | Add an implementation of name() to Timer. This allows it to be | lloyd | 2008-11-12 | 1 | -0/+2 |
| | | | | | | | | | instantiated directly, which seemd a useful thing since a Timer ref must be passed to the benchmark system. However I think due to the low resolution of clock() the results were highly variable. Using gettimeofday or clock_gettime (Unix_Timer, POSIX_Timer) proved more consistent and in sync with what the existing benchmarks show, so use one of those if possible. | ||||
* | Remove support for provider identifiers from SCAN_Name - it turns out this | lloyd | 2008-11-12 | 16 | -213/+277 |
| | | | | | | | | | | | | was not the right place to keep track of this information. Also modify all Algorithm_Factory constructor functions to take instead of a SCAN_Name a pair of std::strings - the SCAN name and an optional provider name. If a provider is specified, either that provider will be used or the request will fail. Otherwise, the library will attempt best effort, based on user-set algorithm implementation settings (combine with benchmark.h for choosing the fastest implementation at runtime) or if not set, a static ordering (preset in static_provider_weight in prov_weight.cpp, though it would be nice to make this easier to toggle). | ||||
* | Update readme and log for 1.7.21 release 2008-11-111.7.21 | lloyd | 2008-11-11 | 2 | -4/+4 |
| | |||||
* | Remove last uses of lookup.h in CMS code | lloyd | 2008-11-11 | 2 | -18/+31 |
| | |||||
* | Remove some uses of lookup.h from CMS code | lloyd | 2008-11-11 | 2 | -4/+9 |
| | |||||
* | Mention an idea for wall clock sync in Hardware_Timer | lloyd | 2008-11-11 | 1 | -0/+6 |
| | |||||
* | Process engines in order of addition instead of backwards | lloyd | 2008-11-11 | 1 | -3/+5 |
| | |||||
* | Change self tests to not use lookup (instead passes_self_tests takes an | lloyd | 2008-11-11 | 2 | -101/+121 |
| | | | | Algorithm_Factory) | ||||
* | Add constructors to MAC_Filter taking a MAC object pointer instead of | lloyd | 2008-11-11 | 1 | -0/+31 |
| | | | | a name. | ||||
* | Drop use of entropy estimation in Randpool for the same reason as HMAC_RNG. | lloyd | 2008-11-11 | 6 | -147/+21 |
| | | | | | | As with HMAC_RNG, instead assume one bit of conditional entropy per byte of polled material. Since they are no longer used, drop the entropy estimation routines entirely. | ||||
* | Move utils/{timer,mutex} to toplevel | lloyd | 2008-11-11 | 27 | -0/+0 |
| | |||||
* | Rename timers.h to timer.h | lloyd | 2008-11-11 | 9 | -9/+9 |
| | |||||
* | Remove pk_lookup - half of it (look_pk.{cpp,h}) depended on libstate directly, | lloyd | 2008-11-11 | 17 | -35/+11 |
| | | | | | the other half was relied upon by pubkey. Move the contents into those two modules. Update deps. | ||||
* | Mention engine changes in release notes | lloyd | 2008-11-11 | 1 | -0/+2 |
| | |||||
* | Include libstate.h in botan.h, since it is pretty vital at this point to | lloyd | 2008-11-11 | 1 | -0/+1 |
| | | | | | be able to get the global_state so as to get a reference to the Algorithm_Factory | ||||
* | Wrap at 80 columns | lloyd | 2008-11-11 | 5 | -7/+18 |
| | |||||
* | Add a runtime benchmarking system (for ciphers/hash/MACs) | lloyd | 2008-11-11 | 3 | -0/+232 |
| | |||||
* | Make a change in how providers are requiested in Algorithm_Factory to | lloyd | 2008-11-11 | 1 | -8/+24 |
| | | | | | | | | | | | | | | | the engines. Unfortunately right now Botan doesn't understand that a construction like HMAC, while the basic HMAC class lives only in core, can use any of a variety of implementations as the underlying algorithm. The previous version got this completely wrong (basically the first time a particular HMAC was requested, one hash provider would be chosen at random). Now instead we always use the same subprovider. This means HMAC(SHA-1) won't see a speedup even if there is an asm version available (similarly, CMAC(AES) wouldn't see a speedup with OpenSSL's AES or an engine that provided AES using VIA's or Intel's extensions). Certainly a major deficiency, but I haven't worked out how to fix it yet. | ||||
* | Move most of the remaining libstate code to pk_engine.cpp, move engines | lloyd | 2008-11-11 | 51 | -284/+128 |
| | | | | | back to the toplevel since most othe dependencies have been removed now (except get_cipher which still needs changes) | ||||
* | Use cache in Algorithm_Factory for ciphers | lloyd | 2008-11-11 | 3 | -129/+124 |
| | |||||
* | Throw an exception if SCAN name is malformed or empty | lloyd | 2008-11-11 | 1 | -0/+3 |
| | |||||
* | Fix algo_cache to track aliases, all tests pass | lloyd | 2008-11-11 | 2 | -31/+27 |
| | |||||
* | Remove support for multiple providers in SCAN_Name, mostly because I | lloyd | 2008-11-11 | 2 | -32/+19 |
| | | | | couldn't really figure out how the semantics should work. | ||||
* | Add a new cache at the level of Algorithm_Factory. Intent is to replace | lloyd | 2008-11-11 | 4 | -1/+149 |
| | | | | | | | the caches included in the Engines, allowing faster search/query along and making the Engine implementations mostly or entirely stateless, also removing the need for a two-phase initialization there. Stil buggy + incomplete. | ||||
* | Make Engine::find_XYZ public | lloyd | 2008-11-11 | 1 | -15/+17 |
| | |||||
* | Remove needless include of libstate.h from init.h | lloyd | 2008-11-11 | 1 | -1/+2 |
| | |||||
* | Split asm_engine into three engines (ia32, amd64, sse2). This allows | lloyd | 2008-11-11 | 14 | -71/+202 |
| | | | | them to be individually requested as providers on lookup. | ||||
* | Make SCAN_Name::arg return a new SCAN_Name that has the same providers list, | lloyd | 2008-11-11 | 5 | -30/+49 |
| | | | | this allows provider preferences to be passed down to sub-algorithms. | ||||
* | Switch to Algorithm_Factory in PBES2 | lloyd | 2008-11-11 | 3 | -114/+129 |
| | |||||
* | Remove global state dependency from pbes1 | lloyd | 2008-11-11 | 3 | -38/+94 |
| | |||||
* | Bubble up use of global algo factory out of DSA parameter gen to DL_Group | lloyd | 2008-11-11 | 3 | -6/+14 |
| | |||||
* | Update Library_State for new Algorithm_Factory constructor | lloyd | 2008-11-11 | 1 | -1/+1 |
| | |||||
* | Remove pk testing policies (now static) | lloyd | 2008-11-11 | 1 | -4/+0 |
| | |||||
* | Remove a global_state() dependency on Engine without breaking Monotone | lloyd | 2008-11-11 | 4 | -15/+19 |
| | | | | via two-stage initialization. | ||||
* | Make the level of key consistency checking performed be a build constant | lloyd | 2008-11-11 | 2 | -19/+8 |
| | | | | instead of runtime configurable. | ||||
* | Add a function to query algorithm providers | lloyd | 2008-11-11 | 2 | -0/+27 |
| | |||||
* | Fix destructor | lloyd | 2008-11-11 | 1 | -1/+1 |
| | |||||
* | After finding myself typing global_state().algorithm_factory() instead | lloyd | 2008-11-11 | 2 | -10/+11 |
| | | | | | of algo_factory() several times, I decided to rename the functions. algorithm_factory() just forwards to algo_factory as an inline. | ||||
* | Add back default empty arguments to LibraryInitializer | lloyd | 2008-11-11 | 2 | -3/+3 |
| | | | | Set default thread safety to false | ||||
* | Move Algorithm_Factory from libstate (which it did not depend on) to ↵ | lloyd | 2008-11-11 | 4 | -3/+16 |
| | | | | algo_factory/ | ||||
* | Drop look_add.h and the freestanding add_algorithm functions | lloyd | 2008-11-11 | 3 | -66/+0 |
| | |||||
* | Change LibraryInitializer back to accepting a std::string for backwards | lloyd | 2008-11-11 | 4 | -6/+36 |
| | | | | compatability. | ||||
* | Fix leak in Luby-Rackoff lookup (got new object instead of prototype as ↵ | lloyd | 2008-11-11 | 1 | -2/+1 |
| | | | | intented) | ||||
* | Remove unused include of <memory> | lloyd | 2008-11-11 | 1 | -1/+0 |
| | |||||
* | Fix segfault due to shared objects in DLIES test | lloyd | 2008-11-11 | 1 | -3/+10 |
| | |||||
* | New function name in SCAN_Name | lloyd | 2008-11-11 | 1 | -1/+1 |
| | |||||
* | Remove lookup.h use from DLIES, PK key agreement, DSA param gen, get_enc.cpp | lloyd | 2008-11-11 | 13 | -64/+100 |
| | |||||
* | Remove lookup dep from basic pubkey classes | lloyd | 2008-11-10 | 4 | -47/+32 |
| |