Janos Follath
31465c6c1f
Update submodule
2019-08-29 16:12:38 +01:00
Janos Follath
4f055f4ca2
Use 3rdparty headers from the submodule
2019-08-29 16:12:38 +01:00
Gilles Peskine
0c6b79979c
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-29 16:12:38 +01:00
Christoph M. Wintersteiger
9c1b56b43a
3rdparty: Add config checks for Everest
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
9e8076ffdc
Fix macros in benchmark.c
...
#2124 may suffer from the same problem.
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
3669c80a90
Update generated files
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
015f55b558
3rdparty: Fix inclusion order of CMakeLists.txt
...
This is so that third-party modules pick up the INSTALL_MBEDTLS_HEADERS variable.
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
12f359f7da
Fix trailing whitespace
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
cc91fe2667
ECDH: Fix inclusion of platform.h for proper use of MBEDTLS_ERR_PLATFORM_FEATURE_UNSUPPORTED
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
5d536cd814
ECDH: Fix use of ECDH API in full handshake benchmark
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
1a2d9f7f41
ECDH: Removed unnecessary calls to mbedtls_ecp_group_load in ECDH benchmark
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
ed5f3f063f
ECDH: Fix Everest x25519 make_public
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
e1dfc9884a
Fix file permissions
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
54d09ad0df
3rdparty: Rename THIRDPARTY_OBJECTS
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
50d9f095ec
3rdparty: Update description of MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
37eb90617a
3rdparty: Fix Makefile coding conventions
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
8cd4fba777
ECDSA: Refactor return value checks for mbedtls_ecdsa_can_do
2019-08-29 16:12:38 +01:00
Gilles Peskine
0a92cc1f5c
Add a changelog entry for Everest ECDH (X25519)
2019-08-29 16:12:38 +01:00
Gilles Peskine
7e65c05bb0
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-29 16:12:38 +01:00
Gilles Peskine
c6c7c49fd6
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-29 16:12:38 +01:00
Gilles Peskine
b14c4a533d
Fix build with gcc -Wshadow
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
21411d2b79
ECDH: Make benchmarks check MBEDTLS_ERR_PLATFORM_FEATURE_UNSUPPORTED
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
655ddababa
3rdparty: Add additional build facilities for 3rd-party code
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
181f284e39
config.h: Silence missing documentation warning
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
6cddd30beb
ECDH: Disable Everest by default
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
b33e811f2d
ECDH: Fix file permission problem
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
6a1a9e468d
ECDSA: Add mbedtls_ecdsa_can_do
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
9b33e7d7d7
ECDH: Exclude FStar and Hacl* from exported symbol checks
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
346932a099
Fix preprocessor directive recognition in list-enum-consts.pl
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
89f36aeb2a
Add new 3rdparty build scripts
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
e14c779615
ECDH: Everest: Remove unnecessary file
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
3dca1a405a
ECDH: Fix error checks in benchmark.c
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
f4bee2fbf7
ECDH: Use LOCAL_CFLAGS instead of CFLAGS
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
e50b9704d0
ECDH: Fix whitespace and doxygen comment
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
c14dd845ad
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-29 16:12:38 +01:00
Christoph M. Wintersteiger
b4e63a14d9
ECDH: Improve ECDH full handshake benchmark
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
0b93102415
ECDH: Rename full handshake benchmark
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
e0e8eb3114
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-29 16:12:38 +01:00
Christoph M. Wintersteiger
0bc9c693ce
ECDH: Add new (non-legacy) ECDH benchmark
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
977d89ab29
ECDH: Include Everest Curve25519 in build scripts
2019-08-29 16:12:38 +01:00
Christoph M. Wintersteiger
02b8048846
ECDH: Add Everest Curve25519 config.h option
2019-08-29 16:12:38 +01:00
Jaeden Amero
f0716542c4
Merge pull request #140 from yanesca/everest_integration
...
Everest integration
2019-08-29 16:02:49 +01:00
Jaeden Amero
64f264332f
Merge remote-tracking branch 'origin/development' into development-restricted
...
* origin/development:
Update the crypto submodule
Use multipart PSA key derivation API
platform: Include stdarg.h where needed
Update Mbed Crypto to contain mbed-crypto#152
CMake: Add a subdirectory build regression test
README: Enable builds as a CMake subproject
ChangeLog: Enable builds as a CMake subproject
Remove use of CMAKE_SOURCE_DIR
Update library version to 2.18.0
2019-08-29 14:14:05 +01:00
Jaeden Amero
98d5685b70
Merge pull request #232 from Patater/psa-crypto-api-1.0b3
...
Make fixes related to using Mbed Crypto as a service
2019-08-29 13:50:10 +01:00
Jaeden Amero
3ec504738e
Merge remote-tracking branch 'origin/pr/2807' into development
...
* origin/pr/2807:
platform: Include stdarg.h where needed
Update Mbed Crypto to contain mbed-crypto#152
CMake: Add a subdirectory build regression test
README: Enable builds as a CMake subproject
ChangeLog: Enable builds as a CMake subproject
Remove use of CMAKE_SOURCE_DIR
Update library version to 2.18.0
2019-08-29 12:24:47 +01:00
Jaeden Amero
cfc9c8cdb8
Merge remote-tracking branch 'origin/pr/2798' into development
...
* origin/pr/2798:
Update the crypto submodule
Use multipart PSA key derivation API
2019-08-29 12:24:28 +01:00
Jaeden Amero
21db2a94a4
Merge pull request #229 from k-stachowiak/IOTCRYPT-791-remove-legacy-psa-key-derivation
...
Remove legacy psa key derivation
2019-08-29 11:31:23 +01:00
Jaeden Amero
6fa62a5b8f
psa: Use application key ID where necessary
...
Avoid compiler errors when MBEDTLS_PSA_CRYPTO_KEY_FILE_ID_ENCODES_OWNER
is set by using the application ID type.
[Error] psa_crypto_slot_management.c@175,9: used type 'psa_key_id_t' (aka 'psa_key_file_id_t') where arithmetic or pointer type is required
2019-08-28 17:24:27 +01:00
Jaeden Amero
e3cdf284b2
psa: Adapt set_key_id() for when owner is included
2019-08-28 17:24:27 +01:00
Jaeden Amero
39f03fcf1a
psa: Add PSA_KEY_ID_INIT
...
A macro useful for initializing psa_key_id_t, whether
MBEDTLS_PSA_CRYPTO_KEY_FILE_ID_ENCODES_OWNER is set or not. Without this
macro, it is necessary to know if
MBEDTLS_PSA_CRYPTO_KEY_FILE_ID_ENCODES_OWNER as with it the key ID is
non-scalar and needs to be initialized with {0, 0}, and 0 otherwise when
key ID is scalar.
2019-08-28 17:24:27 +01:00