Commit Graph

197 Commits

Author SHA1 Message Date
Jeffrey Walton
33235f88db
Removed unneeded guard
Whitespace check-in
2017-05-09 16:23:30 -04:00
Jeffrey Walton
a0832a63be
Whitespace check-in 2017-05-09 15:28:42 -04:00
Jeffrey Walton
4f7fee38d6
Mkaake RDRAND and RDSEED throw if not available
Fix Carmichael pseudo-prime tests
2017-05-09 13:20:53 -04:00
Jeffrey Walton
14236ce94b
Fold compressor and default encryptor tests 2017-05-06 19:20:57 -04:00
Jeffrey Walton
bdd82d781e
Added additional tests 2017-05-06 18:51:55 -04:00
Jeffrey Walton
c04b98072c
Fix compile error with -DNO_OS_DEPENDENCE
Whitespace check-in
2017-05-06 18:00:57 -04:00
Jeffrey Walton
374b8a419f
Added additional tests 2017-05-06 11:37:22 -04:00
Jeffrey Walton
02df6ea847
Add additional self tests under debug builds 2017-05-05 23:16:28 -04:00
Jeffrey Walton
9225ca09cb
Updated MersenneTwister tests
The tests now include the first 10 elements of the sequence to ensure a properly implemented algorithm and endianess correctness.
2017-05-05 19:00:17 -04:00
Jeffrey Walton
c1377b2955
Add additional self tests under debug builds 2017-05-05 17:21:08 -04:00
Jeffrey Walton
5c1de7b5a5
Add variable block size support to test and benchmarks
CRYPTOPP_COVERAGE was added at 9614307ab7 to increase code coverage support. This commit enables additional validation routines when  CRYPTOPP_COVERAGE is in effect.
2017-05-04 19:11:24 -04:00
Jeffrey Walton
8ca0f47939
Add ARIA block cipher
This is the reference implementation, test data and test vectors from the ARIA.zip package on the KISA website. The website is located at http://seed.kisa.or.kr/iwt/ko/bbs/EgovReferenceList.do?bbsId=BBSMSTR_000000000002.

