Commit Graph
1049 Commits
Author SHA1 Message Date
Frank Denis da448c38e4 Nits 2016-03-25 09:55:37 +01:00
Frank Denis eb13ec0cff Make sodium_malloc(0) well-defined. It always returns NULL. 2016-03-25 09:44:41 +01:00
Frank Denis 02e4b3b842 Check memory base instead of the aligned pointer
No behavior change, but it is less confusing to static analyzers
2016-03-25 09:42:32 +01:00
Frank Denis 346f8c131e More tests 2016-03-24 22:16:52 +01:00
Frank Denis 7a08f643bf Remove unused declaration 2016-03-24 21:06:07 +01:00
Frank Denis a3a2b74bd8 Use existing functions for unaligned access in hash_sha* 2016-03-24 15:02:34 +01:00
Frank Denis 3295752821 Of course, GNU ld doesn't know about .private_extern 2016-03-22 21:26:39 +01:00
Frank Denis bafc9c70e1 Only use .private_extern if this is supported 2016-03-22 20:42:07 +01:00
Frank Denis 26e4cf479a Reduce symbols visibility in curve25519_sandy2x 2016-03-22 19:55:07 +01:00
Frank Denis 3fb2ee07cb Add crypto_pwhash_primitive() 2016-03-21 20:59:43 +01:00
Frank Denis 1820a4239d Add missing SODIUM_EXPORT statements 2016-03-21 19:29:33 +01:00
Frank Denis de451c23a0 Add detached versions of ChaCha20-Poly1305 2016-03-21 13:11:04 +01:00
Frank Denis 89a6f58e4d Replace some constants 2016-03-21 12:55:24 +01:00
Frank Denis e34f3512ad clen -> clen_p 2016-03-21 12:13:11 +01:00
Frank Denis 359553f07d Add support for optional parameters to future-proof crypto_pwhash() 2016-03-21 09:38:43 +01:00
Frank Denis 33f406892f Rename CPUID bits constants for clarity 2016-03-21 03:54:10 +01:00
Frank Denis fd440e7b4d AVX2 bit is in %ebx, not %ecx 2016-03-21 03:42:33 +01:00
Frank Denis 2b71f28c4c Double crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE 2016-03-20 17:50:27 +01:00
Frank Denis 05d82ad147 Simplify quirks for C++Builder 2016-03-18 22:13:23 +01:00
Frank Denis a456244a95 Merge pull request #373 from jcolli44/master
Introduce C++Builder compatibility
2016-03-18 22:06:59 +01:00
Frank Denis f0e3cb0d50 Some platforms don't define ENOSYS - use ENXIO instead on these. 2016-03-18 22:01:35 +01:00
unknown 2085693c32 Introduce C++Builder compatibility
Add new preprocessor directives to allow libsodium to be easily
built in C++Builder.
2016-03-18 14:46:00 -04:00
Frank Denis 0c06979260 Verify at compile time that blake2b_param is packed as expected 2016-03-18 10:20:56 +01:00
Frank Denis 76e3e91576 Remove unnecessary extern "C" and unused prototypes 2016-03-18 10:17:02 +01:00
Frank Denis 6c94f968e4 Remove BLAKE2s-related declarations 2016-03-18 09:59:32 +01:00
Frank Denis 0a18d18daf Consistent comment style 2016-03-18 09:56:21 +01:00
Frank Denis a54e9402c5 Avoid BLAKE2 AVX2 implementation on Win32 2016-03-17 17:31:57 +01:00
Frank Denis 4b6667a9d3 Update Makefiles and MSVC solutions 2016-03-17 17:07:43 +01:00
Frank Denis 64fe1b2353 Indent 2016-03-17 16:53:30 +01:00
Frank Denis 7583cb26b5 Merge branch 'blakeavx2'
* blakeavx2:
  BLAKE2b AVX2 implementation By the marvellous Samuel Neves - https://github.com/sneves/blake2-avx2
2016-03-17 16:29:12 +01:00
Frank Denis 0131a72082 BLAKE2b AVX2 implementation
By the marvellous Samuel Neves - https://github.com/sneves/blake2-avx2
2016-03-17 16:24:04 +01:00
Frank Denis 8a24608fd2 Luminous beings are we, not this crude matter 2016-03-17 12:21:10 +01:00
Frank Denis 81f87df6a2 The Yoda style avoiding we can.
In a similar test above, that style we didn't use.
2016-03-17 12:21:09 +01:00
Frank Denis 6f2be3633f Argon2: avoid initial zeroing by calling fill_block() on the first pass 2016-03-17 12:21:06 +01:00
Frank Denis 7611ea6018 Add AVX2 detection 2016-03-17 11:15:18 +01:00
Frank Denis 42d906d3e9 Cacheline alignment 2016-03-17 09:27:39 +01:00
Frank Denis a4327a90f4 Spacing 2016-03-17 09:22:09 +01:00
Frank Denis e8dfc764d3 Add a detached API for aes256gcm 2016-03-15 11:02:25 +01:00
Frank Denis d8845c04dd Update blake2b licensing 2016-03-13 09:12:34 +01:00
Frank Denis 630ac0913b We only support data independent addressing for Argon2
Let the compiler automatically remove unused code
2016-03-11 16:41:06 +01:00
Frank Denis 5a00dff84d p -> R for clarity 2016-03-11 13:45:39 +01:00
Frank Denis 676950d206 Remove superflous constant type qualifiers 2016-03-10 16:43:42 +01:00
Frank Denis ab2f22137e ed25519_verify: check for small-order R 2016-03-10 16:39:54 +01:00
Frank Denis 7597b7cc13 Check what the implications of versioned Argon2 strings will be 2016-03-10 12:26:17 +01:00
Frank Denis 805fd3589d The version number in Argon2 strings will require 5 extra bytes
Round `crypto_pwhash_argon2i_STRBYTES` up to 128
2016-03-10 12:22:13 +01:00
Frank Denis 7c5d30a6a3 Consistent indentation 2016-03-09 15:37:47 +01:00
Frank Denis 62911edb7f Ed25519: verify 0<=s<2^252+27742317777372353535851937790883648493
This reintroduces removed code to match the irtf-cfrg-eddsa draft

ED25519_COMPAT can be defined to keep the old behavior
2016-03-08 20:35:21 +01:00
Frank Denis 7d4cfbf7af pwhash_argon2i_str(): zero the output buffer even on error path 2016-03-08 13:55:04 +01:00
Frank Denis 3853d5a824 Require a least 128 bits for an Argon2i digest 2016-03-08 13:51:23 +01:00
Frank Denis 7e4f83a54d Revisit Argon2i predefined parameters 2016-03-08 11:55:03 +01:00