Commit Graph

1928 Commits

Author SHA1 Message Date
Frank Denis
03973542c7 Faster scalarmult_base() when using the ref10 implementation.
Use the Ed25519 scalar multiplication function followed by a conversion to
Montgomery coordinates to generate X25519 public keys.

Suggested a while ago by @CodesInChaos
2015-12-17 00:49:59 +01:00
Frank Denis
f430f3a936 Reorder to improve inlining 2015-12-16 16:01:00 +01:00
Frank Denis
6872237df9 Reorder functions to help with inlining 2015-12-16 15:53:13 +01:00
Frank Denis
b81f9cd436 Let the x25519 ref10 implementation use the core/curve25519/ref code
cswap can be a convenient operation to have in core later, but it is
not required yet.
2015-12-16 15:46:09 +01:00
Frank Denis
f9d982480b Move most of sign/ed25519/ref10 to core/curve25519/ref10 2015-12-16 15:25:14 +01:00
Frank Denis
5f4763ce74 Simplify AVX availabity detection, add support for Visual Studio 2015-12-15 10:41:43 +01:00
Frank Denis
2ee3db59e7 Use HAVE_AVX_ASM instead of HAVE_AMD64_ASM 2015-12-14 16:52:55 +01:00
Frank Denis
ab4bade488 Check the extended control register to see if AVX is actually usable 2015-12-14 16:45:44 +01:00
Frank Denis
53570303d0 Reduce diff between curve25519/ref10 and ed25519/ref10, add missing includes 2015-12-14 12:43:41 +01:00
Frank Denis
76daa01963 ref10: inline, constify 2015-12-11 06:42:59 +01:00
Frank Denis
292b7bdf0d Travis: Limit the double compilation to a single OS 2015-12-11 02:02:06 +01:00
Frank Denis
885529c5dc The output of "make distclean" is not worth logging in Travis 2015-12-11 01:52:00 +01:00
Frank Denis
0c8834f776 Travis: Run the pre-C99 compilation test only once, with gcc
Compile without optimizations (and symbols) as an opportunity to also
check that it properly compiles under these conditions (re: force_inline issues)
2015-12-11 01:45:24 +01:00
Frank Denis
6ab5957544 Travis: check that we get the same code with&without named struct initializers 2015-12-11 01:04:33 +01:00
Frank Denis
04c7c3637e Don't refine SODIUM_C99 if it has already been defined 2015-12-11 00:57:47 +01:00
Frank Denis
2d589f78be Reorder struct members to keep values of the same type together 2015-12-11 00:26:32 +01:00
Frank Denis
bc371880d8 salsa20random stream struct members must match initializers
for compatibility with old non-C99 compilers.
Spotted and reported by @sneves
2015-12-11 00:10:19 +01:00
Frank Denis
b977a53d1d printf("%llu") is not expected work on mingw32/Windows XP. 2015-12-10 16:38:26 +01:00
Frank Denis
e36400aa30 __attribute__((...)) -> __attribute__ ((...)) 2015-12-10 11:26:14 +01:00
Frank Denis
e7d9129729 Run make distclean, not just make clean in the msys2 build scripts
for consistency with other build scripts
2015-12-10 10:26:15 +01:00
Frank Denis
0879c0bd22 Run "make clean" first in the build scripts 2015-12-10 10:24:19 +01:00
Frank Denis
47d8513bde Fix offset in obsolete crypto_sign_edwards25519sha512batch_open 2015-12-10 09:41:17 +01:00
Frank Denis
9567be2df1 Revert "Use minimal builds on msys2"
This reverts commit cc29da17c3.
2015-12-09 22:29:41 +01:00
Frank Denis
054579d3bb Remove dead globals, bump the number of rounds in the box{7,8} tests 2015-12-09 01:43:57 +01:00
Frank Denis
d9e38003dc Reduce the number of rounds in the box7 test, use guarded memory 2015-12-09 01:41:30 +01:00
Frank Denis
fb09514949 Shorten the verify1 test 2015-12-09 01:37:58 +01:00
Frank Denis
a84ae0170c 1.0.7 is ready 2015-12-08 16:58:21 +01:00
Frank Denis
731f2e1c12 Force alignment for _mm_loadl_epi64() in DEBUG mode
Required to work around gcc sanitizer
2015-12-07 22:44:24 +01:00
Frank Denis
ea43d1b18b Shorten auth7 2015-12-07 17:41:20 +01:00
Frank Denis
26535c3d42 Remove browser-js.done or js.done, but not both 2015-12-07 12:50:24 +01:00
Frank Denis
bfa206ed4b Let emscripten.sh support a --browser-tests switch 2015-12-07 12:38:22 +01:00
Frank Denis
4bf74c7574 C++ compat 2015-12-07 10:46:03 +01:00
Frank Denis
48b9c4e75c Ignore test/default/browser, import HTML template 2015-12-07 09:57:49 +01:00
Frank Denis
43c25a343b Reduce box8 even more 2015-12-07 09:43:34 +01:00
Frank Denis
8e54dd6d5f Use guarded memory for the box8 test 2015-12-07 09:32:53 +01:00
Frank Denis
3e2bef97dc Reduce a few expensive tests 2015-12-07 09:09:04 +01:00
Frank Denis
7ada62b1ff Reduce some test cases, generate html test files 2015-12-07 08:58:35 +01:00
Frank Denis
e262425a4a Reduce even more, for Chrome 2015-12-07 02:16:22 +01:00
Frank Denis
1600ccfdda On a web browser, reduce the number of vectors for the sign test 2015-12-07 02:12:44 +01:00
Frank Denis
0eaa2294a4 Revert "Output signatures prefix in the signature test"
This reverts commit c73cbc42d9.
2015-12-07 02:04:22 +01:00
Frank Denis
31b75afb99 Nits 2015-12-07 02:01:39 +01:00
Frank Denis
c73cbc42d9 Output signatures prefix in the signature test 2015-12-07 01:57:53 +01:00
Frank Denis
3d1e11fe81 Support a BROWSER_TESTS env variable to build tests for browsers 2015-12-07 01:44:33 +01:00
Frank Denis
7354964b91 Update the examples for libsodium 1.0.7 2015-12-06 23:08:44 +01:00
Frank Denis
c7eec99d2f Update ChangeLog 2015-12-06 19:55:47 +01:00
Frank Denis
ec6b86611f More checks for sodium_add() (overlaps) and sodium_increment() 2015-12-06 19:06:27 +01:00
Frank Denis
a65484a7e5 Don't define unused variables 2015-12-06 18:47:07 +01:00
Frank Denis
3796145631 autoconf: check that named registers work 2015-12-06 18:30:00 +01:00
Frank Denis
b816a44b13 Assembly optimized _increment() and _add() for common nonce types 2015-12-06 18:11:37 +01:00
Frank Denis
5b62287f98 Add a --enable-opt compile-time switch 2015-12-05 17:56:42 +01:00