Frank Denis
9fbb822281
Use stdint types a bit more
2016-02-27 16:33:22 +01:00
Frank Denis
4e9b0b67ce
Let crypto_core_hsalsa20()
accept NULL
for the default constants
2016-02-27 16:19:38 +01:00
Frank Denis
bb596e8eb7
Trim/untab/indent
2016-02-27 13:26:42 +01:00
Frank Denis
adfe6c9d55
scrypt/sysendian.h is gone
2016-02-27 13:14:01 +01:00
Frank Denis
22eebd83f1
common_aes128ctr.c is gone
2016-02-27 13:11:08 +01:00
Frank Denis
6dc466ee8b
Use a single way to do unaligned memory access/endianness conversion
2016-02-27 12:46:07 +01:00
Frank Denis
d9493834b2
Hide store32()/load32() in the header
2016-02-26 13:22:33 +01:00
Frank Denis
49c57dfe0a
Faster HChaCha20
2016-02-26 13:15:36 +01:00
Frank Denis
1e2a9eb062
Faster with clang
2016-02-26 12:59:14 +01:00
Frank Denis
4d5c3976db
Add HChaCha20
2016-02-26 12:50:17 +01:00
Frank Denis
ecdcfba07e
Argon2: issue different error codes for VERIFY_MISMATCH and DECODING_FAIL
...
Only used internally, not exposed in the Sodium API
2016-02-23 15:24:37 +01:00
Frank Denis
80d24c00cc
Use calloc() instead of malloc()+memset()
2016-02-19 07:40:09 +01:00
Frank Denis
11caf90c1f
Update Argon2 tests
2016-02-17 16:39:20 +01:00
Frank Denis
4b6a909d8a
Argon2: fill_block() now XORs blocks instead of overwriting them
2016-02-17 16:26:37 +01:00
Frank Denis
e153debd0d
Remove ...edwards25519sha512batch_*() wrappers for the constants
...
The ...edwards25519sha512batch_*() functions are only here for ABI
compatibility with NaCl, where constants were only defined as macros.
Plus, these functions were only present as prototypes since 1.0.6;
the actual symbols were no defined any more.
2016-02-13 08:15:00 +01:00
Frank Denis
54915743f4
Define ZEROBYTES as BOXZEROBYTES + MACBYTES
...
ZEROBYTES and BOXZEROBYTES are rarely used compared to MACBYTES,
so it makes more sense to define MACBYTES and define the compat macros
based on it that the other way round.
2016-02-11 15:19:58 +01:00
Frank Denis
d7ffff1f31
Merge pull request #351 from gnieboer/master
...
added argon2-fill-block-ssse3.c to VS project
2016-02-07 17:58:11 +01:00
gnieboer
b4af066286
Added all argon2 files to other msvc project files and project filter files
2016-02-07 17:11:59 +03:00
Frank Denis
36e60b2d28
Wipe secret keys before public keys and nonces
2016-02-03 01:19:24 +01:00
Frank Denis
1b63773986
Comments cleanup
2016-02-01 16:08:29 +01:00
gnieboer
8f050d1fcb
added argon2-fill-block-ssse3.c to VS project
2016-01-30 19:07:35 +03:00
Frank Denis
7035bbb8b8
Indent
2016-01-28 14:44:41 +01:00
Frank Denis
aa2ae5642b
aes256gcm_encrypt_afternm() - abort() if mlen > 2^39-256 bits
2016-01-27 14:42:32 +01:00
Frank Denis
113091b2a0
On non-ELF platforms, mark pointers as volatile, not just what they point to.
...
See http://sk.tl/Wj3pmI vs http://sk.tl/VNsyd9
2016-01-27 08:24:19 +01:00
Frank Denis
bd15b68569
Argon2: explicitly initialize ctx.secret to NULL
2016-01-26 11:14:40 +01:00
Frank Denis
367afac0bf
Sync argon2 implementation with upstream
2016-01-24 20:35:00 +01:00
Frank Denis
31a153c937
argon2_core() -> argon2_ctx()
2016-01-23 22:52:11 +01:00
Frank Denis
8bd6c9e289
Caps
2016-01-22 16:16:15 +01:00
Frank Denis
dc4a9791a7
Add comments to argon2-encoding.c
...
Upstream `decode_string()` can return `ARGON2_INCORRECT_TYPE`.
This change is not merged. Either have a function return an ARGON2 constant,
have it return 0/1, or have it return 0/-1, but mixing different systems
is confusing. (encode|decode)_string() should probably all return an ARGON2
code.
2016-01-22 16:12:24 +01:00
Frank Denis
921507cc59
Add extra sodium_memzero() in Argon2
2016-01-22 16:03:09 +01:00
Frank Denis
a814810a43
Relax max sizes in argon2 decoding
2016-01-22 15:59:54 +01:00
Frank Denis
17248540e3
Add aes256gcm stubs for platforms where it is not available
2016-01-22 10:21:24 +01:00
Frank Denis
d1b028abe3
Initialize ctx->pwdlen in argon2 string decoder
2016-01-21 08:42:23 +01:00
Frank Denis
82c7c45924
zero the context, in case we forget to initialize some members
2016-01-21 08:39:47 +01:00
Frank Denis
ba415e1f4d
Argon2: use existing constants more consistently
...
By @technion via the reference implementation
2016-01-21 08:35:53 +01:00
Frank Denis
53419d7b06
Merge pull request #348 from betafive/pbarker/blake2
...
Add crypt_generichash_blake2b_statebytes function
2016-01-16 20:15:00 +01:00
Paul Barker
e20291d78e
Add crypt_generichash_blake2b_statebytes function
...
The function crypto_generichash_statebytes exists to dynamically determine the
size of a crypto_generichash_state struct. This is useful when using libsodium
from a language which can't use sizeof on C types. However, no equivalent
existed for the crypto_generichash_blake2b_state struct for users who want to
explicitly use the blake2b algorithm.
The function crypt_generichash_blake2b_statebytes is added to fill this gap.
2016-01-16 17:25:14 +00:00
Frank Denis
8c0b916729
Add new macros for chacha20poly1305_ietf constants, for clarity
2016-01-16 12:36:30 +01:00
Frank Denis
18cc1b5682
The occasional absence of braces is disturbing.
2016-01-15 21:12:34 +01:00
Frank Denis
08d3b8a19c
Reuse validate_inputs() to validate parameters in argon2-encoding.c
2016-01-15 20:58:50 +01:00
Frank Denis
fcf9441c7b
Export crypto_pwhash*() to Javascript
2016-01-13 10:00:16 +01:00
Frank Denis
846a84b721
Version bump (not released yet)
2016-01-13 09:49:20 +01:00
Frank Denis
936667e3f1
Untab
2016-01-12 09:26:46 +01:00
Frank Denis
20ccc09018
Argon2: Let fill_{memory_blocks,segment} return an error code
2016-01-12 09:24:50 +01:00
Frank Denis
bc98db0bf1
Add AppVeyor configuration
2016-01-11 11:40:23 +01:00
Frank Denis
fbeed0c92c
Add Appveyor status
2016-01-11 11:20:58 +01:00
Frank Denis
751f3b3753
Visual Studio's preprocessor doesn't support #warning
2016-01-11 11:11:43 +01:00
Frank Denis
1cce9b1e00
argon2i strings are variable length; check that they are zero-padded
2016-01-08 16:55:08 +01:00
Frank Denis
f1ab1fd377
Add extra CRYPTO_ALIGN() required for Minix
2016-01-07 15:33:17 +01:00
Frank Denis
cfd597298f
Bring back tests vectors for argon2 strings
2016-01-06 15:36:36 +01:00