summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update documentationJeffrey Walton2017-08-172-14/+34
|
* Fix iOS ARM buildJeffrey Walton2017-08-171-1/+1
| | | | | | | | | | | | | | | | cpu.cpp:451:17: error: variable has incomplete type 'struct utsname' struct utsname systemInfo; ^ cpu.cpp:451:9: note: forward declaration of 'utsname' struct utsname systemInfo; ^ 1 error generated.
* Split source files to support Base Implementation + SIMD implementation (GH ↵Jeffrey Walton2017-08-1738-6637/+6521
| | | | | #461) Split source files to support Base Implementation + SIMD implementation
* Fix more Clang problemsJeffrey Walton2017-08-171-1/+4
| | | | I wish this god damn compiler would stop pretending to be other compilers when it can't consume the same program. Even the GCC devs have told the LLVM devs to stop ding that crap
* Fix NEON detection on Aarch32 and Aarch64Jeffrey Walton2017-08-173-3/+7
| | | | I wish GCC would get its head out of its ass and define the apprpriate defines. NEON/ASIMD cannot be disgorged from Aarch32/Aarch64 just like SSE2 cannot be disgorged from x86_64. They are core instruction sets
* Add debug configuration to TravisJeffrey Walton2017-08-171-0/+5
|
* Remove ios-tv from allow_failuresJeffrey Walton2017-08-161-3/+16
|
* Clear unused variable warnings under MSVCJeffrey Walton2017-08-161-0/+7
|
* Disable Carryless Multiplies for ClangJeffrey Walton2017-08-161-14/+13
| | | | Clang causes too many problems. Early versions of the compiler simply crashes. Later versions of the compiler still have trouble with Intel ASM and still produce incorrect results on occassion. Additionally, we have to special case the integrated assemvler. Its making a mess of the code and causing self test failures
* Update commentsJeffrey Walton2017-08-161-2/+2
|
* Fix "warning: binding dereferenced null pointer to reference has undefined ↵Jeffrey Walton2017-08-161-1/+39
| | | | | | | | | | | behavior" This shows up under debug builds when testing instantiations. warning: binding dereferenced null pointer to reference has undefined behavior [-Wnull-dereference] DH2 dh(*(SimpleKeyAgreementDomain*)NULLPTR); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Add SHACAL2 optimizationsJeffrey Walton2017-08-162-18/+30
| | | | Thanks to Botan for providing these
* Fix Clang warning on missing template definitionsJeffrey Walton2017-08-169-1/+16
|
* Suppress C4251 and C4275 warnings in project files (Issue 412)Jeffrey Walton2017-08-164-4/+4
|
* Fold shuffles after loads for SHACAL2Jeffrey Walton2017-08-162-16/+10
|
* Add Intel SHA implementation for SHACAL2 encryptionJeffrey Walton2017-08-161-1/+82
| | | | The implementation came from Jack Lloyd and the Botan team. Jack and the Botan was gracious and allowed us to use Botan's x86_encrypt_blocks function. They also allowed us to release it under the Crypto++ licensing terms. Also see https://github.com/randombit/botan/pull/1151/files
* Update documentationJeffrey Walton2017-08-163-1/+15
|
* Fix library version number in scriptJeffrey Walton2017-08-161-3/+3
|
* Fix Doxygen constant documentationJeffrey Walton2017-08-161-1/+5
|
* Update comments in Rijndael head commentsJeffrey Walton2017-08-152-0/+5
|
* Cleared UBsan finding in Default's GenerateKeyIVJeffrey Walton2017-08-151-2/+7
| | | | | | | | | passed: 128 deflates and inflates passed: 128 zlib decompress and compress default.cpp:69:2: runtime error: null pointer passed as argument 2, which is declared to never be null /usr/include/x86_64-linux-gnu/bits/string3.h:53:71: runtime error: null pointer passed as argument 2, which is declared to never be null Information Dispersal and Secret Sharing...
* Backed off assert.Jeffrey Walton2017-08-151-2/+1
| | | | Its too noisy
* Fix Address Sanitizer findings on GCC117Jeffrey Walton2017-08-151-9/+9
| | | | | | GCC117 is a Aarch64/ARM64 server with AMD's ARM chip and GCC 7.10. It looks like GCC is performing some std::string optimizations that generates a finding. We did not witness the finding on other platforms, like other Aarch64 devices and x86_64. We will need to check if taking the address of element-0 is still approved way to get the non-const pointer to the elements
* Add ELEMS_MAX for SecBlock (Issue 346)Jeffrey Walton2017-08-151-15/+55
| | | | Reset the mark on additional class methods
* Update with latest sources and reproducible buildJeffrey Walton2017-08-151-2/+2
|
* Fix Address Sanitizer findings on GCC117Jeffrey Walton2017-08-151-69/+48
| | | | GCC117 is a Aarch64/ARM64 server powered by AMD's ARM chip. It runs GCC 7.10. It looks like GCC is performing some std::string optimizations that generates a finding. We have not witnessed the finding on other platforms
* Fix test script when running on machine with RO mount of /Jeffrey Walton2017-08-142-2/+2
|
* Add Apple Watch and TV to Travis testingJeffrey Walton2017-08-142-0/+10
|
* Fix test script when running on machine with RO mount of /Jeffrey Walton2017-08-142-200/+208
|
* Use -O1 for Asan and UBsanJeffrey Walton2017-08-141-0/+6
|
* Move free standing function into anonymous namespaceJeffrey Walton2017-08-142-167/+232
| | | | Update comments and use class constants when available
* Fix bad SHA::Transform calculation (Issue 455)Jeffrey Walton2017-08-135-595/+623
| | | | | | | | 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.
* Cleanup casts due to ClangJeffrey Walton2017-08-133-92/+104
|
* Revert 95ee8975b4fc and 7d21cdd54e95 (Issue 408)Jeffrey Walton2017-08-132-65/+50
| | | | This broke some OS X builds. We need more testing. Ugh...
* Use blockSize in error message thrownJeffrey Walton2017-08-121-1/+3
|
* Convert GCM to use runtime blocksize checking (Issue 408)Jeffrey Walton2017-08-122-9/+22
| | | | GCM is still only defined for 16-byte ciphers, but this is where we need to be when we add the larger polynomials
* Cast enums to int for comparisonJeffrey Walton2017-08-111-8/+8
|
* Move from 'static' to 'enum' for class constantsJeffrey Walton2017-08-113-60/+59
| | | | Enums don't take up space in class objects. Its should result in smaller objects and faster code
* Add AES for ARMv8 (Issue 458)Jeffrey Walton2017-08-111-0/+122
|
* Add iOS testing to TravisJeffrey Walton2017-08-101-10/+31
|
* Add HMAC(SHA256) benchmarkJeffrey Walton2017-08-072-1/+2
|
* Fix "Integer constant is too large for 'long' type"Jeffrey Walton2017-08-072-1029/+1029
| | | | | | | | | kalyna.cpp:432: error: integer constant is too large for 'long' type kalyna.cpp:509: error: integer constant is too large for 'long' type kalyna.cpp:608: error: integer constant is too large for 'long' type kalyna.cpp:713: error: integer constant is too large for 'long' type kalyna.cpp:833: error: integer constant is too large for 'long' type ...
* Update documentationJeffrey Walton2017-08-051-1/+9
|
* Make nonce a class member rather than temporaryJeffrey Walton2017-08-052-7/+7
| | | | | Effectively this creates a workspace for encrypting the nonce. The zeroizer will run when the class is destroyed, rather than each invocation of UncheckedSetKey. Performance went from 3.6 cpb as a temporary to 2.9 cpb as a class member
* Cleanup selft testsJeffrey Walton2017-08-051-178/+97
|
* Fix library version numbersJeffrey Walton2017-08-053-3/+3
| | | | They were inadvertently checked-in with the SHA doc updates
* Update documentationJeffrey Walton2017-08-054-8/+8
|
* Update documentationJeffrey Walton2017-08-051-10/+10
|
* Use MOVDQU for SSE2 in static transform (Issue 455)Jeffrey Walton2017-08-052-32/+140
| | | | Updated documentation
* Add hash static transform test (Issue 455)Jeffrey Walton2017-08-044-2/+252
|