Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add cipher mode selftesting in selftest.cpp | lloyd | 2009-10-06 | 3 | -151/+198 |
| | | | | Convert hardcoded startup selftests to use the new selftest framework | ||||
* | Fix mode name parsing | lloyd | 2009-10-06 | 1 | -1/+1 |
| | |||||
* | Refactor Default_Engine::get_cipher so bits can be called from selftest | lloyd | 2009-10-06 | 2 | -84/+104 |
| | |||||
* | Extensions to SCAN_Name for dealing with cipher mode names | lloyd | 2009-10-06 | 2 | -3/+62 |
| | |||||
* | In to_u32bit, ignore space characters in input | lloyd | 2009-10-06 | 1 | -0/+3 |
| | |||||
* | Add a TSS example | lloyd | 2009-10-06 | 1 | -0/+38 |
| | |||||
* | Add an implementation of threshold secret sharing from draft-mcgrew-tss-02 | lloyd | 2009-10-06 | 4 | -2/+331 |
| | |||||
* | Clean up cpuid calling | lloyd | 2009-10-06 | 1 | -32/+26 |
| | |||||
* | Disable prefetch in AES for now. Problem: with iterative modes like CBC, | lloyd | 2009-09-30 | 2 | -20/+0 |
| | | | | | | | | the prefetch is called for each block of input, and so a total of (4096+256)/64 = 68 prefetches are executed for each block. This reduces performance of iterative modes dramatically. I'm not sure what the right approach for dealing with this is. | ||||
* | Add cpuid check for Intel AES | lloyd | 2009-09-30 | 1 | -1/+8 |
| | |||||
* | Add vendor ID for AMD | lloyd | 2009-09-29 | 1 | -1/+1 |
| | |||||
* | Significantly rework CPUID support. Add cache line detection | lloyd | 2009-09-29 | 3 | -87/+114 |
| | |||||
* | Add .S files automatically as well | lloyd | 2009-09-29 | 1 | -1/+2 |
| | |||||
* | Fix benchmarking of PK stuff | lloyd | 2009-09-29 | 1 | -1/+1 |
| | |||||
* | Use prefetching in AES. Nominally, this will help somewhat with preventing | lloyd | 2009-09-29 | 1 | -0/+8 |
| | | | | | | | | | | timing attacks, since once all the TE/SE tables are entirely in cache then timing attacks against it become somewhat harder. However for this to be a full defense it would be necessary to ensure the tables were entirely loaded into cache, which is not guaranteed by the normal SSE prefetch instructions. (Or prefetch instructions for other CPUs, AFAIK). Much more importantly, it provides a 10% speedup. | ||||
* | Change the prefetching interface; move to PREFETCH namespace, and add a | lloyd | 2009-09-29 | 1 | -9/+25 |
| | | | | helper function for fetching both inputs and outputs of block ciphers. | ||||
* | Add interface for general runtime self-testing of ciphers, hashes, etc | lloyd | 2009-09-29 | 2 | -8/+75 |
| | |||||
* | Remove add block from utils/info.txt | lloyd | 2009-09-29 | 1 | -27/+0 |
| | |||||
* | Remove add block from block/info.txt | lloyd | 2009-09-29 | 1 | -6/+0 |
| | |||||
* | Remove add blocks from hash function info.txt files | lloyd | 2009-09-29 | 21 | -146/+0 |
| | |||||
* | Remove add blocks from block cipher info files | lloyd | 2009-09-29 | 25 | -188/+0 |
| | |||||
* | New logic for reading info.txt files - if no <add> block was given, then | lloyd | 2009-09-29 | 1 | -1/+8 |
| | | | | simply add all .cpp and .h files in the directory. | ||||
* | Add some basic prefetching support (only supported with GNU C++ or things | lloyd | 2009-09-29 | 4 | -3/+44 |
| | | | | | that claim to be by defining __GNUG__ (such as Intel C++)) in new utils header prefetch.h | ||||
* | Add a new macro BOTAN_BUILD_COMPILER_IS_XXX to build.h | lloyd | 2009-09-29 | 15 | -7/+40 |
| | |||||
* | Use load_le instead of make_u32bit in Serpent x86 key schedule code | lloyd | 2009-09-29 | 1 | -1/+1 |
| | |||||
* | merge of '1efb42e84eca9e01edd7b7f1335af7011eab994c' | lloyd | 2009-09-25 | 5 | -0/+169 |
|\ | | | | | | | and 'bb55abb64b64ca63aeb361db40c6bc4692d4ce48' | ||||
| * | Add runtime cpuid support. Check in the SSE2 engine that SSE2 is actually | lloyd | 2009-09-25 | 5 | -0/+169 |
| | | | | | | | | existing on the current CPU before returning an object. | ||||
* | | Modify the self test program to use the builtin runtime benchmarking goop. | lloyd | 2009-09-24 | 8 | -381/+223 |
| | | | | | | | | | | | | | | | | | | Features dropped: RNG benchmarking, the --bench-type option. New feature: Anything the library understands can be benchmarked using --bench-algo. Use 3DES and Serpent for mode benchmarking along with AES-128. | ||||
* | | Add BitBucket to basefilt.h | lloyd | 2009-09-24 | 1 | -0/+8 |
| | | |||||
* | | Add engine deps on the asm_xxx modules so the engines get loaded | lloyd | 2009-09-24 | 2 | -0/+8 |
| | | |||||
* | | Enable OpenSSL AES (fixed, I think). And add support for OpenSSL's RC5 | lloyd | 2009-09-24 | 1 | -1/+7 |
| | | |||||
* | | In the benchmark code, set a random key for the block and stream ciphers. | lloyd | 2009-09-23 | 1 | -0/+4 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This, I think, was what was causing the OpenSSL AES code to crash (without a key being set, the rounds are unset and probably causes the code to loop out past the end of an array somewhere). Sadly, this also confirms that OpenSSL's AES is much faster than Botan's: AES-128: 115.032 [core] 152.994 [openssl] AES-192: 98.6724 [core] 130.087 [openssl] AES-256: 86.6348 [core] 113.608 [openssl] Definitely some improvement can be made there! :( | ||||
* | | Remove redundant SHA-1 test vector of empty input | lloyd | 2009-09-22 | 1 | -1/+0 |
| | | |||||
* | | Add 4 test vectors for HMAC(BMW-512) | lloyd | 2009-09-21 | 1 | -0/+41 |
| | | |||||
* | | Remove unneeded headers | lloyd | 2009-09-21 | 1 | -2/+0 |
| | | |||||
* | | Update the implementation of Blue Midnight Wish to use the Round 2 tweaked | lloyd | 2009-09-21 | 4 | -603/+1245 |
| | | | | | | | | version. | ||||
* | | Indentation fix | lloyd | 2009-09-21 | 1 | -13/+12 |
| | | |||||
* | | propagate from branch 'net.randombit.botan.1_8' (head ↵ | lloyd | 2009-09-17 | 147 | -1833/+6462 |
|\| | | | | | | | | | | | 1f4729658b70a340064bc9a33c923a44ecab84d8) to branch 'net.randombit.botan' (head b9ca6596a127964cb9795d22bc2a5642fab5de84) | ||||
| * | The get_tm function was duplicated. Move single version to timer.{h,cpp} | lloyd | 2009-09-17 | 6 | -82/+62 |
| | | |||||
| * | Split up util.h into 3 files | lloyd | 2009-09-17 | 29 | -41/+50 |
| | | | | | | | | | | | | | | - rounding.h (round_up, round_down) - workfactor.h (dl_work_factor) - timer.h (system_time) And update all users of the previous util.h | ||||
| * | Move memory locking function decls to mlock.h | lloyd | 2009-09-17 | 6 | -26/+47 |
| | | | | | | | | Inline round_up and round_down | ||||
| * | Update OpenSSL engine with encrypt_n interface for block ciphers. | lloyd | 2009-09-17 | 2 | -12/+46 |
| | | | | | | | | | | | | Add support for SHA-2 and SEED. Wrap block cipher usage in checks for OPENSSL_NO_XXX | ||||
| * | Remove some debug code from benchmark example | lloyd | 2009-09-15 | 1 | -6/+0 |
| | | |||||
| * | In BMW-512, don't use the stack, instead use class SecureBuffers to reduce | lloyd | 2009-09-15 | 2 | -70/+70 |
| | | | | | | | | info leakage. | ||||
| * | Add an implementation of Blue Midnight Wish (512 bit version only) | lloyd | 2009-09-15 | 8 | -24/+2164 |
| | | |||||
| * | propagate from branch 'net.randombit.botan.1_8' (head ↵ | lloyd | 2009-09-15 | 106 | -1641/+4092 |
| |\ | | | | | | | | | | | | | | | | ef51dd2869ed38dae3aeb1c3b931ca9d595580e1) to branch 'net.randombit.botan' (head fc1942640045423f411fd865cbd584090b28d7eb) | ||||
| | * | Update version #s to 1.9.1-pre | lloyd | 2009-09-13 | 3 | -4/+7 |
| | | | |||||
| | * | Enable SSE2 engine under VC++ | lloyd | 2009-09-13 | 1 | -0/+1 |
| | | | |||||
| | * | Make some changes to the SSE2 implementation of SHA-1 for compatability with | lloyd | 2009-09-13 | 1 | -62/+46 |
| | | | | | | | | | | | | Visual C++. | ||||
| | * | Update for 1.9.0 release 2009-09-091.9.0 | lloyd | 2009-09-10 | 3 | -3/+6 |
| | | |