summaryrefslogtreecommitdiff
path: root/validat1.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Move some tests from TestIntegerBitops to TestIntegerOps (GH #602)Jeffrey Walton2018-03-251-0/+2
|
* Remove Simon and Speck ciphers (GH #585)Jeffrey Walton2018-02-141-2/+0
| | | | | | We recently learned our Simon and Speck implementation was wrong. The removal will stop harm until we can loop back and fix the issue. The issue is, the paper, the test vectors and the ref-impl do not align. Each produces slightly different result. We followed the test vectors but they turned out to be wrong for the ciphers. We have one kernel test vector but we don't have a working implementation to observe it to fix our implementation. Ugh...
* Clear Coverity finding CID 186948Jeffrey Walton2018-01-191-9/+6
| | | | "Logically dead code"
* Convert Kalyna from variable block size (GH #535)Jeffrey Walton2018-01-181-1/+1
|
* Add interface to TweetNaCl library (#566)Jeffrey Walton2018-01-171-0/+2
| | | | | | | | | | | | | TweetNaCl is a compact reimplementation of the NaCl library by Daniel J. Bernstein, Bernard van Gastel, Wesley Janssen, Tanja Lange, Peter Schwabe and Sjaak Smetsers. The library is less than 20 KB in size and provides 25 of the NaCl library functions. The compact library uses curve25519, XSalsa20, Poly1305 and SHA-512 as default primitives, and includes both x25519 key exchange and ed25519 signatures. The complete list of functions can be found in TweetNaCl: A crypto library in 100 tweets (20140917), Table 1, page 5. Crypto++ retained the function names and signatures but switched to data types provided by <stdint.h> to promote interoperability with Crypto++ and avoid size problems on platforms like Cygwin. For example, NaCl typdef'd u64 as an unsigned long long, but Cygwin, MinGW and MSYS are LP64 systems (not LLP64 systems). In addition, Crypto++ was missing NaCl's signed 64-bit integer i64. Crypto++ enforces the 0-key restriction due to small points. The TweetNaCl library allowed the 0-keys to small points. Also see RFC 7748, Elliptic Curves for Security, Section 6. TweetNaCl is well written but not well optimized. It runs 2x to 3x slower than optimized routines from libsodium. However, the library is still 2x to 4x faster than the algorithms NaCl was designed to replace. The Crypto++ wrapper for TweetNaCl requires OS features. That is, NO_OS_DEPENDENCE cannot be defined. It is due to TweetNaCl's internal function randombytes. Crypto++ used DefaultAutoSeededRNG within randombytes, so OS integration must be enabled. You can use another generator like RDRAND to avoid the restriction.
* Add additional Encoder and Decoder alphabet test (GH #562)Jeffrey Walton2018-01-131-10/+54
|
* Fix lookup array size in self testJeffrey Walton2018-01-121-1/+1
|
* Add additional Encoder and Decoder alphabet test (GH #562)Jeffrey Walton2018-01-121-6/+11
|
* add self test for custom Encoder and Decoder alphabet (GH #562)Jeffrey Walton2018-01-121-0/+109
|
* Fix error in bits2octets: should use the base point's bit count, instead of ↵Linmao Song2018-01-101-0/+1
| | | | the hash value's. Also add test case for GetRandom, with original data from RFC6979 (#560)
* Clear clang-tidy warningsJeffrey Walton2018-01-021-4/+3
|
* Add thorough param to ValidateECGDSAJeffrey Walton2017-11-251-1/+1
|
* Add SM3 hash function (GH #541)Jeffrey Walton2017-11-231-0/+2
|
* Add SIMON-64 and SIMON-128 lightweight block ciphers (GH #539)Jeffrey Walton2017-11-211-0/+1
|
* Add SPECK-64 and SPECK-128 lightweight block ciphers (GH #538)Jeffrey Walton2017-11-201-0/+1
|
* Prefix IS_LITTLE_ENDIAN and IS_BIG_ENDIAN with CRYPTOPPJeffrey Walton2017-11-101-2/+2
|
* Cleanup Altivec and Power7 code pathsJeffrey Walton2017-10-171-6/+7
| | | | This changes the dependency from Altivec to Power7. Internally we needed Power7 but it was cut-in as a pseudo Altivec dependency. Also see http://groups.google.com/forum/#!topic/cryptopp-users/fmEKOG41SG8
* Add Power8 SHA256 and SHA512 support (GH #513)Jeffrey Walton2017-09-221-3/+3
|
* Add missing newline to IA-32 config outputJeffrey Walton2017-09-161-14/+14
| | | | | Avoid flushing stream for config line items Use memcpy in std:: namespace
* Add PowerPC support to cpu.h and validate.cppJeffrey Walton2017-09-111-9/+22
|
* Clear GCC warnings with -Wall -WextraJeffrey Walton2017-09-051-32/+8
|
* Revert AltiVec and Power8 commitsJeffrey Walton2017-09-051-9/+5
| | | | | The strategy of "cleanup under-aligned buffers" is not scaling well. Corner cases are still turing up. The library has some corner-case breaks, like old 32-bit Intels. And it still has not solved the AltiVec and Power8 alignment problems. For now we are backing out the changes and investigating other strategies
* Clear warnings under GCC with -Wall -WextraJeffrey Walton2017-09-051-5/+9
|
* Remove unneeded Debug testsJeffrey Walton2017-09-011-3/+0
| | | | These tests are effectively performed in MDC, SEAL and OldRandomPool
* Remove BOOL macro value (GH #462)Jeffrey Walton2017-08-201-0/+2
| | | | 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
* Fix compile under MSVCJeffrey Walton2017-08-201-3/+3
| | | | | | | | | | (ClCompile target) -> validat1.cpp(1081): warning C4800: 'CryptoPP::word32' : forcing value to bool 'true' or 'false' (performance warning) [c:\Users\cryptopp\cryptest.vcxproj] validat1.cpp(1090): warning C4800: 'CryptoPP::word32' : forcing value to bool 'true' or 'false' (performance warning) [c:\Users\cryptopp\cryptest.vcxproj] validat1.cpp(1099): warning C4800: 'CryptoPP::word32' : forcing value to bool 'true' or 'false' (performance warning) [c:\Users\cryptopp\cryptest.vcxproj]
* Add additional VIA RNG testsJeffrey Walton2017-08-201-0/+57
| | | | The are configurations tests as recommended by Cryptography Research, Inc in their 2003 audit report
* Add VIA Padlock RNGJeffrey Walton2017-08-191-0/+104
|
* Clear Coverity finding CHECKED_RETURN (CID 182769)Jeffrey Walton2017-08-181-8/+8
|
* Split source files to support Base Implementation + SIMD implementation (GH ↵Jeffrey Walton2017-08-171-6/+7
| | | | | #461) Split source files to support Base Implementation + SIMD implementation
* Move from 'static' to 'enum' for class constantsJeffrey Walton2017-08-111-3/+3
| | | | Enums don't take up space in class objects. Its should result in smaller objects and faster code
* Add hash static transform test (Issue 455)Jeffrey Walton2017-08-041-0/+3
|
* Use non-0 seed OldRandomPool testJeffrey Walton2017-08-041-5/+7
| | | | This should tickle endianness issues
* Clear declaration hides previous local declarationJeffrey Walton2017-08-041-3/+3
|
* Remove pre-Crypto++ 5.5 interfaceJeffrey Walton2017-08-021-17/+3
| | | | Users of OldRandomPool must use the new interface. All that means is they must call IncorporateEntropy instead of Put, and GenerateBlock instead of Get
* Cut-in RandomNumberGenerator interface to OldRandPoolJeffrey Walton2017-08-021-9/+23
| | | | | | | | The existing interface still exists. The new interface is routed into the old methods. Without the new interface, using OldRandPool could result in: $ ./cryptest.exe v terminate called after throwing an instance of CryptoPP::NotImplemented what(): RandomNumberGenerator: IncorporateEntropy not implemented Aborted (core dumped)
* Add self tests for OldRandomPoolJeffrey Walton2017-08-011-0/+109
| | | | We still need to get the test result cross-validated
* Revert "Revert "Clear Visual Studio warnings (Issue 412)""Jeffrey Walton2017-06-021-0/+4
| | | | This reverts commit c3871aec948013c1a4d5613050c659520f59e2e4.
* Revert "Clear Visual Studio warnings (Issue 412)"Jeffrey Walton2017-06-021-4/+0
| | | | This reverts commit eb3b27a6a543. The change broke GCC 4.8 and unknown version of Clang on OS X. UB reported the OS X break, and JW found duplicated the break on a ARM CubieTruck with GCC 4.8.
* Clear Visual Studio warnings (Issue 412)Jeffrey Walton2017-05-301-0/+4
|
* Remove calls to cout.flush() for AppVeyorJeffrey Walton2017-05-291-6/+4
| | | | | They seemed to produce a hang when running self tests in AppVeyor. Also use IsDebuggerPresent() to determine when we should call DebugBreak(). The OS killed our debug build when fuzzing caused an assert to fail
* Fix "error LNK2019: unresolved external symbol TestAutoSeededX917()" under ↵Jeffrey Walton2017-05-181-1/+1
| | | | Windows Phone
* Fix "error C2065: prng undeclared identifier" under Windows PhoneJeffrey Walton2017-05-181-2/+2
|
* Build RDRAND for all platofrms (Issue 419, PR 424)Jeffrey Walton2017-05-171-6/+0
| | | | We have not been able to determine a reliable way to detect cpu's and platforms with Cmake. We are side stepping the Cmake problem by building rdrand.cpp all the time. If its not avilable for a cpu or platform, then RDRAND or RDSEED throw an exception.
* Add Threefish to project filesJeffrey Walton2017-05-141-0/+1
| | | | Whitespace check-in
* Switch to _MSC_FULL_VER for SP1 releasesJeffrey Walton2017-05-111-2/+2
|
* Add Inflator::BadDistanceErr exception (Issue 414)Jeffrey Walton2017-05-101-3/+3
| | | | The improved validation and excpetion clears the Address Sanitizer and Undefined Behavior Sanitizer findings
* Fix compile error with NO_OS_DEPENDENCEJeffrey Walton2017-05-101-2/+7
|
* Add additional testsJeffrey Walton2017-05-101-157/+263
|
* Add tests for Information Dispersal and Secret SharingJeffrey Walton2017-05-091-0/+1
|