Jeffrey Walton
0ca4c41a97
Add ed25519 SignStream and VerifyStream functions (GH #796 , PR #797 )
2019-02-10 23:08:14 -05:00
Jeffrey Walton
4caa5ee724
Add SecretToPublicKey function for ed25519
...
Also remove IsClamped. Clamping occurs with ed25519, but it happens inside the Donna code. It is not needed elsewhere for ed25519.
2019-02-07 15:00:00 -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
d62674b561
Add ed25519 (GH #764 , PR #767 )
...
Add ed25519
2018-12-24 17:17:32 -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
c0150ed4bd
Fix placement of align attribute for 32-bit
2018-12-14 02:00:55 -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
8c3432473b
Update comments
2018-12-13 18:51:15 -05:00
Jeffrey Walton
eb749783da
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:22:34 -05:00
Jeffrey Walton
b19abcde1f
Cleanup donna files
2018-12-13 14:17:36 -05:00
Jeffrey Walton
5f8dcbbb37
Cleanup Moon's donna_32.cpp
2018-12-13 13:24:14 -05:00
Jeffrey Walton
adf109a953
Cutover to Andrew Moon's 32-bit code (GH #761 )
...
The code is public domain without license restrictions. It is also faster than Langley's original implementation.
2018-12-13 12:03:41 -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
20f4d22055
Fix compile on 32-bit MIPS (GH #761 )
...
Testing on a ci20 dev-board with Debian 5 and GCC 4
2018-12-13 04:21:38 -05:00
Jeffrey Walton
0bdacf1496
Fix missing semi-colon in non-ASM path
2018-12-13 03:39:01 -05:00
Jeffrey Walton
459035fcaa
Cleanup donna_32.cpp arithmetic shift
2018-12-12 22:52:15 -05:00
Jeffrey Walton
0ad50c61ed
Switch to library integer types
...
The standard ints will cause trouble on older versions of Visual Studio. It looks like they were missed at the initial cut-in.
2018-12-12 09:48:41 -05:00
Jeffrey Walton
3d98320b1e
Fix compile on 32-bit SunCC (GH #761 )
2018-12-12 09:05:56 -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