4580 Commits

Author SHA1 Message Date
Jeffrey Walton
cac977856a
Clear alginment warning with Clang
The data is aligned, but Clang issues warning based on type and not the actual alignment of the variable and data.
2018-12-14 04:14:44 -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
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
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
83ddeadb65
Make clamped and small order tests static class members 2018-12-13 16:16:40 -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
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
9156c49555
Update comments 2018-12-13 11:57:52 -05:00
Jeffrey Walton
c76f50ebbb
Add missing header guard 2018-12-13 11:33:26 -05:00
Jeffrey Walton
26fc727f8f
Increase precision on OutputResultOperations
Andrew Moon's x25519 SSE2 code broke reporting because it was too fast.
2018-12-13 10:48:07 -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
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
a09d4024b7
Perform both is_clamped and is_small_order at level 2 validation 2018-12-12 10:48:53 -05:00
Jeffrey Walton
220ae9b914
Update documentation 2018-12-12 10:35:00 -05:00
Jeffrey Walton
b5cf4ff307
Remove unneeded TYPE_OF_SOCKLEN_T define.
This should have been removed at GH #208, PR #703.
2018-12-12 10:16:15 -05:00
Jeffrey Walton
131397ba5a
Documented Donna namespace for curve25519 2018-12-12 10:14:27 -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
d481922a50
Re-enable UBsan tests on Travis
The Xenial image and the Xcode 10.1 toolchain are mature enough to enable the sanitizer.
2018-12-12 09:34:09 -05:00
Jeffrey Walton
3d98320b1e
Fix compile on 32-bit SunCC (GH #761) 2018-12-12 09:05:56 -05:00
Jeffrey Walton
80c551121f
Remove duplicate test run
The test vector collection is run earlier in the process.
2018-12-12 05:59:20 -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
80776453f8
Fix x25519 test data (GH #761) 2018-12-12 03:55:56 -05:00
Jeffrey Walton
34d42b6998
Cut-in x25519 weak points and validation 2018-12-11 18:26:44 -05:00
Jeffrey Walton
4afa78c0e2
Update documentation 2018-12-11 17:48:19 -05:00
Jeffrey Walton
20fce33449
Update documentation 2018-12-11 17:32:28 -05:00
Jeffrey Walton
77923a291a
Add Langley's curve25519 (GH #761, PR# 762) 2018-12-11 16:17:56 -05:00
Jeffrey Walton
c1681148a2
Add fallback arch in case arch is not set for setenv-ios.sh 2018-12-09 13:19:27 -05:00
Jeffrey Walton
0aa217b91c
Update comments in config.h
Some comments in config.h were old. Time for a refresh.
Switch from CRYPTOPP_BOOL_ARM64 to CRYPTOPP_BOOL_ARMV8. Aarch32 is ARMv8, and that's the important part.
2018-12-09 10:24:55 -05:00
Jeffrey Walton
fbb9b40397
Update Travis Android SDK and NDK gear 2018-12-09 09:43:15 -05:00
Jeffrey Walton
709ca5c480
Update Travis Android SDK and NDK gear 2018-12-09 09:39:38 -05:00
Jeffrey Walton
354e7ca7c9
Update Travis Android SDK and NDK gear 2018-12-09 08:11:04 -05:00
Jeffrey Walton
e08898b215
Squash Android SDK warning
Also see https://stackoverflow.com/a/47028911/608639
2018-12-09 06:36:52 -05:00
Jeffrey Walton
b6acde8327
Add setenv-travis script 2018-12-09 06:04:53 -05:00
Jeffrey Walton
123b0725cf
Update Travis Android SDK and NDK gear 2018-12-09 04:52:06 -05:00
Jeffrey Walton
7a191ba42d
Update Travis Android SDK and NDK gear 2018-12-09 04:51:07 -05:00
Jeffrey Walton
435b7cabd3
Update Travis Android SDK and NDK gear 2018-12-09 04:19:00 -05:00
Jeffrey Walton
b324f18777
Increase git clone depth for Travis 2018-12-09 03:31:50 -05:00
Jeffrey Walton
872c9487e5
Rename VS2005 files with dashes to underscores (GH #736) 2018-12-08 13:26:54 -05:00
Jeffrey Walton
99b7a73047
Add missing iOS architectures for Travis 2018-12-08 12:50:16 -05:00
Jeffrey Walton
7777704a38
Move iOS simulator builds to allowed_failures in Travis 2018-12-08 11:40:53 -05:00
Jeffrey Walton
95964fd0b3
Backout setenv-ios.sh changes
The changes did not help
2018-12-08 11:31:30 -05:00