We have optimized routines that improve Key Setup and Bulk Encryption performance, but they are not being checked-in at the moment. The ARIA team is updating its implementation for contemporary hardware and we would like to use it as a starting point before we wander too far away from the KISA implementation.
2017-04-10 10:52:40 -04:00
Jeffrey Walton
7fb6b3df74
Fix compile under Visual Studio 2005/MSC 14.00
Previous testing occurred with Visual Studio 2005 SP 1, and it lacks some of the Safe C++/security enhanced functions.
2017-03-18 16:56:14 -04:00
Jeffrey Walton
14d92f9eba
Improve performance of RDRAND and RDSEED (Issue 387) 2017-03-07 03:57:23 -05:00
Jeffrey Walton
7f0c0fb0c0
Add ValidateBaseCode to DEBUG tests by default 2017-03-02 00:24:52 -05:00
Jeffrey Walton
5efb019d8b
Add C++ nullptr support (Issue 383) 2017-03-01 06:10:06 -05:00
Jeffrey Walton
0dc97f1d3a
Unroll decoder initialization (Issue 376) 2017-03-01 02:19:12 -05:00
Jeffrey Walton
73836e58a5
Add Test namespace within CryptoPP namespace (Issue 379) 2017-02-21 02:03:29 -05:00
Jeffrey Walton
6511868bc8
Guard use of LibraryVersion() under MSVC (Issue 371) 2017-02-07 15:03:13 -05:00
Jeffrey Walton
2868452193
Add NIST SP800-90A HMAC_DRBG generator
Move bodies out-of-line
Whitespace
2017-02-07 08:51:58 -05:00
Jeffrey Walton
42af35fd2b
Change to more intuitive names LibraryVersion and HeaderVersion (Issue 371) 2017-01-28 07:09:27 -05:00
Jeffrey Walton
6f7339c81b
Add BuildVersion and RuntimeVersion functions (Issue 371)
These function are intended to catch mining and matching of library versions. BuildVersion provides CRYPTOPP_VERSION when the shared object was built. RuntimeVersion provides CRYPTOPP_VERSION the app compiled against, which could be different than the shared object's version
2017-01-28 05:43:24 -05:00
Jeffrey Walton
81b1a18063
Change file preamble to include "originally written by Wei Dai"
We have made a fair number of changes, and we don't want WD to receive credit for issues he was not part of
2017-01-27 07:05:45 -05:00
Jeffrey Walton
1778432013
Add self tests for RoundUpToMultipleOf (Issue 360)
Thanks to Boldizsár Lipka
2017-01-10 22:09:38 -05:00
Jeffrey Walton
841c37e347
Add NIST_DRBG::Err class. Add additional checking per SP 800-90A. Update documentation 2017-01-01 05:53:55 -05:00
Jeffrey Walton
5c932fcc3b
Add NIST SP800-90A Hash_DRBG generator 2016-12-30 21:46:03 -05:00
Jeffrey Walton
06f79d904d
Remove vectorization test. This one test needs to be in its own script 2016-12-24 07:25:12 -05:00
Jeffrey Walton
9739ba8afe
Add Aumasson and Bernstein's SipHash (Issue 348) 2016-12-17 03:58:36 -05:00
Jeffrey Walton
cecf719fcd
Add German digital signature algorithm (ECGDSA) (Issue 113)
Also see ISO/IEC 15946 and http://www.teletrust.de/fileadmin/files/oid/ecgdsa_final.pdf
2016-12-13 16:20:41 -05:00
Jeffrey Walton
26db40567d
Add Integer Bitops tests (Issue 344) 2016-12-06 20:56:57 -05:00
Jeffrey Walton
ba75834ae9
Removed VC++ 5.0 and 6.0 workarounds (Issue 342) 2016-12-03 05:05:56 -05:00
Jeffrey Walton
62e99837e8
Add Poly1305 class (Issue 338) 2016-11-27 15:31:50 -05:00
Jeffrey Walton
ac01277d93
Add X86 SHA cpu feature detection 2016-10-26 22:35:24 -04:00
Jeffrey Walton
e794d53806
Cleanup comments 2016-10-18 02:23:07 -04:00
Jeffrey Walton
51d3cc945f
Switch to std::copy due to MinGW issues with memcpy_s
Also see http://github.com/weidai11/cryptopp/issues/28 and http://groups.google.com/d/msg/cryptopp-users/PRTVKTh0gRk/euPM_TzdBAAJ
2016-10-18 02:02:49 -04:00
Jeffrey Walton
54d17c7361
Updated CRYPTOPP_ASSERT based on comments
Also see 399a1546de (commitcomment-19448453)
2016-10-17 22:00:31 -04:00
Jeffrey Walton
c621ce0532
Add misc.h header for library's memcpy_s 2016-10-11 00:02:23 -04:00
Jeffrey Walton
32fa9f6a8b
Remove deprecated warning supressions under MSC
pragma warning(disable: 4996)
2016-10-10 17:33:13 -04:00
Jeffrey Walton
fb6a11ff08 Remove library supplied aesenc, aesdec and friends (Issue 206) 2016-09-18 21:06:41 -04:00
Jeffrey Walton
01b4ada148 Merge dev-branch 'trap' into 'master' 2016-09-17 17:21:53 -04:00
Jeffrey Walton
91ca6c117d Change from NDEBUG to CRYPTOPP_DEBUG in source files to ensure all debug behavior pivots on CRYPTOPP_DEBUG, and not NDEBUG (Issue 277, CVE-2016-7420) 2016-09-16 14:51:48 -04:00
Uri Blumenthal
8ad82f3f66 $%^@! 448 bits is 56 bytes, not 58!!! Fixing that oversight. 2016-09-16 12:36:05 -04:00
Uri Blumenthal
58c33810e7 Restore MARS capability to use 448-bit keys 2016-09-16 12:19:12 -04:00
Jeffrey Walton
399a1546de Add CRYPTOPP_ASSERT (Issue 277, CVE-2016-7420)
trap.h and CRYPTOPP_ASSERT has existed for over a year in Master. We deferred on the cut-over waiting for a minor version bump (5.7). We have to use it now due to CVE-2016-7420
2016-09-16 11:27:15 -04:00
Jeffrey Walton
0d66fd8f82 Fixed use of FixedSizeAlignedSecBlock and non-aligned allocator in validat1.cpp (Issue 256) 2016-09-09 06:33:31 -04:00
Jeffrey Walton
7f958575ea Squashed commit of the following:
commit 47c75c6e9397e240919207e50e5a611d3e2a2428
Merge: d7685c2 42085ee
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 20:20:39 2016 -0400

    Attempting to fix binary file merge conflict

