summaryrefslogtreecommitdiff
path: root/sha.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove BOOL macro value (GH #462)Jeffrey Walton2017-08-201-6/+6
| | | | Currently the CRYPTOPP_BOOL_XXX macros set the macro value to 0 or 1. If we remove setting the 0 value (the #else part of the expression), then the self tests speed up by about 0.3 seconds. I can't explain it, but I have observed it repeatedly. This check-in prepares for the removal in Upstream master
* Move free standing function into anonymous namespaceJeffrey Walton2017-08-141-1/+2
| | | | Update comments and use class constants when available
* Fix bad SHA::Transform calculation (Issue 455)Jeffrey Walton2017-08-131-24/+21
| | | | | | | | Reworked SHA class internals to align all the implementations. Formerly all hashes were software based, IterHashBase handled endian conversions, IterHashBase repeatedly called the single block SHA{N}::Transform. The rework added SHA{N}::HashMultipleBlocks, and the SHA classes attempt to always use it. Now SHA{N}::Transform calls into SHA{N}_HashMultipleBlocks, which is a free standing function. An added wrinkle is hardware wants little endian data and software presents big endian data, so HashMultipleBlocks accepts a ByteOrder for the incoming data. Hardware based SHA{N}_HashMultipleBlocks can often perform the endian swap much easier by setting an EPI mask so it was profitable to defer to hardware when available. The rework also removed the hacked-in pointers to implementations. The class now looks more like AES, GCM, etc.
* Update documentationJeffrey Walton2017-08-051-5/+5
|
* Update documentationJeffrey Walton2017-08-051-10/+10
|
* Use MOVDQU for SSE2 in static transform (Issue 455)Jeffrey Walton2017-08-051-9/+117
| | | | Updated documentation
* Avoid extra ByteReverse when using Intel SHA extensionsJeffrey Walton2017-05-261-0/+3
| | | | This gains about 0.6 cpb. SHA-1 is down to 1.7 to 1.9 cpb. SHA-256 is not affected
* Removed "typedef SHA1 SHA" (Issue 369)Jeffrey Walton2017-04-241-2/+0
| | | | | | This should have happened when we removed most of MAINTAIN_BACKWARDS_COMPATIBILITY artifacts. Its not practical move SHA1 into Weak:: namespace or "typedef SHA256 SHA" because SHA1 is too intertwined at the moment. In the interim, maybe we can place SHA1 in both CryptoPP:: and Weak:: namespaces. This will allow us to transition into Weak::SHA1 over time, and signal to users SHA1 should be avoided.
* Change next version from 5.7 to 6.0Jeffrey Walton2017-02-211-4/+4
| | | | Crypto++ 5.7 was the increment after the 5.6.5 release. Crypto++ 6.0 accurately reflects compatibility
* Change file preamble to include "originally written by Wei Dai"Jeffrey Walton2017-01-271-1/+1
| | | | We have made a fair number of changes, and we don't want WD to receive credit for issues he was not part of
* Backed-off automatically setting CRYPTOPP_BOOL_SSE_SHA_INTRINSICS_AVAILABLE ↵Jeffrey Walton2016-12-011-3/+4
| | | | due to bad interaction with '-march=x86-64'. Disgorge SSE2 implementation from CXX implementation
* Merge pull request #339 from ralphtandetzky/masterJeffrey Walton2016-12-011-5/+5
|\ | | | | Fix: GCC warning "type qualifiers ignored on function return type".
| * Fix: GCC warning "type qualifiers ignored on function return type".Ralph Tandetzky2016-12-011-5/+5
| | | | | | | | This pedantic message appeared all over the code. Also removed one warning about an unused variable in release build.
* | Add Intel SHA1 extension supportJeffrey Walton2016-12-011-2/+1
|/
* Add CRYPTOPP_STATIC_CONSTEXPR macroJeffrey Walton2016-11-131-5/+5
|
* Updated documentation for Crypto++ 1.0 algorithmsJeffrey Walton2016-10-261-5/+20
|
* Fix Clang 3.3 and 3.4 compiles (Issue 264)Jeffrey Walton2016-09-211-0/+1
|
* Add constexpr-ness to StaticAlgorithmName member functionJeffrey Walton2016-09-071-5/+5
|
* Go back to Commit 66ada4cc61d62afcJeffrey Walton2016-07-061-1/+1
|
* Revert "Merge remote-tracking branch 'upstream/master'" - not intended to be ↵Mouse2016-07-061-1/+1
| | | | | | | merged by me This reverts commit 762c315566bce681e380641d1894251f984eac10, reversing changes made to b48866631a5587e9348245fedd6f1e0871df35db.
* Add MacPorts GCC compiler and Clang integrated assembler support. This is a ↵Jeffrey Walton2016-07-051-1/+1
| | | | merge of the development branch 'clang-ia'
* Fixed Clang 3.3 integrated assembler crash on LinuxJeffrey Walton2015-12-251-2/+7
|
* Cleared issues 11,12,13 (Clang integrated assembler), 58 (RC rollup), 66 ↵Jeffrey Walton2015-11-181-9/+12
| | | | (Coverity rollup)
* CRYPTOPP 5.6.3 RC6 checkinJeffrey Walton2015-11-051-63/+67
|
* fix compile on MSVC 6weidai2009-03-131-2/+2
|
* add x86/x64 assembly for SHA-256,weidai2009-03-101-4/+10
| | | | | add DEFAULT_CHANNEL and AAD_CHANNEL, fix macChannel for AuthenticatedEncryptionFilter
* changes for 5.6: weidai2009-03-021-4/+0
| | | | | | - added AuthenticatedSymmetricCipher interface class and Filter wrappers - added CCM, GCM (with SSE2 assembly), CMAC, and SEED - improved AES speed on x86 and x64 - removed WORD64_AVAILABLE; compiler 64-bit int support is now required
* MMX/SSE2 optimizationsweidai2007-04-151-6/+0
|
* port to GCC 4weidai2005-09-051-10/+10
|
* changes done for FIPS-140 lab code dropweidai2005-01-201-7/+7
|
* changes related to the next FIPS validationweidai2004-09-031-4/+4
|
* add SHA-224weidai2004-07-231-0/+9
|
* merge in 5.0.4 changes (exclude DES and SHA-2 from DLL),weidai2003-07-101-3/+3
| | | | attempt (failed) to build DLL with GCC
* create DLL version, fix GetNextIV() bug in CTR and OFB modesweidai2003-07-041-23/+9
|
* Initial revisionweidai2002-10-041-0/+72