| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
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
|
|
|
|
| |
Update comments and use class constants when available
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
Updated documentation
|
|
|
|
| |
This gains about 0.6 cpb. SHA-1 is down to 1.7 to 1.9 cpb. SHA-256 is not affected
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Crypto++ 5.7 was the increment after the 5.6.5 release. Crypto++ 6.0 accurately reflects compatibility
|
|
|
|
| |
We have made a fair number of changes, and we don't want WD to receive credit for issues he was not part of
|
|
|
|
| |
due to bad interaction with '-march=x86-64'. Disgorge SSE2 implementation from CXX implementation
|
|\
| |
| | |
Fix: GCC warning "type qualifiers ignored on function return type".
|
| |
| |
| |
| | |
This pedantic message appeared all over the code. Also removed one warning about an unused variable in release build.
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
merged by me
This reverts commit 762c315566bce681e380641d1894251f984eac10, reversing
changes made to b48866631a5587e9348245fedd6f1e0871df35db.
|
|
|
|
| |
merge of the development branch 'clang-ia'
|
| |
|
|
|
|
| |
(Coverity rollup)
|
| |
|
| |
|
|
|
|
|
| |
add DEFAULT_CHANNEL and AAD_CHANNEL,
fix macChannel for AuthenticatedEncryptionFilter
|
|
|
|
|
|
| |
- 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
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
attempt (failed) to build DLL with GCC
|
| |
|
|
|