Jeffrey Walton
2b3349590f
Clear unreachable code warnings with early MSVC compilers
2019-10-03 06:41:46 -04:00
Jeffrey Walton
7b7827e9cb
Clear Clang warning on SSE2 load
2019-07-21 22:20:55 -04:00
Jeffrey Walton
7ef3dacdc2
Remove C++11 constexpr code for CRYPTOPP_ALIGN_DATA (PR #830 )
...
I don't have faith in it even though it has tested good so far.
2019-04-30 23:00:56 -04:00
Jeffrey Walton
a379c5644a
Clear alignment warnings on ARM 32-bit platforms ( #828 )
2019-04-30 17:53:58 -04:00
Jeffrey Walton
b9fe3a3415
Clear alignment warnings on ARM 32-bit platforms
2019-04-29 22:40:07 -04:00
Jeffrey Walton
0ca4c41a97
Add ed25519 SignStream and VerifyStream functions (GH #796 , PR #797 )
2019-02-10 23:08:14 -05:00
Jeffrey Walton
31fdfaa070
Clear unused function warning in Donna source files (GH #793 )
2019-01-30 23:06:06 -05:00
Jeffrey Walton
9c58ba8f2b
Avoid use of uint8_t in donna64.cpp
2018-12-28 11:16:41 -05:00
Jeffrey Walton
d62674b561
Add ed25519 (GH #764 , PR #767 )
...
Add ed25519
2018-12-24 17:17:32 -05:00
Jeffrey Walton
4f64bb8eb3
Clear warning C4163: '_umul128' : not available as an intrinsic function
2018-12-14 12:23:18 -05:00
Jeffrey Walton
91e5844625
Enable x25519 64-bit code path for Microsoft compilers
2018-12-14 12:17:50 -05:00
Jeffrey Walton
d35124f304
Make SSE2 configurable via CRYPTOPP_SSE2_INTRIN_AVAILABLE
...
Benchmarking shows things run a little slower with SSE2 on modern Core i5's. Also update comments and links
2018-12-14 03:17:04 -05:00
Jeffrey Walton
67af746743
Update comments
2018-12-14 02:14:20 -05:00
Jeffrey Walton
6dc60888d9
Fix the cut-in of Moon's implementation (GH #761 )
...
The initial cut-in was missing preamble present in Moon's curve25519_donna function. It originally tested good because we only perform a pairwise consistency check in release builds. Comprehensive testing with debug builds revealed the problem. Debug builds cross-validate against Bernstein's TweetNaCl library.
2018-12-13 20:34:39 -05:00
Jeffrey Walton
27cd177209
Fix the cut-in of Moon's implementation (GH #761 )
...
The initial cut-in was missing preamble present in Moon's curve25519_donna function. It originally tested good because we only perform a pairwise consistency check in release builds. Comprehensive testing with debug builds revealed the problem. Debug builds cross-validate against Bernstein's TweetNaCl library.
2018-12-13 18:50:42 -05:00
Jeffrey Walton
b19abcde1f
Cleanup donna files
2018-12-13 14:17:36 -05:00
Jeffrey Walton
560c332f19
Cutover to Andrew Moon's 64-bit code (GH #761 )
...
The code is public domain without license restrictions. It is also faster than Langley's original implementation.
2018-12-13 13:25:22 -05:00
Jeffrey Walton
12e9d137b2
Fix copy/paste error
...
32-bit was copied into 64-bit, including the oversized declarations.
2018-12-13 10:27:35 -05:00
Jeffrey Walton
152ac6177c
Add Moon's curve25519 using SSE2 (GH #761 )
...
Moon's code is very fast. In fact it is so fast it broke our benchmarks. Moon's code registers 0.00 milliseconds and 0.00 megacycles/operation.
2018-12-13 10:19:54 -05:00
Jeffrey Walton
e97d6d0ff5
Fix failed self test when NO_OS_DEPENDENCE (GH #761 )
...
Add is_clamped for secret key validation.
Cleanup paramter names in Donna::curve25519 to follow function.
Overload Donna::curve25519 to implicitly use base point if not provided.
Add additional asserts to let the code debug itself.
Update documentation.
2018-12-12 03:56:09 -05:00
Jeffrey Walton
77923a291a
Add Langley's curve25519 (GH #761 , PR# 762)
2018-12-11 16:17:56 -05:00