John Byrd
a33b95325f
When calculating the AES block cipher, allocate 4K of memory on the stack instead of 256+ bytes. Search within that 4K space to put the 256-byte aligned Locals struct in a place which does not have 4K cache conflicts with the Te temporary buffer. This permits us to call _malloca() or alloca() once per call of this function. This commit also makes sure that the Microsoft-only _freea() occurs at the correct location instead of at a pointer to the middle of the stack, when the memory allocated by _malloca() or alloca() is not 256-byte aligned.
2016-09-22 17:43:57 -07:00
Jeffrey Walton
ddac25ead8
Fix GCC attempting to use -stdlib=libc++
2016-09-22 19:33:06 -04:00
Jeffrey Walton
99a83105bd
"EMSA2HashId<SHA>::id" → "EMSA2HashId<SHA1>::id"
2016-09-22 12:23:46 -04:00
Jeffrey Walton
dcbb0c55d9
Whitespace cleanup
2016-09-22 10:35:57 -04:00
Jeffrey Walton
d5aff4e4f8
Cleared Coverity finding CID 12086 (Issue 299)
2016-09-22 03:08:28 -04:00
Jeffrey Walton
17258a49d3
Add Keccak-224 through Keccak-512 benchmarks
2016-09-22 00:49:24 -04:00
Jeffrey Walton
c7303a600f
Cleared Coverity finding CID 12086 (Issue 299)
2016-09-22 00:11:35 -04:00
Jeffrey Walton
933e63f162
Fix use of template parameter as a condition
2016-09-21 23:04:43 -04:00
Jeffrey Walton
91020ce3ba
Cleared signed/unsigned warning under Visual Studio (Related to Issue 295)
2016-09-21 22:10:03 -04:00
Jeffrey Walton
6bfa0d9ab0
Cleared Coverity finding CID 170383 (INTEGER_OVERFLOW) (295)
...
ModPowerOf2 was changed to include a saturating subtract. Unintuitively, the code got faster rather than slower. The saturating operation appears to have helped the optimizer
2016-09-21 21:50:02 -04:00
Jeffrey Walton
9b27d6b83f
Cleared Coverity finding CID 170382 (CONSTANT_EXPRESSION_RESULT) (Issue 298)
2016-09-21 21:16:58 -04:00
Jeffrey Walton
b4f08a3fa1
Trivial VC10 project fixes (Issue 287)
2016-09-21 20:18:58 -04:00
Jeffrey Walton
6200029faa
Fix Clang 3.3 and 3.4 compiles (Issue 264)
2016-09-21 13:57:37 -04:00
Jeffrey Walton
1de8ca5774
Revert "Rewrite 'keylength < MIN_KEYLENGTH' to avoid -Wtautological-compare"
...
This reverts commit 08a206f3eb . This broke the self tests, and casting everything to 'signed int' to avoid unsigned promots did not resolve the issue.
2016-09-21 13:47:47 -04:00
Jeffrey Walton
08a206f3eb
Rewrite 'keylength < MIN_KEYLENGTH' to avoid -Wtautological-compare
...
The warning surfaces under earlier Clnag's and GCC's
2016-09-21 12:47:26 -04:00
Jeffrey Walton
caf8aef8fe
Updated documentation
2016-09-21 11:57:59 -04:00
DevJPM
70635865a1
Templated Keccak and SHA3
...
templated Keccak and SHA3 to reduce code-size, added a
StaticAlgorithmName() to the base classes and restricted use of
constexpr to this new function in the base classes
2016-09-21 14:16:10 +02:00
Jeffrey Walton
54557b1827
Merge pull request #294 from weidai11/revert-270-fix-undefined-var-template-warning
...
Revert "Fix clang warnings about undefined variable templates in pkcspad.h"
2016-09-21 02:41:26 -04:00
Jeffrey Walton
7a3318218b
Revert "Fix clang warnings about undefined variable templates in pkcspad.h"
2016-09-21 02:39:01 -04:00
Jeffrey Walton
cd06bac6bf
Merge pull request #270 from DimitryAndric/fix-undefined-var-template-warning
...
Fix clang warnings about undefined variable templates in pkcspad.h
2016-09-21 02:34:03 -04:00
Jeffrey Walton
e1f0252b71
Add SSE2 and AVX2 arch switches
2016-09-21 02:17:02 -04:00
Jeffrey Walton
57b3a7c9cc
Fix SunCC compile under x86_64
2016-09-21 02:07:17 -04:00
Jeffrey Walton
ec2f4f597e
Fix MSC compile under ARM
2016-09-21 02:03:45 -04:00
Jeffrey Walton
06e29357cb
config.compat
...
Fix MSC compile under ARM
2016-09-21 02:02:55 -04:00
Jeffrey Walton
32ae3e52f1
Partially revert 714daaf570.
...
We were mostly OK under i686/x86_64, but Clang died completely under ARM-32 and Aarch64.
2016-09-21 00:35:59 -04:00
Jeffrey Walton
584f2f2ad1
Cleared Coverity finding CID 170385 (UNINIT_CTOR) (Issue 293)
2016-09-20 20:51:13 -04:00
Jeffrey Walton
c298dfdbb0
Revert ccd59710 (Issue 292)
2016-09-20 19:01:38 -04:00
Jeffrey Walton
1dd3fae316
Updated documentation
2016-09-20 15:57:45 -04:00
Jeffrey Walton
26c8fa3976
Updated documentation
2016-09-20 10:03:49 -04:00
Jeffrey Walton
aaedeaa647
Updated documentation
2016-09-20 10:03:11 -04:00
Jeffrey Walton
b79ca63a34
Merge pull request #291 from DevJPM/Keccak-Typedef
...
Keccak typedef
2016-09-20 09:29:24 -04:00
DevJPM
a9c901b90b
fixed some overly aggressive replaces in the docs
2016-09-20 11:31:52 +02:00
DevJPM
ccd59710a3
converted derived Keccak, SHA3 classes into typedefs
...
removed the old derived class (8 in total) and replaced them by typedefs
of {SHA3|Keccak}_Final<> to optimize engineering efforts
2016-09-20 11:27:25 +02:00
DevJPM
ee194ed19e
Merge remote-tracking branch 'refs/remotes/weidai11/master' into Keccak-Typedef
2016-09-20 11:04:37 +02:00
Jeffrey Walton
31a7b99f9e
Remove CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY_562 from block defining word64 based on data models
...
We use the samllest word size that meets requirements, not th e largest size. That helps us get to a word128 on more platforms
2016-09-20 02:26:04 -04:00
Jeffrey Walton
de04771aa8
Merge pull request #280 from DevJPM/Keccak-HMAC
...
fixed Keccak and SHA3 to support HMAC
2016-09-20 02:12:58 -04:00
Jeffrey Walton
49d7187255
Cleanup feature defines in <config.h>. Cleanup intrinsic includes in <cpu.h>
2016-09-20 00:35:27 -04:00
Jeffrey Walton
51423972b1
Updated documentation
2016-09-19 23:18:19 -04:00
Jeffrey Walton
0e9da81311
Fix compile under CentOS 5 with GCC 4.1
2016-09-19 23:00:33 -04:00
Jeffrey Walton
f7c8251a08
Updated documentation
2016-09-19 22:35:53 -04:00
Jeffrey Walton
923efa865b
Fix Solaris GCC and "constructor priorities are not supported"
2016-09-19 21:18:58 -04:00
Jeffrey Walton
478d573416
Whitespace checkin
2016-09-19 19:07:27 -04:00
DevJPM
51466b5b24
moved BlockSize() into child classes
...
moved the BlockkSize() function into the child classes and made it
return the BLOCKSIZE value to enhance speed
2016-09-20 00:48:02 +02:00
Jeffrey Walton
6422ecfbeb
Fix CRYPTOPP_UNUSED macro and CVE number
2016-09-19 17:55:36 -04:00
Jeffrey Walton
adfe08d556
Merge pull request #286 from MarcelRaad/vc10_projects
...
Cleanup VS2010 Project Files by inheriting Optimizations and PreprocessorDefinitions
2016-09-19 17:50:51 -04:00
Marcel Raad
54fa27ae79
cryptlib.vcxproj: remove empty PreprocessorDefinitions properties
...
They have no effect.
2016-09-19 18:36:21 +02:00
Jeffrey Walton
cacd104162
Fix CVE number to CVE-2016-7420. Deleted <config.recommend> by hand because Git could not find it in its heart to do it with 'git mv'
2016-09-19 12:22:51 -04:00
Marcel Raad
567e17587c
cryptlib.vcxproj: remove per-file optimization properties
...
They have no effect and make it hard to manually change the
optimization level as it has to be done for every single file.
2016-09-19 18:07:55 +02:00
Marcel Raad
782ed4e5e0
Whitespace fixes in VC10 project files
...
Visual Studio doesn't like tabs and newlines in project files and
always removes them when saving the project.
2016-09-19 18:02:32 +02:00
Jeffrey Walton
151521d68f
Cleanup use of CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY_562
2016-09-19 00:56:01 -04:00