Frank Denis
63cbad7506
Visual Studio doesn't like abort() chains
...
Let's limit this test to systems this has been tested on for the
time being.
2017-07-19 00:20:06 +02:00
Frank Denis
9df008a786
Add some invalid base64 strings to pwhash_str_verify() tests
2017-07-17 23:26:36 +02:00
Frank Denis
5d56821d3d
More tests, and start testing misuse cases
2017-07-17 23:09:44 +02:00
Frank Denis
0e8d7c9268
Implement sodium_set_misuse_handler()
2017-07-17 01:00:00 +02:00
Frank Denis
9def4d9a8a
Add tests for crypto_kx_*() when a single key is required
2017-07-17 00:36:55 +02:00
Frank Denis
608e103e45
Finish the Argon2id tests
2017-07-16 18:34:01 +02:00
Frank Denis
ff615b270a
Fix the AES test on error path
2017-07-13 21:41:06 +02:00
Frank Denis
7cfbb5922b
Dont expect EFBIG to be returned if a requested allocation is too large
...
Some environments return funny things such as "function not implemented",
EINVAL or "permission denied" instead.
So, don't assume anything.
2017-07-12 21:36:33 +02:00
Frank Denis
28e32dd5a2
Remove scrypt from minimal builds
2017-07-11 22:08:02 +02:00
Frank Denis
f586752afe
+ Argon2id tests
2017-06-28 15:49:49 +02:00
Frank Denis
7334060f43
Add a workaround for old asan versions (CentOS 7)
2017-06-23 17:30:48 +02:00
Frank Denis
c3045e2cb0
Check that SIGSEGV handlers work
...
Tools such as ASAN may trap violations instead of our handlers,
making the sodium_utils{2,3} test fail.
This has been documented for a long time, but it's probably better
to detect this and ignore tests depending on working signal handlers.
2017-06-23 11:11:16 +02:00
Frank Denis
efb097d957
Consistency
2017-05-19 14:58:16 +02:00
Frank Denis
b28c7bcad9
Unbreak NaCl tests (parse error near '}')
2017-05-19 14:56:31 +02:00
Jim Patterson
1fd6a4bfc2
Replace which
with command
for portability ( #542 )
...
The `which` command is not part of the posix standard and not available
in some environments. The `command` command is part of the posix
standard and well supported.
See https://unix.stackexchange.com/q/85249 for a discussion about the
use of `command` instead of `which`.
If a system had `libtool` but not `which`, the build process would issue
an erroneous error stating:
libtool is required, but wasn't found on this system
Switching to `command` corrects this problem.
2017-05-19 14:51:56 +02:00
Frank Denis
3e85167657
Fix crypto_pwhash_argon2i_str_verify()
and its tests after errno
changes
2017-05-12 15:09:54 +02:00
Emil Bay
94760400a6
Add crypto_pwhash_MISMATCH errno ( #541 )
...
* Add crypto_pwhash_MISMATCH errno
* Use EINVAL for invalid password
* Only set errno on mismatch
2017-05-12 14:30:26 +02:00
Frank Denis
4809639ae1
box_easy2 test: increase the minimum test size
2017-04-07 07:59:13 -07:00
Frank Denis
d4dbf0cc4f
Import preliminary compilation script for webassembly
...
Thanks to @facekapow
This still needs quite a bit of work, so don't add to the distfiles yet
2017-03-12 17:44:29 +01:00
Frank Denis
849a35bd82
+ crypto_kx_*() API
...
This doesn't include a full key exchange API yet.
2017-03-12 13:15:39 +01:00
Frank Denis
88c77d6aa7
Do not use a zero nonce in randombytes_buf_deterministic()
...
This can mitigate implications of reusing the same key across different
functions.
2017-03-09 13:57:37 +01:00
Frank Denis
8679e717db
+ sodium_library_minimal() and SODIUM_LIBRARY_MINIMAL
2017-03-06 09:47:09 +01:00
Frank Denis
707f4c8e08
Add ed25519ph
2017-03-05 14:45:13 +01:00
Frank Denis
2ae516079b
chacha20 can only be tested with a 32-bit ic
2017-03-03 10:39:03 +01:00
Frank Denis
588c03c536
C++ compat
2017-03-03 10:29:50 +01:00
Frank Denis
e46bc4c5dd
Add tests for chacha&salsa with a counter around 2^32
2017-03-03 10:14:08 +01:00
Frank DENIS
36c038ccd1
Additional ChaCha20/Salsa20 tests with a short output length
2017-03-02 18:01:28 +01:00
Frank Denis
617862eb5a
Make aead_xchacha20_poly1305 a first-class citizen
2017-03-02 10:19:08 +01:00
Frank Denis
ff931a9ab5
Remove useless assignments
2017-02-28 20:54:13 +01:00
Frank Denis
3cd883d33e
Remove debugging leftover in tests
2017-02-27 16:25:32 +01:00
Frank Denis
c0c645da45
Test crypto_kdf constants, add _PRIMITIVE
2017-02-26 21:30:40 +01:00
Frank Denis
d203d87d2f
const static -> static const
2017-02-26 16:10:32 +01:00
Frank Denis
d860121ebc
Fix previous
2017-02-25 21:01:52 +01:00
Frank Denis
4e6091b347
Merge branch 'master' of https://github.com/jedisct1/libsodium
...
* 'master' of https://github.com/jedisct1/libsodium :
spelling fixes (touches code in tests) (#494 )
Feature/spelling (#495 )
2017-02-25 21:00:52 +01:00
Frank Denis
eb1c92d2ec
Reformat the scrypt tests
2017-02-25 20:59:54 +01:00
ka7
76e87fb547
spelling fixes (touches code in tests) ( #494 )
2017-02-25 14:21:30 +01:00
Frank Denis
0a5a40de5b
Trim spaces
2017-02-24 19:23:55 +01:00
Frank Denis
8fb5918fb6
Add a test for siphashx24
2017-02-24 19:23:14 +01:00
Frank Denis
7bbeba5723
Indent
2017-02-23 11:30:21 +01:00
Frank Denis
4a958f9e9e
Indent
2017-02-23 11:28:12 +01:00
Frank Denis
f4da7fe314
Indent
2017-02-23 11:27:45 +01:00
Frank Denis
3d96ea4b6a
Indent
2017-02-23 11:27:19 +01:00
Frank Denis
4037465983
Indent
2017-02-23 11:26:24 +01:00
Frank Denis
d5bf3954d6
Indentx
2017-02-23 11:25:09 +01:00
Frank Denis
cac2dde218
Indent
2017-02-23 11:24:48 +01:00
Frank Denis
cadee98e13
Indentx
2017-02-23 11:23:50 +01:00
Frank Denis
efbc49f100
Indent
2017-02-23 11:23:19 +01:00
Frank Denis
434e3691ba
Indent
2017-02-23 11:22:58 +01:00
Frank Denis
e747cec677
Indent
2017-02-23 11:22:36 +01:00
Frank Denis
3cce789304
Indent
2017-02-23 11:22:00 +01:00
Frank Denis
db7c0e1956
Indent
2017-02-23 11:21:30 +01:00
Frank Denis
c8f6121429
Indent
2017-02-23 11:20:37 +01:00
Frank Denis
20b12aa9d4
Indent
2017-02-23 11:19:53 +01:00
Frank Denis
5351efb122
Indentx
2017-02-23 11:15:29 +01:00
Frank Denis
dd9d8e283b
Indent
2017-02-23 11:13:43 +01:00
Frank Denis
0877b14c68
Correct array size check in xchacha20 test
2017-02-20 11:35:13 +01:00
Frank Denis
5957e2c735
C++ compat
2017-02-19 21:23:34 +01:00
Frank Denis
8af252bf87
use crypto_*_keygen() in tests
2017-02-19 21:20:45 +01:00
Frank Denis
7e5d64834c
untab
2017-02-19 21:17:42 +01:00
Frank Denis
7f7e7235c5
Add a keygen function to all the primitives
2017-02-19 21:15:54 +01:00
Frank Denis
93d02019da
Trigger randombytes_seedbytes()
2017-02-19 19:10:08 +01:00
Frank Denis
cafb0a695b
Add randombytes_buf_deterministic()
2017-02-19 18:40:29 +01:00
Frank Denis
70c2796ae5
+ crypto_kdf high-level API
...
This is a common need, and people end up reimplementing HKDF.
So, add a crypto_kdf() API similiar to libhydrogen's. The later has a
higher limit for the output length using BLAKE2X if required.
We can implement the same strategy later in libsodium if needed.
2017-02-19 18:13:10 +01:00
Frank Denis
e0150faf56
Always zero the argon2 output buffer prior to doing anything
...
This is consistent with what we are doing with scrypt.
On error/misuse, the buffer is zeroed; this may prevent bugs with
reused/invalid buffers.
2017-02-19 12:40:28 +01:00
Frank Denis
2c6fb87708
Set crypto_pwhash_scryptsalsa208sha256_BYTES_MIN to 128 bits
2017-02-19 12:31:05 +01:00
Frank Denis
2e4e1c66a0
Complete 08c0e03f83
2017-02-19 12:23:37 +01:00
Emil Bay
08c0e03f83
WIP: crypto_pwhash constants ( #464 )
...
* Test exposed constraint constants on crypto_pwhash
This includes the following constants for crypto_pwhash, crypto_pwhash_argon2i,
and crypto_pwhash_scryptsalsa208sha256:
- crypto_pwhash_BYTES_MIN
- crypto_pwhash_BYTES_MAX
- crypto_pwhash_PASSWD_MIN
- crypto_pwhash_PASSWD_MAX
- crypto_pwhash_OPSLIMIT_MIN
- crypto_pwhash_OPSLIMIT_MAX
- crypto_pwhash_MEMLIMIT_MIN
- crypto_pwhash_MEMLIMIT_MAX
* Expose constraint constants for crypto_pwhash
* Expose constant methods for crypto_pwhash
2017-02-19 11:19:01 +01:00
Frank Denis
532ea6bd95
+ test for aead_xchacha20poly1305
2017-02-18 22:10:30 +01:00
Frank Denis
a329340d90
Remove the NaCl-like APIs from *xchacha20 additions
...
These APIs were useful with the salsa20 constructions for compatibility
with NaCl, but they are tricky to use and don't provide any benefits over
the _easy APIs.
Having them around was good for consistency with the salsa20-based ones,
but this is code that is unlikely to be used in actual projects.
So, don't include them, unless people actually ask for them.
2017-02-18 21:22:39 +01:00
Frank Denis
eb5c17d3ec
Add tests for box_xchacha20poly1305
2017-02-18 20:31:39 +01:00
Frank Denis
99e6c94739
C++ compat
2017-02-16 09:57:01 +01:00
Frank Denis
b146082d68
More tests for *xchacha20*
2017-02-14 15:41:59 +01:00
Frank Denis
071a1afde3
C++ compat
2017-02-12 22:34:15 +01:00
Frank Denis
b209a7c0af
Add a test for HChaCha20
2017-02-12 22:28:35 +01:00
Frank Denis
3499cbfbe5
Add dist-build/nativeclient-x86-64.sh
2016-04-29 21:55:06 +02:00
Frank Denis
858b8e8c5e
Put then
and if
on the same line.
...
Having `then` aligned with `if` was pretty confusing, and I kept
reading `else` instead of `then`.
2016-04-29 20:49:35 +02:00
Frank Denis
8326bc1d75
CRLF
2016-04-29 20:36:06 +02:00
Frank Denis
251b836f01
NativeClient complains about __memset_chk being undefined on OSX.
...
Work around this. There might be a better fix, but at least the
test suite compiles with the newlib.
2016-04-29 20:34:24 +02:00
Frank Denis
492d4b1dd6
Repair NativeClient support
2016-04-18 21:40:18 +02:00
Frank Denis
e2f75d6168
Make assertions more readable
2016-04-12 01:23:14 +02:00
Frank Denis
1818267d64
Return -1 if crypto_generichash_final() is called twice
2016-04-06 01:00:49 +02:00
Frank Denis
b09e1970bc
Test that ciphertexts shorter than the MAC size aren't even read
2016-04-04 10:47:54 +02:00
Frank Denis
d73124a025
Make the test of truncated chacha20poly1305 ciphers less deterministic
2016-04-04 10:40:23 +02:00
Frank Denis
d7f5877df5
Add crypto_pwhash_argon2i_ALG_ARGON2I13
2016-04-01 20:48:34 +02:00
Frank Denis
384e08b7f4
Require an algorithm identifier in crypto_pwhash()
2016-04-01 20:29:28 +02:00
Frank Denis
5d8c878ffb
Remove mlen_p from the AEAD detached interface
2016-03-30 21:20:34 +02:00
Frank Denis
7afe93f9a2
Mark test functions as static and __attribute__ ((noreturn))
2016-03-27 00:32:25 +01:00
Frank Denis
2aa703fcc7
Restore the previous sodium_malloc(0) behavior
...
If aligned memory cannot be obtained, allocate 1 byte
to always return a non-NULL pointer.
2016-03-25 16:26:37 +01:00
Frank Denis
1f1d3f70b9
More Argon2 tests
2016-03-25 15:45:50 +01:00
Frank Denis
fb865c9a5c
More tests / lcov exclusions
2016-03-25 15:36:57 +01:00
Frank Denis
a25569320c
The version in Argon2i strings is separated from other parameters
2016-03-25 12:27:04 +01:00
Frank Denis
d91adb2cff
Avoid implicit sodium_malloc(0) in tests
2016-03-25 10:50:52 +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
346f8c131e
More tests
2016-03-24 22:16:52 +01:00
Frank Denis
71a548ac10
Additional tests for BLAKE2b
2016-03-24 21:57:33 +01:00
Frank Denis
caae5e85f3
C++ compat
2016-03-23 17:22:35 +01:00
Frank Denis
b483845eb5
Tests must use sodium_malloc() as much as possible
2016-03-23 16:23:40 +01:00
Frank Denis
cb150c2d3d
sizeof() -> constants
2016-03-23 15:55:45 +01:00
Frank Denis
2b79c12f93
Nits
2016-03-23 15:41:55 +01:00
Frank Denis
f137857e18
Add tests for the detached chacha20poly1305 API
2016-03-23 15:20:23 +01:00