Frank Denis
99fe302562
Make things more explicit
2017-12-16 13:12:07 +01:00
Frank Denis
b6dab1029d
Sort
2017-12-16 13:08:55 +01:00
Frank Denis
31b13ada14
+ #include <limits.h>
2017-12-16 13:08:34 +01:00
Frank Denis
18d5940bc6
Use a simple memory pool for benchmarks
...
In the test suite, a significant amount of time is spent in memory
allocations. A memory pool helps achieve more relevant results with
less iterations.
2017-12-16 13:07:15 +01:00
Frank Denis
ac8dffbecb
Return -1 if the scalar is 0 in crypto_scalarmult_ed25519()
...
For consistency with _base()
2017-12-12 14:35:08 +01:00
Frank Denis
21c1a3160c
Remove tests for deprecated functions
2017-12-11 23:22:34 +01:00
Frank Denis
cf59e049e7
Check reduced-round salsa variants in non-minimal mode
2017-12-11 20:11:27 +01:00
Frank Denis
bdca518edc
Remove incorrect and useless cast
2017-12-11 19:54:10 +01:00
Frank Denis
99fa31a595
More tests
2017-12-06 14:08:00 +00:00
Frank Denis
609e42be75
One more test
2017-12-06 13:53:22 +00:00
Frank Denis
43fa5ecc49
Add some tests for reduced-rounds salsa20
2017-12-06 13:38:46 +00:00
Frank Denis
0b6370dd0a
Always undef NDEBUG in tests
2017-12-06 12:17:57 +00:00
Frank Denis
625e313e74
Avoid an expression in a assert() with side effects
2017-12-06 12:16:37 +00:00
Frank Denis
e89c43edf6
secretstream: add a test for rekeying using TAG_REKEY
2017-12-06 11:45:47 +00:00
Frank Denis
22b65dc57c
Add a call to sodium_stackzero()
2017-12-05 17:49:58 +00:00
Frank Denis
01072a2f6a
More tests
2017-12-03 21:16:46 +01:00
Frank Denis
cdd7d5f37d
Add explicit cast
2017-12-03 21:02:17 +01:00
Frank Denis
8ad6ffa9d6
More tests
2017-12-03 20:56:17 +01:00
Frank Denis
b6262d982f
Don't even try to compile non-minimal code
2017-12-03 16:55:46 +01:00
Frank Denis
139cadc76d
Skip tests 13&14 in minimal mode
2017-12-03 16:49:55 +01:00
Frank Denis
99fe9eb67f
More misuse tests
2017-12-03 16:39:05 +01:00
Frank Denis
229dac07ee
casts
2017-12-01 17:29:29 +01:00
Frank Denis
217a9330a4
More tests
2017-12-01 17:21:59 +01:00
Frank Denis
84047b703a
More tests
2017-12-01 17:04:09 +01:00
Frank Denis
e44614505b
Casts
2017-12-01 16:32:25 +01:00
Frank Denis
218dac349a
Fix format string sign
2017-12-01 15:24:48 +01:00
Frank Denis
46e2a46490
secretstream test: provide additional data to lift ambiguity on what is being tested
...
Spotted by @emilbayes - Thanks!
2017-11-26 22:02:26 +01:00
Frank Denis
ee2403deba
Check for RDRAND presence
2017-11-25 17:53:33 +01:00
Frank Denis
c190574cee
x25519-ref10: reject low order points before the multiplication
2017-11-17 10:47:00 +01:00
Frank Denis
fc10e78580
Add a test for constants
2017-11-15 16:58:31 +01:00
Frank Denis
a60d877327
Add a test for crypto_scalarmult_ed25519
2017-11-15 16:57:29 +01:00
Frank Denis
7653df070c
Keep only the second test
2017-11-15 16:15:25 +01:00
Frank Denis
222ab9857c
Check that add/sub don't enforce the canonical form
2017-11-15 15:31:01 +01:00
Frank Denis
4fe7f88063
Re-merge previous test; add the correct prime
2017-11-15 15:26:41 +01:00
Frank Denis
d8c36842eb
Remove a test that doesn't make sense
2017-11-15 01:59:43 +01:00
Frank Denis
97e6f73230
Add a pretty obvious assertion
2017-11-15 01:48:28 +01:00
Frank Denis
3d8889560e
Export constants
2017-11-15 01:47:54 +01:00
Frank Denis
1e06b32f45
Add a couple more tests for ed25519_is_valid_point()
2017-11-15 01:44:55 +01:00
Frank Denis
63f7727a74
C++ compat
2017-11-15 01:37:33 +01:00
Frank Denis
1df2285362
Add a preliminary test for core_ed25519
2017-11-15 01:34:43 +01:00
Frank Denis
7e75ad4ca9
Remove unused var
2017-10-23 23:43:19 +02:00
Frank Denis
f54c6db981
sign_keygen(): don't hash the secret scalar in non-deterministic mode
2017-10-11 21:27:48 +02:00
Frank Denis
0dd8338b83
Add a compile-time switch to create non-deterministic signatures
2017-10-06 15:35:07 +02:00
Frank Denis
2a367074fe
Add actual performance API emulation for old browsers
2017-10-05 07:52:33 +02:00
Frank Denis
e784a3fb40
Add no-ops for very old browsers without the performance API
2017-10-05 01:46:02 +02:00
Frank Denis
37d9f09f5b
Round duration
2017-10-05 00:20:55 +02:00
Frank Denis
752c1fff2d
emscripten template: make the module global
2017-10-05 00:16:37 +02:00
Frank Denis
cc8cd391c9
Fix emscripten template
2017-10-05 00:11:40 +02:00
Frank Denis
93e39760b9
Wasm: add basic benchmark
...
Not really fair yet since the script isn't preloaded
2017-10-05 00:02:37 +02:00
Frank Denis
f0daa92f50
Remove index-wasm.html.tpl
2017-10-04 23:52:39 +02:00
Frank Denis
6a0e144899
Use less memory for the pwhash tests
2017-10-04 22:52:11 +02:00
Frank Denis
d3e20869af
crypto_pwhash_ALG_DEFAULT is now Argon2id
2017-10-01 12:12:13 +02:00
Frank Denis
2f51ed3397
Rename the test/pwhash.c -> test/pwhash_argon2i.c
2017-10-01 11:09:55 +02:00
Frank Denis
d49d7e8d4f
pwhash: don't enforce the same limits for argon2i and argon2id
...
Fixes #606
Also, keep enforcing a minimum number of iterations to create argon2i
hashes, but relax that restriction for verification, as it can be
useful to migrate from hashes made using other libraries.
2017-10-01 11:02:46 +02:00
Frank Denis
2542367c2d
secretstream: set the initial counter to 1
...
Avoids using the first block for two different purposes, and will be more
consistent with the AES-based version.
This breaks backwards compatibility, but better do it now that most distro are
still shipping < 1.0.14, that no applications seem to be already using that new
API, and that there will be an update to the library major due to the aes128ctr
removal.
2017-10-01 10:08:04 +02:00
Frank Denis
3e0b4dec6e
Add sodium_base64_encoded_len()
2017-09-21 11:25:09 +02:00
Frank Denis
18f0fff89e
More tests: verify that they key gets updated after the counter wraps
2017-09-20 17:10:10 +02:00
Frank Denis
ee1d5c96d8
Move the codecs tests to their own test file
2017-09-19 22:51:05 +02:00
Frank Denis
558355e566
Check if SIGABRT can be trapped multiple times in a row
2017-09-19 22:33:09 +02:00
Frank Denis
8ee67b1dd7
More tests
2017-09-19 22:19:50 +02:00
Frank Denis
1f72dec89d
More tests
2017-09-19 22:17:10 +02:00
Frank Denis
41dc933226
More tests
2017-09-19 22:08:31 +02:00
Frank Denis
aec433cecc
Additional check
2017-09-19 20:04:57 +02:00
Frank Denis
7423408cd3
Make the behavior of hex2bin() consistent with base642bin()
...
Return -1 on incomplete sequences and on complete sequences
with trailing, non-ignored characters if no pointers to store the
last parsed byte has been provided
2017-09-19 18:45:23 +02:00
Frank Denis
00660d79b9
secretstream test: don't pull twice if we don't test with AD
2017-09-19 17:32:15 +02:00
Frank Denis
3c8a7f17f0
Add tests for short, invalid unpadded base64 strings
2017-09-19 16:59:18 +02:00
Frank Denis
9209e89d96
More tests
2017-09-19 00:34:26 +02:00
Frank Denis
31e9a5541d
More tests
2017-09-18 23:57:29 +02:00
Frank Denis
525c21ed10
Tests
2017-09-18 23:29:58 +02:00
Frank Denis
1875980d33
More tests
2017-09-18 23:18:46 +02:00
Frank Denis
5b9680ead6
More tests
2017-09-18 23:13:50 +02:00
Frank Denis
e878bc141b
More keygen tests
2017-09-17 23:13:38 +02:00
Frank Denis
f244f658d6
int -> size_t
2017-09-17 23:13:27 +02:00
Frank Denis
9c53da4a6d
metamorphic tests for HMAC
2017-09-17 21:55:29 +02:00
Frank Denis
bd69a3083a
metamorphic tests for onetimeauth
2017-09-17 21:48:16 +02:00
Frank Denis
a7b75a2d7d
+ simple metamorphic tests for crypto_generichash()
...
This needs to be extended to other APIs with a streaming interface
2017-09-17 21:41:32 +02:00
Frank Denis
bfab44aa40
initbytes -> headerbytes for clarity
2017-09-16 23:21:28 +02:00
Frank Denis
ca43a12683
Old tcc versions miscompile while (++in[x])
...
So, let's just keep things readable, even for compilers.
2017-09-15 12:58:47 +02:00
Frank Denis
10edd16b40
Modernize the core3 test
2017-09-15 12:39:18 +02:00
Frank Denis
c6aa04108e
Move #ifdef up
2017-09-15 10:19:34 +02:00
Frank Denis
4aba976d5f
Explicit casts
2017-09-15 01:00:43 +02:00
Frank Denis
15ee95c64c
Remove unused var
2017-09-15 00:57:44 +02:00
Frank Denis
70f66c9a6d
Check for avx/avx2/avx512f linkage
2017-09-14 00:05:37 +02:00
Frank Denis
390f865e35
Add tests for scrypt rehash
2017-09-13 18:47:55 +02:00
Frank Denis
2a2b85eeea
Add tests for crypto_pwhash_str_needs_rehash()
2017-09-13 18:40:14 +02:00
Frank Denis
979b21d67b
Remove extra semicolumns
2017-09-13 12:45:04 +02:00
Frank Denis
0af31aeb26
Fill the max output buffer size in sodium_bin2base64()
...
Unlike hex encoding, due to optional padding, computing the correct size is
not straightforward. Ensuring that the string ends with `\0` is fine, but
if the size is not exact, some unrelated data might be send around by the
application. So, zero it to be safe.
2017-08-31 19:32:14 +02:00
Frank Denis
fd4478288e
Test sodium_pad() with a NULL pointer
2017-08-25 15:24:46 +02:00
Frank Denis
f8e535a446
messagesbytes -> messagebytes
2017-08-25 15:12:35 +02:00
Frank Denis
aa20d2e86e
Add secretstream constants
2017-08-25 14:51:02 +02:00
Frank Denis
4c93d0391c
C++ compat
2017-08-17 23:27:20 +02:00
Frank Denis
0850e55808
Check that a zero blocksize returns -1
2017-08-17 21:00:02 +02:00
Frank Denis
a27c18d0e8
No need for two buffers in the padding test
2017-08-17 20:58:14 +02:00
Frank Denis
d5574a69fa
Complete sodium_pad/unpad() and add a couple tests
2017-08-17 20:54:20 +02:00
Frank Denis
6e8e0a93f9
Add a couple tests for crypto_secretstream_*()
2017-08-16 14:53:54 +02:00
Frank Denis
265bdcfe07
bin2hex & bin2base64: return a null size on error
...
This might prevent applications that don't properly check return codes
from reusing previous data.
2017-08-09 22:41:20 +02:00
Frank Denis
a6480aec44
b64 test: intentionally overestimate sizes
...
overflows will be caught by the guard page, if any
2017-08-09 18:03:56 +02:00
Frank Denis
74fd8fd1ce
C++ compat
2017-08-09 16:08:03 +02:00
Frank Denis
cdbb43f444
base64 tests
2017-08-09 15:56:58 +02:00
Frank Denis
8f0953b31f
Merge branch 'master' of github.com:jedisct1/libsodium
...
* 'master' of github.com:jedisct1/libsodium:
Bench: don't tie the printed result to the number of iterations
Make the number of iterations configurable; reduce the default
Add an interesting test case for a custom randombytes_uniform implementation
Add a benchmark mode
randombytes test: restore the salsa20-based rng at the end, for benchmarks
Indent
2017-08-05 20:58:23 +02:00