Nir Sonnenschein
ce266e4ca2
use single define for 128bit key for ctr_drbg and update test dependencies
...
the change is designed to make configuring 128bit keys for ctr_drbg more similar to other configuration options. Tests have been updated accordingly.
also clarified test naming.
2018-08-29 10:11:46 +03:00
Nir Sonnenschein
aecf8c941a
adding more ctr_drbg test vectors (CAVP 14.3)
...
addtional test vectors add tests for both AES-256
and AES-128 variants of ctr_drbg
2018-08-21 18:05:13 +03:00
Gilles Peskine
e4b77b9639
ctr_drbg: add a few test vectors from CAVP 14.3
...
These test vectors are from
https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Algorithm-Validation-Program/documents/drbg/drbgtestvectors.zip
2018-08-21 18:05:08 +03:00
Gilles Peskine
cfc1de766b
ctr_drbg: sample vectors from NIST
...
Test vectors from
https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Standards-and-Guidelines/documents/examples/CTR_DRBG_withDF.pdf
2018-08-21 18:05:02 +03:00
Gilles Peskine
5ef5a9aeb4
ctr_drbg tests: unify validate functions
...
Unify the three existing validation functions (with prediction
resistance, with manual reseeding between generations, and with no
reseeding) into a single function that supports these three scenarios
plus a fourth one (reseed before the first generation).
The four supported scenarios cover the three scenarios from the
current CAVP test vectors (no reseed, reseed before generating,
prediction resistance) plus a fourth scenario used by the existing
test vectors (reseed after generating).
(cherry picked from commit cee9bedee6bc1a8e2b22fa8a31647b62ebb8a0a4)
2018-08-21 18:04:45 +03:00
Gilles Peskine
4c78665ccd
ctr_drbg tests: new validation function that doesn't reseed
...
This is one of the test scenarios from the CAVP test vectors.
2018-08-21 18:03:31 +03:00
Gilles Peskine
ef0624f791
ctr_drbg tests: make input sizes flexible
...
The ctr_drbg_validate_xxx test functions had hard-coded sizes for the
entropy and the output size. Generalize the sizes.
Keep track of the current entropy size.
Unhexify the expected output and compare with the actual output,
rather than hexifying the actual output and comparing the hex.
2018-08-21 18:02:03 +03:00
Gilles Peskine
ed7da59798
ctr_drbg: add comments relating the code with the NIST specification
2018-08-21 17:55:46 +03:00
Nir Sonnenschein
954f9879e9
change warning about 128bit keys to print
...
change was made because an actual warning may break CI or
customers that compile using warnings as errors.
2018-08-21 17:53:49 +03:00
Nir Sonnenschein
eb73f7ab6f
fix trailing white spaces
2018-08-21 17:53:43 +03:00
Nir Sonnenschein
04354b0796
add ChangeLog entry
2018-08-21 17:53:38 +03:00
Nir Sonnenschein
c9547cc23b
add NIST test vector for 128 bit keys (not passing yet).
2018-08-21 17:53:25 +03:00
Nir Sonnenschein
604e60d915
add default value for CTR DRBG key size
2018-08-21 17:19:12 +03:00
Nir Sonnenschein
a4588d4927
enable the use of variable size keys in ctr_drbg (was hard-coded 256bit before)
2018-08-21 17:19:04 +03:00
Jaeden Amero
d22c1b2445
Merge remote-tracking branch 'upstream-public/pr/1932' into development
...
Resolve conflicts in programs/ssl/ssl_mail_client.c. PR #930 already had
the fix, but not the comment. PR #1932 then just adds a comment about the
fix.
2018-08-21 12:58:23 +01:00
Jaeden Amero
141e767fa9
Merge remote-tracking branch 'upstream-public/pr/1942' into development
...
Resolve conflicts in ChangeLog
2018-08-17 14:26:51 +01:00
Jaeden Amero
6fba8104e2
Merge remote-tracking branch 'upstream-public/pr/1938' into development
2018-08-17 14:23:00 +01:00
Jaeden Amero
aa9f3fd6b1
Merge remote-tracking branch 'upstream-public/pr/930' into development
2018-08-16 15:29:58 +01:00
Mohammad Azim Khan
2c069dfad3
Fix typo in test_suite_entropy.function
2018-08-15 13:55:37 +01:00
Hanno Becker
9dc3be7601
Improve wording in ChangeLog
2018-08-14 15:22:05 +01:00
Mohammad Azim Khan
9ebdcffef4
Fix Wformat-overflow warning in ssl_mail_client.c
...
sprintf( (char *) buf, "%s\r\n", base );
Above code generates Wformat-overflow warning since both buf and base
are of same size. buf should be sizeof( base ) + characters added in
the format. In this case format 2 bytes for "\r\n".
2018-08-14 11:02:23 +01:00
Hanno Becker
361f254eab
Adapt ChangeLog
2018-08-13 16:36:58 +01:00
Hanno Becker
7864090ec1
Reset session_in/out pointers in ssl_session_reset_int()
...
Fixes #1941 .
2018-08-13 16:35:15 +01:00
Ron Eldor
d1a4762adb
Use mbedtls_printf instead of printf
...
Replace usages of `printf()` with `mbedtls_printf()` in `aria.c`
which were accidently merged. Fixes #1908
2018-08-13 13:49:52 +03:00
Jaeden Amero
d8f41698d2
Merge remote-tracking branch 'upstream-public/pr/1598' into development
...
Add a Changelog entry
2018-08-10 11:23:15 +01:00
Jaeden Amero
03bd4847b3
Merge remote-tracking branch 'upstream-public/pr/1861' into development
...
Add Changelog entry
2018-08-10 11:17:14 +01:00
Jaeden Amero
cac0c1a250
Merge remote-tracking branch 'upstream-public/pr/1378' into development
2018-08-10 10:59:53 +01:00
Jaeden Amero
603aee0c46
Merge remote-tracking branch 'upstream-public/pr/1816' into development
2018-08-10 10:56:48 +01:00
Jaeden Amero
372b50b252
Add a ChangeLog entry for #1816
2018-08-10 10:56:31 +01:00
Jaeden Amero
f48163a960
Merge remote-tracking branch 'upstream-public/pr/1834' into development
2018-08-10 10:49:10 +01:00
Mohammad Azim Khan
58e9c1833b
Fix Wformat-overflow warning in ssl_mail_client.c
...
sprintf( (char *) buf, "%s\r\n", base );
Above code generates Wformat-overflow warning since both buf and base
are of same size. buf should be sizeof( base ) + characters added in
the format. In this case format 2 bytes for "\r\n".
2018-08-06 12:02:02 +01:00
Mohammad Azim Khan
5cb7017077
Less obscure test suites template
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
d2d0112ca8
Style fixes
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
440d8737c6
Fix macro validation regex
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
ee6529eb83
Add generate_test_code.py unit tests in all.sh
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
21798105f6
Pylint tests in all.sh
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
539aa06f64
Fix Python 2 & 3 compatibility in test_generate_test_code.py
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
32cbcdac8f
Fix Pylint errors in Python scripts
2018-08-06 11:42:56 +01:00
Azim Khan
630281349e
Replaced escaped_split() logic with regex
2018-08-06 11:42:56 +01:00
Azim Khan
fcdf685302
Make test function parsing robust
...
This commit enhances parsing of the test function in generate_test_code.py for
cases where return type and function name are on separate lines.
2018-08-06 11:42:56 +01:00
Azim Khan
4084ec7ae5
Fixed unit tests in test_generate_test_code.py
2018-08-06 11:42:56 +01:00
Azim Khan
8d686bfdb1
Incorporated code revoew comments.
2018-08-06 11:42:56 +01:00
Azim Khan
b31aa44e16
Fix style errors reported by pylint
2018-08-06 11:42:56 +01:00
Azim Khan
aee05bbe70
Add test suite framework summary
2018-08-06 11:42:56 +01:00
Azim Khan
63ab501aa7
Fix generate_test_code.py argument --helpers-file in CMakeLists.txt
2018-08-06 11:42:56 +01:00
Azim Khan
27a35e7712
Wildcard possible targets and document
...
Test application names and function file names can be constructed
based on the followed naming convention. This commit documents the
naming convention and removes explicit listing of the test
executables and the lookup table for finding .function file.
2018-08-06 11:42:56 +01:00
Azim Khan
5fcca46a3a
Rename HexParam_t -> data_t for consistent coding style
2018-08-06 11:42:06 +01:00
Azim Khan
62a5d7d65a
Document status/error codes in helper.function
2018-08-06 11:42:06 +01:00
Azim Khan
951a2c8898
Improve documentation in mbedtls_test.py
2018-08-06 11:42:06 +01:00
Azim Khan
e3b26af7c0
Improve documentation in generate_test_code.py
2018-08-06 11:42:06 +01:00