Commit graph

9674 commits

Author SHA1 Message Date
Janos Follath c19b0de75b Change CI job to development 2019-08-23 10:59:19 +01:00
Janos Follath 14d7c562e1 Update submodule to a version with Everest 2019-08-23 09:57:02 +01:00
Janos Follath b70ace4a5e Use 3rdparty headers from the submodule 2019-08-23 09:57:02 +01:00
Gilles Peskine c3c04b7407 Add Everest components to all.sh
Test a native build and a 32-bit build. For variety, the native build
is with CMake and clang, and the 32-bit build is with GNU make and
gcc.
2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger ea88872325 3rdparty: Add config checks for Everest 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger bd77f01651 Fix macros in benchmark.c
#2124 may suffer from the same problem.
2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger e308cddd77 Update generated files 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger f41571f30a 3rdparty: Fix inclusion order of CMakeLists.txt
This is so that third-party modules pick up the INSTALL_MBEDTLS_HEADERS variable.
2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 04014be577 Fix trailing whitespace 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 74dc009b23 ECDH: Fix inclusion of platform.h for proper use of MBEDTLS_ERR_PLATFORM_FEATURE_UNSUPPORTED 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 479c57723b ECDH: Fix use of ECDH API in full handshake benchmark 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 1d03d902bb ECDH: Removed unnecessary calls to mbedtls_ecp_group_load in ECDH benchmark 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 46e76db8a5 ECDH: Fix Everest x25519 make_public 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 75fa3c824f Fix file permissions 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger fc0246f3f4 3rdparty: Rename THIRDPARTY_OBJECTS 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 0be8e738be 3rdparty: Update description of MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger d731f64235 3rdparty: Fix Makefile coding conventions 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 840f9530bc ECDSA: Refactor return value checks for mbedtls_ecdsa_can_do 2019-08-23 09:57:02 +01:00
Gilles Peskine 1d9b2832de Add a changelog entry for Everest ECDH (X25519) 2019-08-23 09:57:02 +01:00
Gilles Peskine 92a925c0bc Document that curve lists can include partially-supported curves
Document that a curve returned by mbedtls_ecp_curve_list() or
mbedtls_ecp_grp_id_list() may lack support for ECDH or ECDSA.

Add a corresponding changelog entry, under "API Changes" because we
have changed the behavior: formerly, these functions skipped ECDH-only
curves, although this was not documented.
2019-08-23 09:57:02 +01:00
Gilles Peskine da510dfa08 Add mbedtls_ecdh_can_do
All curves can currently do ECDH, but to make the API symmetric and
future-proof, add mbedtls_ecdh_can_do() to go with mbedtls_ecdsa_can_do().
2019-08-23 09:57:02 +01:00
Gilles Peskine 3bf192686b Fix build with gcc -Wshadow 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 711eba154f ECDH: Make benchmarks check MBEDTLS_ERR_PLATFORM_FEATURE_UNSUPPORTED 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 12e9241a38 3rdparty: Add additional build facilities for 3rd-party code 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger cb6c82bf81 config.h: Silence missing documentation warning 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 8914f01511 ECDH: Disable Everest by default 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 610763d807 ECDH: Fix file permission problem 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 6737f20157 ECDSA: Add mbedtls_ecdsa_can_do 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 5b66622164 ECDH: Exclude FStar and Hacl* from exported symbol checks 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 13e2bd77a3 Fix preprocessor directive recognition in list-enum-consts.pl 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 652d909284 Add new 3rdparty build scripts 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 3b8327b42a ECDH: Everest: Remove unnecessary file 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger cade42238c ECDH: Fix error checks in benchmark.c 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 853218d93f ECDH: Use LOCAL_CFLAGS instead of CFLAGS 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger b22fd9bb29 ECDH: Fix whitespace and doxygen comment 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger dcb9b6c007 ECDH: Add Everest Curve25519 to VS project files
This being the first 3rdparty-contribution, we may want to consider the
structure of the project file generation scripts. Perhaps add small,
constribution-specific scripts to each directory in 3rdparty instead of adding
all constraints to generate_visualc_files.pl?
2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 5a1e3f7af8 ECDH: Improve ECDH full handshake benchmark 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger d14995b0f3 ECDH: Rename full handshake benchmark 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 0d3888af4c ECDH: Add #ifdef filter to tests/scripts/list-enum-consts.pl
This allows the use of #ifdef ... #endif in enum definitions (e.g.,
mbedtls_ecdh_variant in ecdh.h).
2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger f5e9d71b28 ECDH: Add new (non-legacy) ECDH benchmark 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger cd5380abd5 ECDH: Include Everest Curve25519 in build scripts 2019-08-23 09:57:02 +01:00
Christoph M. Wintersteiger 20788e584d ECDH: Add Everest Curve25519 config.h option 2019-08-23 09:57:02 +01:00
Jaeden Amero 9ed851d27f Merge remote-tracking branch 'origin/pr/2767' into development
* origin/pr/2767:
  Rename local variables
  Update submodule
  Update Visual studio project file
  Move the examples to PSA 1.0
  Use psa_raw_key_agreement
  Remove calls to psa_allocate_key
  Make variable naming consistent
  Update psa_create_key to PSA 1.0
  Update psa_import_key to PSA 1.0
  Update psa_generator_abort to PSA 1.0
  Update psa_generator_read to PSA 1.0
  Update psa_crypto_generator_t to PSA 1.0
  Update psa_key_agreement to PSA 1.0
  Update GENERATOR_INIT macro to PSA 1.0
  Update KEYPAIR macros to PSA 1.0
2019-08-20 09:45:38 +01:00
Janos Follath da6ac01963 Rename local variables 2019-08-16 13:47:29 +01:00
Janos Follath edf6d5a025 Update submodule 2019-08-16 13:37:32 +01:00
Janos Follath 8e65c50202 Update Visual studio project file
Updating the submodule resulted in new header and source files, we need
to update the shipped project files too.
2019-08-16 13:37:32 +01:00
Janos Follath be4efc2b38 Move the examples to PSA 1.0 2019-08-16 13:37:32 +01:00
Janos Follath df3b0892ce Use psa_raw_key_agreement
In PSA 1.0 raw key agreement has been moved from
psa_key_derivation_key_agreement() to its own separate function call,
called psa_raw_key_agreement().
2019-08-16 13:37:32 +01:00
Janos Follath 1239d70870 Remove calls to psa_allocate_key
In PSA 1.0 keys are allocated implicitly by other functions
(like psa_import_key) and psa_allocate_key is not needed and does not
exist anymore.
2019-08-16 13:37:32 +01:00
Janos Follath 53b8ec27a2 Make variable naming consistent 2019-08-16 13:37:32 +01:00