aboutsummaryrefslogtreecommitdiffstats
path: root/src/hash/sha2
Commit message (Collapse)AuthorAgeFilesLines
* Many source files included bit_ops.h when what was really desired waslloyd2009-05-132-2/+2
| | | | | rotate.h, or when it was not needed at all. Remove or change the includes as needed.
* Thomas Moschny passed along a request from the Fedora packagers which camelloyd2009-03-304-84/+92
| | | | | | | | | | | | | | | up during the Fedora submission review, that each source file include some text about the license. One handy Perl script later and each file now has the line Distributed under the terms of the Botan license after the copyright notices. While I was in there modifying every file anyway, I also stripped out the remainder of the block comments (lots of astericks before and after the text); this is stylistic thing I picked up when I was first learning C++ but in retrospect it is not a good style as the structure makes it harder to modify comments (with the result that comments become fewer, shorter and are less likely to be updated, which are not good things).
* Do a minor optimization in some of the compression functions, loadinglloyd2008-11-232-97/+107
| | | | | the registers only once and carrying the values over between loop iterations.
* I had not anticipated this being really worthwhile, but it turns outlloyd2008-11-234-146/+186
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to have been so! Change MDx_HashFunction::hash to a new compress_n which hashes an arbitrary number of blocks. I had a thought this might reduce a bit of loop overhead but the results were far better than I anticipated. Speedup across the board of about 2%, and very noticable (+10%) increases for MD4 and Tiger (probably b/c both of those have so few instructions in each iteration of the compression function). Before: SHA-1: amd64: 211.9 MiB/s core: 210.0 MiB/s sse2: 295.2 MiB/s MD4: 476.2 MiB/s MD5: 355.2 MiB/s SHA-256: 99.8 MiB/s SHA-512: 151.4 MiB/s RIPEMD-128: 326.9 MiB/s RIPEMD-160: 225.1 MiB/s Tiger: 214.8 MiB/s Whirlpool: 38.4 MiB/s After: SHA-1: amd64: 215.6 MiB/s core: 213.8 MiB/s sse2: 299.9 MiB/s MD4: 528.4 MiB/s MD5: 368.8 MiB/s SHA-256: 103.9 MiB/s SHA-512: 156.8 MiB/s RIPEMD-128: 334.8 MiB/s RIPEMD-160: 229.7 MiB/s Tiger: 240.7 MiB/s Whirlpool: 38.6 MiB/s
* Wrap lines to 80 columnslloyd2008-10-281-1/+4
|
* Rename SHA-{384,512} base class SHA_64_BASE to SHA_384_512_BASE. Rename ↵lloyd2008-10-104-22/+23
| | | | SHA_224256_BASE SHA_224_256_BASE
* Add SHA-224 from InSiTo, written and (C) by FlexSecure GmbHlloyd2008-10-086-45/+94
| | | | | Rename sha256.h and sha_64.h to sha2_32.h and sha2_64.h - this affects users who instantiate these classes directly.
* Rename all modinfo.txt files to info.txt, since they are all (none) oflloyd2008-09-291-0/+0
| | | | | them modules now. In any case there is no distinction so info.txt seems better.
* Make mdx_hash also a module, which most of the hash functions depend on.lloyd2008-09-281-0/+4
| | | | | | Correct the configure program so modules are not autoloaded if their dependences are not available. (Eg, --no-module=mdx_hash will disable MD4, MD5, SHA-1, etc rather than cause a compliation failure)
* Move all modules into src/ directorylloyd2008-09-285-0/+421