commit d7685c2d946beecc419ddb6901c24e972c7cf3ee
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 16:39:23 2016 -0400

    Add vsClean.cmd to vs2010.zip

commit 4b96fdf1c551260da60eb021f324bcc3fcfec626
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 16:15:38 2016 -0400

    Add Keccak to vs2010.zip

commit 3962db73b7113ee805b46a5bb4da64e204fe6bb0
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 15:40:35 2016 -0400

    Fold hmqv.cpp and fhmqv.cpp into mqv.cpp. There's no need for three empty source files

commit 44401448cbb6c8125b0f1ab4419c5b174408ffd7
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 15:39:23 2016 -0400

    Fold hmqv.cpp and fhmqv.cpp into mqv.cpp. There's no need for three empty source files

commit 847bfccb8d5c388e67745dc8c69768fa503c5135
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 14:48:02 2016 -0400

    Whitespace cleanup

commit 46a37be6fef361704dcf852bc9a099ce0a1da4c8
Merge: aefb8f8 3697867
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 14:43:01 2016 -0400

    Merge 'master' into 'keccak'

commit aefb8f8ff2b81b967089c53b457a92fc6f7544d6
Merge: 51a828b 3c91d93
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 12:39:51 2016 -0400

    Merge 'master' into 'keccak'

commit 51a828b88e37a4d18abb00300cd5522bd0e110c5
Merge: 4152870 e7c7722
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 10:41:36 2016 -0400

    Merge 'master' into 'keccak'

commit 415287041e69ddadf5ca1f6fc794b87e145fc2db
Merge: 357a0c5 83ac849
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 10:34:45 2016 -0400

    Merge 'master' into 'keccak'

commit 357a0c510f75e4e58078b500dd469462e90f7650
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 10:13:32 2016 -0400

    Removed deprecated warning from SHA3 classes

commit 5cf9ec10d53b895b5a583e265e4e1298ed402195
Merge: 10ce0ed c2d60cc
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 09:43:15 2016 -0400

    Merge 'master' into 'keccak'

commit 10ce0ed4c5b8a1ea230062fd2dfdec0d87ec5b42
Author: Jeffrey Walton <noloader@gmail.com>
Date:   Thu Sep 8 09:37:40 2016 -0400

    Add Keccak implementation based on early SHA3. Change SHA3 to NIST FIPS 202 conforming implementation
