mbedtls/tests/suites
Janos Follath 05a708f7e2 Add negative tests for Curve25519
If we provide low order element as a public key and the implementation
maps the point in infinity to the origin, we can force the common secret
to be zero.

According to the standard (RFC 7748) this is allowed but in this case
the primitive must not be used in a protocol that requires contributory
behaviour.

Mbed Crypto returns an error when the result is the point in the
infinity and does not map it to the origin. This is safe even if used in
protocols that require contributory behaviour.

This commit adds test cases that verify that Mbed Crypto returns an
error when low order public keys are processed.

The low order elements in the test cases were taken from this website:
https://cr.yp.to/ecdh.html
2019-04-30 14:58:15 +01:00
..
helpers.function Write documentation for TEST_ASSERT 2019-02-15 10:13:35 -05:00
host_test.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
main_test.function psa: Initialize crypto in tests that need to 2019-02-13 07:34:54 -05:00
target_test.function Style fixes 2018-08-06 11:42:56 +01:00
test_suite_aes.cbc.data Split up largest test suite data files into smaller chunks 2013-04-08 18:09:51 +02:00
test_suite_aes.cfb.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_aes.ecb.data Split up largest test suite data files into smaller chunks 2013-04-08 18:09:51 +02:00
test_suite_aes.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_aes.ofb.data Add test cases for AES OFB block mode 2018-06-11 14:03:22 +01:00
test_suite_aes.rest.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_aes.xts.data tests: Remove NIST AES-XTS test vectors 2018-06-13 12:13:58 +01:00
test_suite_arc4.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_arc4.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_aria.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_aria.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_asn1write.data Add tests for (named) bitstring to suite_asn1write 2019-02-28 09:36:30 +00:00
test_suite_asn1write.function Add tests for (named) bitstring to suite_asn1write 2019-02-28 09:36:30 +00:00
test_suite_base64.data Add test for base64 output length 2015-09-30 16:31:10 +02:00
test_suite_base64.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_blowfish.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_blowfish.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_camellia.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_camellia.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_ccm.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_ccm.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_chacha20.data chacha20: add test for parameter validation 2018-05-24 13:37:31 +02:00
test_suite_chacha20.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_chachapoly.data chachapoly: add test for state flow 2018-05-24 13:37:31 +02:00
test_suite_chachapoly.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_cipher.aes.data Add AES-*-CBC test vectors for PSA-based cipher contexts 2018-11-22 16:33:01 +00:00
test_suite_cipher.arc4.data Add tests for "return plaintext data faster on unpadded decryption" 2018-03-27 19:25:35 -07:00
test_suite_cipher.blowfish.data Add tests for "return plaintext data faster on unpadded decryption" 2018-03-27 19:25:35 -07:00
test_suite_cipher.camellia.data Add tests for "return plaintext data faster on unpadded decryption" 2018-03-27 19:25:35 -07:00
test_suite_cipher.ccm.data Test PSA-based CCM cipher operations 2018-11-22 16:33:01 +00:00
test_suite_cipher.chacha20.data cipher: add stream test vectors for chacha20(poly1305) 2018-05-24 13:37:31 +02:00
test_suite_cipher.chachapoly.data Test PSA-based CCM cipher operations 2018-11-22 16:33:01 +00:00
test_suite_cipher.des.data Add tests for "return plaintext data faster on unpadded decryption" 2018-03-27 19:25:35 -07:00
test_suite_cipher.function Call mbedtls_cipher_free() to reset a cipher context 2019-04-16 16:06:34 +02:00
test_suite_cipher.gcm.data Add missing newline at the end of test_suite_cipher.gcm.data 2018-11-22 16:33:01 +00:00
test_suite_cipher.misc.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_cipher.nist_kw.data Add NIST keywrap as a cipher mode 2019-04-02 10:02:55 -07:00
test_suite_cipher.null.data Add tests for "return plaintext data faster on unpadded decryption" 2018-03-27 19:25:35 -07:00
test_suite_cipher.padding.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_cmac.data Extend test coverage of CMAC 2016-10-13 13:53:13 +01:00
test_suite_cmac.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_ctr_drbg.data Refactor test code for CTR DRBG to clarify test functions 2018-08-29 23:38:57 +03:00
test_suite_ctr_drbg.function test_suite_ctr_drbg: use ctr_drbg_update_ret instead of ctr_drbg_update 2019-02-01 02:53:16 -05:00
test_suite_des.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_des.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_dhm.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_dhm.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_ecdh.data ECDH: Add test vectors for Curve25519 2019-02-22 15:42:03 +00:00
test_suite_ecdh.function Add mbedtls_ecp_read_key 2019-02-22 15:39:03 +00:00
test_suite_ecdsa.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_ecdsa.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_ecjpake.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_ecjpake.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_ecp.data Add negative tests for Curve25519 2019-04-30 14:58:15 +01:00
test_suite_ecp.function Add test for ECP multiplication 2019-04-30 14:53:49 +01:00
test_suite_entropy.data Move flag indicating presence of strong entropy to test code 2017-07-24 15:31:30 +01:00
test_suite_entropy.function Fix typo in test_suite_entropy.function 2018-08-15 13:55:37 +01:00
test_suite_error.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_error.function Intermediate hexify out change 2018-08-06 11:40:57 +01:00
test_suite_gcm.aes128_de.data Fix test functions and data after moving hexify/unhexify out 2018-08-06 11:40:57 +01:00
test_suite_gcm.aes128_en.data fix for issue 1118: check if iv is zero in gcm. 2017-07-27 21:44:33 +01:00
test_suite_gcm.aes192_de.data Fix test functions and data after moving hexify/unhexify out 2018-08-06 11:40:57 +01:00
test_suite_gcm.aes192_en.data fix for issue 1118: check if iv is zero in gcm. 2017-07-27 21:44:33 +01:00
test_suite_gcm.aes256_de.data Fix test functions and data after moving hexify/unhexify out 2018-08-06 11:40:57 +01:00
test_suite_gcm.aes256_en.data fix for issue 1118: check if iv is zero in gcm. 2017-07-27 21:44:33 +01:00
test_suite_gcm.camellia.data Fix test functions and data after moving hexify/unhexify out 2018-08-06 11:40:57 +01:00
test_suite_gcm.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_gcm.misc.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_hkdf.data hkdf: Add negative tests 2018-06-11 13:10:14 +01:00
test_suite_hkdf.function Increase okm_hex buffer to contain null character 2019-01-28 15:18:15 +02:00
test_suite_hmac_drbg.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_hmac_drbg.misc.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_hmac_drbg.no_reseed.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_hmac_drbg.nopr.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_hmac_drbg.pr.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_md.data Allow comments in test data files 2017-10-06 11:58:50 +01:00
test_suite_md.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_mdx.data Allow comments in test data files 2017-10-06 11:58:50 +01:00
test_suite_mdx.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_memory_buffer_alloc.data Test corner case uses of memory_buffer_alloc.c 2018-01-23 19:37:44 +00:00
test_suite_memory_buffer_alloc.function Intermediate hexify out change 2018-08-06 11:40:57 +01:00
test_suite_mpi.data Merge remote-tracking branch 'origin/pr/2405' into development 2019-04-05 14:08:49 +01:00
test_suite_mpi.function Merge remote-tracking branch 'origin/pr/2405' into development 2019-04-05 14:08:49 +01:00
test_suite_nist_kw.data Enhance nist_kw with some NULL buffers tests 2018-08-13 14:46:45 +03:00
test_suite_nist_kw.function Fix #2370, minor typos and spelling mistakes 2019-01-24 10:37:40 +01:00
test_suite_oid.data Add certificate policy oid x509 extension 2019-04-16 13:26:54 +03:00
test_suite_oid.function Minor fixes in get certificate policies oid test 2019-04-16 13:26:54 +03:00
test_suite_pem.data Add negative testing for mbedtls_pem_read_buffer() 2017-05-30 16:54:23 +01:00
test_suite_pem.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_pk.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_pk.function psa: Initialize crypto in tests that need to 2019-02-13 07:34:54 -05:00
test_suite_pkcs1_v15.data Fix test data missing some fake-random input 2019-02-19 18:33:57 +01:00
test_suite_pkcs1_v15.function Add tests for RSA encrypt/decrypt with NULL for empty message 2019-02-19 18:33:57 +01:00
test_suite_pkcs1_v21.data Add tests for RSA encrypt/decrypt with NULL for empty message 2019-02-19 18:33:57 +01:00
test_suite_pkcs1_v21.function Add tests for RSA encrypt/decrypt with NULL for empty message 2019-02-19 18:33:57 +01:00
test_suite_pkcs5.data tests/pkcs5/pbkdf2_hmac: add unit tests for additional SHA algorithms 2018-02-08 17:18:19 +08:00
test_suite_pkcs5.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_pkparse.data Change test dependencies to RC4 from DES 2018-07-27 17:15:39 +01:00
test_suite_pkparse.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00
test_suite_pkwrite.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_pkwrite.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_poly1305.data poly1305: add test for parameter validation 2018-05-24 13:37:31 +02:00
test_suite_poly1305.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_psa_crypto_entropy.data Adjust psa entropy inject tests to take as minimum seed size 2018-11-21 16:24:53 +02:00
test_suite_psa_crypto_entropy.function Gate entropy injection through a dedicated configuration option 2019-03-15 11:15:21 +01:00
test_suite_psa_crypto_hash.data Update hash tests documentation 2018-11-05 18:36:05 +02:00
test_suite_psa_crypto_hash.function New function psa_hash_clone 2019-01-19 12:03:41 +01:00
test_suite_psa_crypto_init.data Create the NV seed file for the tests if needed 2018-11-23 22:58:40 +01:00
test_suite_psa_crypto_init.function Move MIN and MAX macros from PSA tests to helpers.function 2018-12-20 18:47:53 +01:00
test_suite_psa_crypto_metadata.data Add a hash wildcard value for hash-and-sign algorithm 2019-01-14 19:38:56 +01:00
test_suite_psa_crypto_metadata.function Add a hash wildcard value for hash-and-sign algorithm 2019-01-14 19:38:56 +01:00
test_suite_psa_crypto_persistent_key.data Support ITS over file in PSA crypto 2019-03-15 11:14:37 +01:00
test_suite_psa_crypto_persistent_key.function Remove psa_crypto_storage_backend.h 2019-03-15 11:15:04 +01:00
test_suite_psa_crypto_slot_management.data Replace PSA error code definitions with the ones defined in PSA spec 2019-02-18 13:53:13 +02:00
test_suite_psa_crypto_slot_management.function Replace PSA error code definitions with the ones defined in PSA spec 2019-02-18 13:53:13 +02:00
test_suite_psa_crypto.data Merge pull request #58 from Patater/disallow-invalid-context 2019-02-21 17:37:04 +00:00
test_suite_psa_crypto.function Test abort after failed setup 2019-02-26 11:29:17 +01:00
test_suite_psa_its.data Fix copypasta in test data 2019-03-15 11:37:09 +01:00
test_suite_psa_its.function Tests for PSA ITS over stdio files 2019-03-15 11:14:35 +01:00
test_suite_rsa.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_rsa.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_shax.data Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_shax.function Merge development commit 8e76332 into development-psa 2019-01-31 08:20:20 -05:00
test_suite_timing.data Reduce the timing tests complexity 2019-01-29 10:19:49 +01:00
test_suite_timing.function Correct code formatting in the timing test suites 2019-02-05 09:22:20 +01:00
test_suite_version.data Update library version to 2.17.0 2019-03-19 16:12:55 +00:00
test_suite_version.function Intermediate hexify out change 2018-08-06 11:40:57 +01:00
test_suite_xtea.data The Great Renaming 2015-04-08 13:25:31 +02:00
test_suite_xtea.function Rename HexParam_t -> data_t for consistent coding style 2018-08-06 11:42:06 +01:00