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
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
ec6b86611f
More checks for sodium_add() (overlaps) and sodium_increment()
2015-12-06 19:06:27 +01:00
Frank Denis
27ce39ebbe
Add a test with a null message in box_easy()
2015-11-27 14:18:43 +01:00
Frank Denis
b482401b46
Add tests with null message in secretbox_easy.c
2015-11-27 14:13:21 +01:00
Frank Denis
ba6833cc16
Use sodium_malloc() for the secretbox_easy2 test
2015-11-27 12:30:13 +01:00
Frank Denis
2e5c94a34f
Use guarded memory for the box_easy2() test
...
+ non-deterministic buffer sizes
2015-11-27 12:13:58 +01:00
Frank Denis
4ec7fb481d
Remove generichash tests with invalid parameters
...
They must be reintroduced at some point, probably by overriding
the `abort` symbol.
2015-11-27 11:00:29 +01:00
Frank Denis
1c8e34577f
Less deterministic crypto_verify_*() tests
2015-11-25 14:10:36 +01:00
Frank Denis
d8b9b395a3
Mark everything as static in tests
2015-11-23 16:07:13 +01:00
Frank Denis
5e17a7adf8
Check that scalarmult() returns -1 with a point of small order
...
325606250916557431795983626356110631294008115727848805560023387167927233504
is a point of order 8
2015-11-17 11:07:37 +01:00
Frank Denis
2bc5874874
Check that the output of X25519 is not the all-zero value
...
Return -1 if this happens, and mark crypto_scalarmult() as warn_unused_result
Mark dependent functions with warn_unused_result as well
2015-11-17 11:07:33 +01:00
Frank Denis
9337ecfa60
Add tests for sodium_add(), more tests for sodium_increment() and is_zero()
2015-11-16 23:22:01 +01:00
Frank Denis
7561a25d5a
Add a is_zero() helper
2015-11-13 01:48:34 +01:00
Frank Denis
debed38314
Check a return value in the secretbox_easy2 test
2015-11-01 14:45:35 +01:00
Frank Denis
17bcbbbd45
Force functions whose result must be checked to be checked
2015-11-01 13:57:51 +01:00
Frank Denis
26fdfec99b
Add sodium_runtime_has_ssse3() and sodium_runtime_has_sse41()
2015-10-31 23:42:44 +01:00
Frank Denis
84695c8d42
Make sodium_compare() work on little-endian numbers as expected
2015-10-31 22:36:54 +01:00
Frank Denis
a1e4d3df3f
Add AES256-GCM tests for decryption of truncated ciphertext
2015-10-30 19:47:47 +01:00
Frank Denis
688e1c4742
C++ compat
2015-10-26 22:48:56 +01:00
Frank Denis
437ce023c9
Exercise ChaCha20 with different output sizes
2015-10-26 21:30:46 +01:00
Frank Denis
771e32bd18
CompCert compatibility
2015-10-26 16:59:28 +01:00
Frank Denis
4b1478cd5b
Extra sanity checks for blake2b_salt_personal()
2015-10-25 01:57:07 +02:00
Frank Denis
5d0236c25e
C++ compat
2015-10-21 17:42:22 +02:00
Frank Denis
143e1c1a14
Do not compile unused sections
2015-10-18 01:33:35 +02:00
Frank Denis
1cfa5ec6c1
Add Blake2b test vectors from the reference code
2015-10-18 00:55:10 +02:00
Frank Denis
f01c303631
Blake2b: refuse a NULL key with a length > 0
2015-10-18 00:27:03 +02:00
Frank Denis
eeb31af578
Let crypto_generichash_statebytes() return a size rounded to the alignment
...
Add similar check in the aead_aes256gcm test.
2015-10-18 00:16:05 +02:00
Frank Denis
a2c8ff5ccb
Visual Studio doesn't have %zu
2015-10-17 21:32:25 +02:00
Frank Denis
d667efde68
Add sodium_compare()
...
A constant-time version of memcmp(), useful to compare nonces and counters
in little-endian format, that plays well with sodium_increment().
Unlike sodium_memcmp() which can compare anything for equality,
sodium_compare() is designed to compare things that are comparable, byte by
byte. Therefore, the prototype is slightly different: its arguments are
supposed to be `const unsigned char *`.
The names sodium_memcmp() and sodium_compare() are slightly confusing.
But we're not going to rename sodium_memcmp(), and I cannot think of a
better name for sodium_compare() than sodium_compare().
2015-10-17 21:25:30 +02:00
Frank Denis
2aef671fd9
Indent
2015-10-17 21:10:52 +02:00
Frank Denis
bfed7b91b6
Explicit cast
2015-10-14 15:54:27 +02:00
Frank Denis
2ee2e86f80
Explicit cast
2015-10-14 11:29:38 +02:00
Frank Denis
f169623d4e
C++ compat
2015-10-12 14:44:00 +02:00
Frank Denis
84625742c6
More test vectors
2015-10-12 13:58:10 +02:00
Frank Denis
40ba7ea531
More test vectors
...
from http://www.ieee802.org/1/files/public/docs2011/bn-randall-test-vectors-0511-v1.pdf
2015-10-12 10:03:09 +02:00
Frank Denis
98550acafb
Add tests for the aes256gcm functions returning sizes
...
Which spotted a typo by the way.
2015-10-11 19:19:31 +02:00
Frank Denis
7082a3c8d1
Ignore the aes256gcm test if aes256gcm hasn't been compiled in
2015-10-11 19:14:29 +02:00
Frank Denis
20e384988c
Test for presence of new sodium_runtime_has_*() functions
2015-10-11 18:51:30 +02:00
Frank Denis
c8be336506
C++ compat
2015-10-11 14:35:32 +02:00
Frank Denis
aa965a580b
Expose only crypto_aead_aes256gcm_*() not crypto_aead_aes256gcm_aesni_*()
...
libsodium typically doesn't expose specific implementations.
It shouldn't be the case for that construction either, especially since
an ARM8 implementation might be added later.
We want a single interface for both.
2015-10-11 14:29:25 +02:00
Frank Denis
dadc5d9906
Add crypto_aead_aes256gcm_aesni_is_available()
2015-10-11 13:05:32 +02:00
Frank Denis
93295855cf
Add aes256gcm test vectors
2015-10-11 12:56:20 +02:00
Frank Denis
dca2131f45
C++ compat
2015-09-21 16:05:53 +02:00
Frank Denis
6be1ce3f34
scalarmult: add the exact test from the irtf-cfrg-curves draft
...
Use guarded memory by the way.
2015-09-21 15:45:32 +02:00