2016-09-08 20:24:25 -04:00
Jeffrey Walton
01b40aab31 Merge 'master' into 'hmqv' 2016-09-08 01:30:29 -04:00
Jeffrey Walton
c80d179274 Merge 'master' into 'hmqv' 2016-09-07 12:29:48 -04:00
Jeffrey Walton
53bc3f146a Merge 'master' into 'constexpr' 2016-09-07 12:29:43 -04:00
Jeffrey Walton
8e5663fe23 Fix "error: integer constant is too large for ‘long’ type" on PowerMac 2016-09-07 12:29:29 -04:00
Jeffrey Walton
416605c311 Add additional KEYLENGTH and DEFAULT_KEYLENGTH tests 2016-09-07 10:10:27 -04:00
Jeffrey Walton
f0e7b45bcb Remove comma operator from return values for StaticGetDefaultRounds and StaticGetValidKeyLength in non-constexpr builds (Issue 255) 2016-09-07 09:32:06 -04:00
Jeffrey Walton
13037d8e64 Merge 'master' into 'hmqv' 2016-09-07 01:29:22 -04:00
Jeffrey Walton
c45c854da0 Merge 'master' into 'constexpr' 2016-09-07 01:29:18 -04:00
Jeffrey Walton
e91c85e84d Add tests for word64 and word128 Allocate, Concatenate, Append, FixedSizeAllocator Grow and Overflow. Add test for HuffmanEncoder::GenerateCodeLengths 2016-09-07 01:29:08 -04:00
Jeffrey Walton
cdf659a277 Const-ify input, ky and iv 2016-09-06 23:04:42 -04:00
Jeffrey Walton
622e958098 Cleared "declaration hides other declaration" under VS2015 2016-09-06 22:57:46 -04:00
Jeffrey Walton
edf7bd8fa6 Add StaticGetValidKeyLength tests for MARS, RC5 and RC6 block ciphers (Issue 252) 2016-09-05 13:08:15 -04:00
Jeffrey Walton
022c33a172 Add StaticGetValidKeyLength tests for block ciphers (Issue 252) 2016-09-05 11:35:00 -04:00
Jeffrey Walton
88bc98fa25 Modify "Algorithm key lengths" output format 2016-09-05 09:37:51 -04:00
Jeffrey Walton
5057991a31 Add StaticGetValidKeyLength tests for RijndaelEncryption, RijndaelDecryption, TwofishEncryption and TwofishDecryption 2016-09-05 09:10:12 -04:00
Jeffrey Walton
6f4bcfd88f Merge branch 'master' into hmqv 2016-08-21 15:10:58 -04:00
Jeffrey Walton
898d6a3f78 Fix compile under VS2012 X86 2016-08-21 04:36:32 -04:00
Jeffrey Walton
1e7c837442 Add test for Huffman codes (Issue 242) 2016-08-21 03:18:26 -04:00
Jeffrey Walton
11c723e1b9 Merge branch 'master' into hmqv 2016-07-24 20:43:25 -04:00
Jeffrey Walton
f0f0408c89 Add polynomial multiply instruction detection 2016-07-24 09:48:28 -04:00
Mouse
c6c0bdeebe Revert "Add HMQV implementation (and merge the old FHMQV into the new codebase)"
This reverts commit ec35099589.
2016-07-06 12:15:47 -04:00
Mouse
5bdabb7a68 Add HMQV and merge untracked FHMQV 2016-07-04 13:05:38 -04:00
Uri Blumenthal
ec35099589 Add HMQV implementation (and merge the old FHMQV into the new codebase) 2016-07-01 14:30:43 -04:00
Jeffrey Walton
36aeb16171 Cleared "warning: unused variable ‘hasPadlockRNG’". Whitespace cleanup 2016-06-16 01:15:07 -04:00
Jeffrey Walton
77e4bd7a7b Cleared warning 'Warning: key hides CryptoPP::FixedRoundsCipherFactory::key' 2016-06-09 00:15:02 -04:00
Jeffrey Walton
5d9607613a Fix hasSSE3/hasSSE4 transposiion. Remove Padlock reporting 2016-06-05 17:23:21 -04:00
Jeffrey Walton
c3d61ef78a Fix AMD RDRAND detection. Add VIA Padlock extension detection 2016-05-19 08:32:51 -04:00
Jeffrey Walton
2a163e0b14 Add test for AES, SHA1 and SHA2 from ARM Crypto extension from arm-neon branch 2016-05-19 04:45:35 -04:00
Jeffrey Walton
d294b4290b Add changes for Windows Sotre that went missing with my clumsy Git skills 2016-05-09 03:07:57 -04:00
Jeffrey Walton
bf22c4575b Add CRC-32C using CXX and SSE4 (Issue 160) 2016-04-24 13:24:45 -04:00
Jeffrey Walton
87d81372a9 Quiet deprecated warning on some library source files. The warning is intended to help users, not the library 2016-04-24 01:51:39 -04:00
Jeffrey Walton
01d137155c Add SHA3/FIPS 202 test vectors. Add note to config.h on uncommenting sha3_fips_202.txt when defining CRYPTOPP_USE_FIPS_202_SHA3 2016-04-23 21:55:47 -04:00
Jeffrey Walton
63cd55901c Added BLAKE2 self tests 2016-04-18 02:39:10 -04:00
Jeffrey Walton
a11c9e7574 Add SSE4.1 and SSE4.2 feature detection 2016-04-15 16:23:04 -04:00
Jeffrey Walton
73fd1ac80e Fix NO_OS_DEPENDENCE detection, thanks to jcnarlo (Issue 141) 2016-03-04 11:34:17 -05:00
Jeffrey Walton
2a648d1052 Fixed RDSEED self test failure under i686 2016-01-31 22:19:06 -05:00
Jeffrey Walton
227e4b5fe2 Cleared Coverity finding STREAM_FORMAT_STATE 2016-01-25 16:44:30 -05:00
Jeffrey Walton
6cdb141c5a Cleared -Wcast-align (Issue 122) 2016-01-25 11:37:22 -05:00
Jeffrey Walton
0c1f7d30ea Added additional tests 2016-01-03 12:53:46 -05:00
Jeffrey Walton
81482d8348 Added test case for growing FixedSizeSecBlock. Fixed copy count during grow 2015-12-31 07:21:23 -05:00
Jeffrey Walton
5849767735 Added test for a zeroized SecBlock 2015-12-31 05:08:19 -05:00
Jeffrey Walton
4f57c8f303 Updated documentation. Added calls to unused functions for coverage analytcs. Squashed unused variable warning 2015-12-31 04:42:21 -05:00
Jeffrey Walton
51d674c7d8 Finally figured how how to clear than damn Coverity finding on STREAM_FORMAT_STATE 2015-12-29 07:16:44 -05:00
Jeffrey Walton
13748582e5 Added "make coverage" recipe. Added additional SecBlock tests 2015-12-28 07:06:50 -05:00
Jeffrey Walton
605744d826 Fixed SecBlock append when "this == t", fixed assert, added validation test (Issue 92) 2015-12-28 00:11:52 -05:00
Jeffrey Walton
a0b078543a Added CRYPTOPP_DATA_DIR patch (Issue 82) 2015-12-25 23:50:28 -05:00
Jeffrey Walton
0059f486ad Changed RDSEED to use alternate ctor. Added comments about number of retries for RDRAND and RDSEED 2015-12-02 18:23:10 -05:00
Jeffrey Walton
298988a5b9 Crypto++ 5.6.3 check-in 2015-11-22 19:17:15 -05:00
Jeffrey Walton
62618fda97 Revert botched "Crypto++ 5.6.3 check-in". Corruption due to VMware adding garbage to the end of some source files during drag and drop from guest to host.
This reverts commit c454358122.
2015-11-22 19:11:31 -05:00
Jeffrey Walton
c454358122 Crypto++ 5.6.3 check-in 2015-11-20 19:15:33 -05:00
Jeffrey Walton
5f70a7c85e Added missing <rng.h> to validat1.cpp. MaurerRandomnessTest requires the header when -DNO_OS_DEPENDENCE 2015-11-19 17:28:37 -05:00
Jeffrey Walton
b3e49d8c96 Additional documentation; fixed issues with Clang integrated assembler and different versions numbers for LLVM Clang and Apple Clang; fixed missing header in DSA class 2015-11-19 13:09:33 -05:00
Jeffrey Walton
3203d7db54 Change __MINGW__ → __MINGW32__ 2015-11-18 15:52:54 -05:00
Jeffrey Walton
6ac1e46a1f Cleared issues 11,12,13 (Clang integrated assembler), 58 (RC rollup), 66 (Coverity rollup) 2015-11-18 15:32:28 -05:00