Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DNM] Upmerge TF-M v2.1.0 Mbed TLS v3.6.0 #36

Open
wants to merge 3,752 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3752 commits
Select commit Hold shift + click to select a range
f7d1cb0
Separate all.sh from components.
minosgalanakis Jul 30, 2024
e431739
Extract basic-components into a separate file.
minosgalanakis Aug 1, 2024
2148e5c
Extract build-components into a separate file.
minosgalanakis Aug 1, 2024
3bd6c30
Extract compiler-components into a separate file.
minosgalanakis Aug 1, 2024
b298d1f
Extract compliance-components into a separate file.
minosgalanakis Aug 1, 2024
b49e884
Merge pull request #9309 from gilles-peskine-arm/psa-keystore-design-…
gilles-peskine-arm Aug 2, 2024
3ece57e
Extract configuration-crypto-components into a separate file.
minosgalanakis Aug 1, 2024
5b4386c
Extract configuration-platform components into a separate file.
minosgalanakis Aug 1, 2024
27968c1
Extract configuration-x509 components into a separate file.
minosgalanakis Aug 1, 2024
93a8c08
Extract configuration components into a separate file.
minosgalanakis Aug 1, 2024
f0cd95b
Extract platform components into a separate file.
minosgalanakis Aug 1, 2024
4a2a351
Extract sanitizer components into a separate file.
minosgalanakis Aug 1, 2024
85347d1
all.sh/components: Moved more components to configuration tls.
minosgalanakis Aug 1, 2024
4ca7b14
all.sh/components: Fixed a typo in configuration-tls.
minosgalanakis Aug 5, 2024
0c0c3e1
all.sh/components: Moved more components to configuration crypto.
minosgalanakis Aug 1, 2024
5f6d2e3
all.sh/components: Moved driver components to configuration crypto.
minosgalanakis Aug 1, 2024
bb42737
all.sh/components: Moved build_aes_via_padlock to platform component.
minosgalanakis Aug 1, 2024
bd6b98f
all.sh/components: Removed components.sh
minosgalanakis Aug 1, 2024
095cf69
Merge pull request #9444 from minosgalanakis/all-sh-separate-componen…
mpg Aug 6, 2024
c9184fe
Fix server mode only build of v3.6 with MBEDTLS_SSL_CLI_C unset (fixe…
misch7 May 27, 2024
5be4fd7
Fix build of v3.6 with unset MBEDTLS_DHM_C but MBEDTLS_USE_PSA_CRYPTO…
misch7 May 27, 2024
83222b8
Add -Wmissing-prototypes to component_build_no_ssl_srv and component_…
minosgalanakis Aug 6, 2024
b4d55bb
Add missing include in tests/src/asn1_helpers.c
misch7 May 29, 2024
3a4c431
Move print_buf into mbedtls_test_print_buf helper function in sample …
misch7 Jun 1, 2024
41a686b
Fix missing-prototype error in programs/fuzz by moving LLVMFuzzerTest…
misch7 Jun 1, 2024
6fa32fd
Fix missing-prototype errors in sample programs
misch7 Jun 1, 2024
82984bc
Adjust spacing in sample programs
misch7 Jun 11, 2024
8cc43f2
Fix unused-function error for ecjpake_operation_setup in test_suite_p…
misch7 Jun 3, 2024
b1e33fb
Fix missing-prototype errors in tests/suites
misch7 Jun 4, 2024
31b1cb8
Adjust spacing in tests/suites function sources
misch7 Jun 4, 2024
4d0d0ec
Move the -Wmissing-prototypes option from library/CMakeLists.txt to t…
misch7 Jun 4, 2024
6d6cae5
Fix tests build with MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS enabled
misch7 Jun 5, 2024
275b698
Use correct test case conditionals for helper functions in tests/suites
misch7 Jun 6, 2024
6a3573a
Fix Uncrustify errors in modified tests/suites to satisfy check_code_…
misch7 Jun 7, 2024
ab4951f
Add missing include in tests/src/psa_memory_poisoning_wrappers.c to f…
misch7 Jun 7, 2024
ff4d6ae
Use correct conditionals in programs/ssl (fix unused-function errors)
misch7 Jun 7, 2024
46a6e73
Fix format-pedantic error in programs/test/metatest.c
misch7 Jun 7, 2024
9bf1875
Revert commit 33af72df in order to not depend on test code
misch7 Jul 20, 2024
5830505
Fix missing-prototype error for the print_buf functions in sample pro…
misch7 Jul 20, 2024
f36d785
Implement psa_generate_key_custom
gilles-peskine-arm Jun 6, 2024
a8e39f2
Update PSA wrappers
gilles-peskine-arm Jun 7, 2024
603b5b8
Documentation: point to key_custom instead of key_ext
gilles-peskine-arm Jun 6, 2024
e65cca2
Document the key_ext functions as deprecated
gilles-peskine-arm Jun 6, 2024
14134e7
Remove some tests of psa_generate_key_ext
gilles-peskine-arm Jun 7, 2024
d865c42
Changelog entry for the move from key_ext to key_custom functions
gilles-peskine-arm Jun 6, 2024
f5db72b
Test cpp_dummy_build in pedantic mode
gilles-peskine-arm Jun 6, 2024
472c10f
key_custom: update analyze_outcomes.py
gilles-peskine-arm Jun 7, 2024
52504f8
Rename internal function psa_key_production_parameters_are_default
gilles-peskine-arm Jun 20, 2024
0d619b2
Documentation improvements
gilles-peskine-arm Jul 18, 2024
4a85ff3
Rename one more deprecated identifier
gilles-peskine-arm Jul 18, 2024
14b87f6
Match spacing in pointer types in documentation with the code style
gilles-peskine-arm Jul 29, 2024
5f0b64a
Move some proj detection code inside pre_check_environment
tom-daubney-arm Aug 6, 2024
7ee1a4e
Merge pull request #9235 from gilles-peskine-arm/psa_generate_key_cus…
gilles-peskine-arm Aug 6, 2024
a542420
Call in_mbedtls_repo
tom-daubney-arm Aug 6, 2024
4306a69
Merge pull request #9437 from tom-daubney-arm/bp_3-6_standardise_proj…
tom-cosgrove-arm Aug 7, 2024
5eca402
Fix inverted assertion message
gilles-peskine-arm Aug 7, 2024
a9083b7
PSA_DONE: account for MBEDTLS_TEST_PSA_INTERNAL_KEYS
gilles-peskine-arm Aug 7, 2024
1b240c7
Announce the main removals planned for 4.0
gilles-peskine-arm Aug 7, 2024
aada0c8
Mention the PSA transition guide
gilles-peskine-arm Aug 7, 2024
e217673
Merge remote-tracking branch 'public/mbedtls-3.6' into merge-3.6
mpg Aug 8, 2024
1e6ed52
Merge pull request #1261 from mpg/merge-3.6
mpg Aug 8, 2024
ee1715c
Test cert alert KEY_USAGE -> UNSUPPORTED_CERT
mpg Aug 5, 2024
36d1b4a
Rationalize ssl-opt tests for keyUsage
mpg Aug 6, 2024
ef41d8c
Fix 1.3 failure to update flags for (ext)KeyUsage
mpg Aug 8, 2024
013d079
Always print detailed cert errors in test programs
mpg Aug 8, 2024
52c0f5a
Rationalize keyUsage testing, round 2
mpg Aug 8, 2024
5e64de0
Fix missing bits in crypto mechanisms
gilles-peskine-arm Aug 8, 2024
086bc91
Improve mechanism grouping
gilles-peskine-arm Aug 8, 2024
6df289a
More relevant characterisation of PSA being from before 3.0
gilles-peskine-arm Aug 8, 2024
a11687e
Revised presentation of cipher suites
gilles-peskine-arm Aug 8, 2024
aaa9672
Improve documentation in some tests
gilles-peskine-arm Aug 7, 2024
3b41e1d
Merge pull request #9403 from gilles-peskine-arm/psa-keystore-dynamic…
gilles-peskine-arm Aug 9, 2024
2bfd749
Dynamic key store: new compilation option
gilles-peskine-arm May 31, 2024
5064af6
Dynamic key store: preparatory refactoring
gilles-peskine-arm Jun 7, 2024
b5891cc
Dynamic key store: disable full-key-store tests
gilles-peskine-arm Jul 16, 2024
47ad2f7
psa_key_slot_t: different fields in free vs occupied slots
gilles-peskine-arm Jun 10, 2024
e8199f5
Dynamic key store: implementation
gilles-peskine-arm Jun 10, 2024
a81282c
Microoptimizations when MBEDTLS_PSA_KEY_STORE_DYNAMIC is disabled
gilles-peskine-arm Jun 10, 2024
3bc9d2b
Dynamic key store: make full-key-store tests work effectively
gilles-peskine-arm Jun 20, 2024
9dc903a
Add test components with the PSA static key store
gilles-peskine-arm Jun 21, 2024
628ad38
Changelog entry for MBEDTLS_PSA_KEY_STORE_DYNAMIC
gilles-peskine-arm Jun 10, 2024
ac43de0
Make integer downsizing explicit
gilles-peskine-arm Jun 13, 2024
1dfb6b5
Clarify some internal documentation
gilles-peskine-arm Aug 9, 2024
81a438b
Remove MBEDTLS_PSA_UTIL_HAVE_ECDSA so that functions are only enabled…
sezrab Jul 12, 2024
6474d90
Changelog entry
sezrab Aug 7, 2024
3001e27
Update the submodule to the head of PR in the framework repository
misch7 Jul 24, 2024
ee73321
Mention interfaces replaced by PSA drivers
gilles-peskine-arm Aug 10, 2024
cdd5b07
Use P_CLI when O_CLI's status is not reliable
mpg Aug 12, 2024
ce629a6
entropy.h is also going away
gilles-peskine-arm Aug 12, 2024
47bf23f
PSA PAKE wasn't in 2.28
gilles-peskine-arm Aug 12, 2024
7f9470a
Merge pull request #9451 from minosgalanakis/fix-v3.6-issues-9186-and…
gilles-peskine-arm Aug 12, 2024
5435850
Merge pull request #9457 from gilles-peskine-arm/announce-4.0-removal…
yanesca Aug 12, 2024
e084964
Improve documentation of MBEDTLS_MPI_IS_PUBLIC
yanesca Aug 12, 2024
38ff70e
Make _optionally_safe functions internal
yanesca Aug 12, 2024
bb3f295
Move mixed security code to small local functions
yanesca Aug 12, 2024
90b4271
Move MBEDTLS_MPI_IS_* macros to bignum_core.h
yanesca Aug 12, 2024
0c292b2
Make MBEDTLS_MPI_IS_PUBLIC thumb friendly
yanesca Aug 12, 2024
a5fc8f3
Move _public parameters next to their target
yanesca Aug 12, 2024
020b9ab
Use actual exponent size for window calculation
yanesca Aug 13, 2024
e0842aa
Add tests for optionally safe codepaths
yanesca Aug 13, 2024
4d9981a
Update framework to the head of the main branch
gilles-peskine-arm Aug 13, 2024
7342656
Add tests for optionally unsafe code paths
yanesca Aug 13, 2024
e196c1a
Merge pull request #9475 from gilles-peskine-arm/framework-update-202…
mpg Aug 14, 2024
70658db
Merge pull request #9463 from sezrab/psa_util_in_builds_without_psa-3.6
mpg Aug 14, 2024
fc1b6f5
Mention the option name for the dynamic key store
gilles-peskine-arm Aug 14, 2024
39c2272
The fully static key store will miss the 3.6.1 release
gilles-peskine-arm Aug 14, 2024
68c0e3d
Fix Mbed-TLS build when WIN32_LEAN_AND_MEAN macro is defined globally
sergio-nsk Aug 14, 2024
28cdd11
Merge pull request #9479 from gilles-peskine-arm/psa-keystore-static-…
tom-cosgrove-arm Aug 15, 2024
e74c840
Rationalize extKeyUsage tests
eleuzi01 Aug 15, 2024
2c62441
Fix mpi_core_exp_mod documentation
yanesca Aug 15, 2024
9d72df8
Optimise public RSA operations
yanesca Aug 15, 2024
04db1fb
Add test cases for extKeyUsage
eleuzi01 Aug 16, 2024
c2ec6fa
Free allocated memory where methods were returning without freeing
gowthamsk-arm Aug 19, 2024
777e3e7
Update ChangeLog
eleuzi01 Aug 19, 2024
4a30cd2
Merge pull request #1274 from gowthamsk-arm/mem-alloc-cleanup-3.6
tom-cosgrove-arm Aug 19, 2024
a112691
Fix optionally safe hooks declarations
yanesca Aug 20, 2024
8786dd7
Disable optionally safe test hook in threading builds
yanesca Aug 20, 2024
afb2079
Clean up initialization in _core_exp_mod()
yanesca Aug 20, 2024
b0b71dc
Edit ChangeLog entry
eleuzi01 Aug 20, 2024
878af12
Fix memory corruption in exp_mod tests
yanesca Aug 20, 2024
060e284
Add test forcing TLS 1.2 for clearer coverage
mpg Aug 5, 2024
a3cf1a5
Fix ordering of a test case in ssl-opt.sh
mpg Aug 5, 2024
d6e2069
Test cert alert NOT_TRUSTED -> UNKNOWN_CA
mpg Aug 5, 2024
4192bba
Test cert alert REVOKED -> CERT_REVOKED
mpg Aug 5, 2024
96a0c5c
Clean up mbedtls_ssl_check_cert_usage()
mpg Aug 9, 2024
4938b69
Make mbedtls_ssl_check_cert_usage() work for 1.3
mpg Aug 9, 2024
8a14aaa
Simplify certificate curve check for 1.2
mpg Aug 9, 2024
85b864e
Rm translation code for unused flag
mpg Aug 9, 2024
4d4c0c7
Add comments about 1.3 server sending no cert
mpg Aug 12, 2024
e1cc926
Allow optional authentication of the server in 1.3
mpg Aug 14, 2024
a0a781e
Reorder some tests in ssl-opt.sh
mpg Aug 14, 2024
2b98a4e
Allow no authentication of the server in 1.3
mpg Aug 14, 2024
84442a3
ssl-opt.sh: Fix test case titles
ronald-cron-arm Apr 3, 2024
cb7f632
tls13: Add support for trusted certificate callback
ronald-cron-arm Apr 3, 2024
8d5da8f
ssl-opt.sh: Test trusted certificate callback in TLS 1.3
ronald-cron-arm Apr 3, 2024
523a7e4
Restrict the scope of a few variables
mpg Aug 14, 2024
e910ac8
Improve a variable's name
mpg Aug 14, 2024
dee6ffa
Add support for context f_vrfy callback in 1.3
mpg Aug 16, 2024
d37054c
Minor refactoring of generic SSL certificate verif
mpg Aug 16, 2024
ce60330
Merge 1.2 and 1.3 certificate verification
mpg Aug 16, 2024
f2aa65f
Improve some comments
mpg Aug 16, 2024
ff28e4c
Fix two dependency declarations in ssl-opt
mpg Aug 16, 2024
565da76
Fix typos in comments
mpg Aug 20, 2024
c32a4a2
Fix guards around function now used by 1.3 as well
mpg Aug 20, 2024
f4f3e92
Add a ChangeLog entry
mpg Aug 20, 2024
a8e13d7
Fix incorrect comments on slice numbering
davidhorstmann-arm Aug 21, 2024
4312491
Tweak macro check to allow 3 extra key slices
davidhorstmann-arm Aug 21, 2024
9183ba1
Add overflow check for maximum key slot length
davidhorstmann-arm Aug 21, 2024
7e551a2
Merge pull request #1263 from mpg/fix-tls13-optional-ku
mpg Aug 21, 2024
6298d73
Merge pull request #1265 from mpg/refactor-tls123-verif
mpg Aug 21, 2024
11cac75
Simplify and explain the overflow check for maximum slice length
gilles-peskine-arm Aug 21, 2024
7be977a
Merge pull request #9486 from sergio-nsk/sergio-nsk/3.6/lean_and_mean/1
minosgalanakis Aug 22, 2024
58da249
Changelog entry for the RSA memory leak
gilles-peskine-arm Aug 21, 2024
c3ed44c
Tiny fix in ChangeLog
eleuzi01 Aug 22, 2024
d2cb074
Tiny fix in ChangeLog pt 2
eleuzi01 Aug 22, 2024
6c20869
Add changelog
yanesca Aug 22, 2024
82976f3
Make mbedtls_mpi_exp_mod_unsafe internal
yanesca Aug 22, 2024
273d07b
Merge pull request #9240 from gilles-peskine-arm/psa-keystore-dynamic…
mpg Aug 22, 2024
5d16334
Improve ChangeLog
yanesca Aug 22, 2024
5f31697
Add header for mbedtls_mpi_exp_mod_unsafe()
yanesca Aug 22, 2024
d8d5353
Merge pull request #1279 from gilles-peskine-arm/memory_allocation_cl…
davidhorstmann-arm Aug 22, 2024
4c857c4
Fix Changelog formatting
yanesca Aug 22, 2024
41e0cdf
Fix issue in handling legacy_compression_methods in ssl_tls13_parse_c…
waleed-elmelegy-arm Jun 11, 2024
566ed54
Improve handling of legacy_compression_methods in ssl_tls13_parse_cli…
waleed-elmelegy-arm Jun 19, 2024
3918598
Correct a small typo in ssl_tls13_parse_client_hello()
waleed-elmelegy-arm Jun 25, 2024
a1c4f4c
Improve comments explaining legacy_methods_compression handling
waleed-elmelegy-arm Jun 25, 2024
790f3b1
Add regression testing to handling Legacy_compression_methods
waleed-elmelegy-arm Jul 4, 2024
38c8757
Improve legacy compression regression testing
waleed-elmelegy-arm Jul 15, 2024
1297309
Remove redundant legacy compression test
waleed-elmelegy-arm Jul 16, 2024
f669fef
Add chanelog entry for fixing legacy comprssion methods issue
waleed-elmelegy-arm Aug 22, 2024
5183e1a
Improve the changelog entry for fixing legacy compression issue
waleed-elmelegy-arm Aug 22, 2024
d930a3e
Reduce the wording in changelog entry
waleed-elmelegy-arm Aug 22, 2024
8ac9caf
Fix the capitalisation in the changelog entry
waleed-elmelegy-arm Aug 22, 2024
df0ef8a
Merge pull request #9281 from mpg/rsapub
gilles-peskine-arm Aug 22, 2024
86a4c25
Merge pull request #9499 from waleed-elmelegy-arm/fix-legacy-compress…
gilles-peskine-arm Aug 22, 2024
4002e6f
Merge remote-tracking branch 'mbedtls-3.6' into mbedtls-3.6-restricted
gilles-peskine-arm Aug 23, 2024
590bdcb
Call psa_crypto_init in the library when required for TLS 1.3: doc
gilles-peskine-arm Aug 25, 2024
5950301
Don't call psa_crypto_init in unit tests when not required for TLS 1.3
gilles-peskine-arm Aug 24, 2024
cd4da16
Don't call psa_crypto_init in test programs when not required for TLS…
gilles-peskine-arm Aug 23, 2024
069bccd
Call psa_crypto_init in the library when required for TLS 1.3
gilles-peskine-arm Aug 23, 2024
5047627
Error translation and init are needed in PSK-only builds as well
gilles-peskine-arm Aug 26, 2024
92e803e
Clarify "negotiating"
gilles-peskine-arm Aug 26, 2024
aa6ef7d
Changelog entry for psa_crypto_init potentially being called from TLS
gilles-peskine-arm Aug 26, 2024
57dbd69
TLS 1.3 server: move crypto_init after protocol negotiation
gilles-peskine-arm Aug 26, 2024
8b8228c
Merge pull request #1282 from gilles-peskine-arm/merge-3.6-restricted…
mpg Aug 26, 2024
7defa41
Merge pull request #9501 from gilles-peskine-arm/tls13-psa-init-auto-3.6
gilles-peskine-arm Aug 26, 2024
bedddd7
Add mbedtls_ssl_conf_enable_new_session_tickets() API
ronald-cron-arm Aug 27, 2024
b675b2b
TLS 1.3: Ignore tickets if disabled at runtime
ronald-cron-arm Aug 27, 2024
23303a4
Enable TLS 1.3 ticket handling in resumption tests
ronald-cron-arm Aug 27, 2024
0e5d4fd
Document MBEDTLS_ERR_SSL_RECEIVED_NEW_SESSION_TICKET.
ronald-cron-arm Aug 27, 2024
9df0563
Improve MBEDTLS_ERR_SSL_RECEIVED_NEW_SESSION_TICKET documentation
ronald-cron-arm Aug 27, 2024
e55659d
Document NewSessionTicket handling being disabled by default
ronald-cron-arm Aug 27, 2024
57ad182
ssl_client2: Fix new_session_tickets option parsing
ronald-cron-arm Aug 27, 2024
d67f801
Do not add a new field in the SSL config
ronald-cron-arm Aug 28, 2024
fc76718
Move MBEDTLS_ERR_SSL_RECEIVED_NEW_SESSION_TICKET doc
ronald-cron-arm Aug 28, 2024
97dc583
Improve debug logs
ronald-cron-arm Aug 28, 2024
31b40b3
Add change logs
ronald-cron-arm Aug 28, 2024
ba45a44
Move session tickets getter functions to ssl_misc.h
ronald-cron-arm Aug 28, 2024
48a9f56
Improve documentation
ronald-cron-arm Aug 28, 2024
c9884b0
Fix change log
ronald-cron-arm Aug 28, 2024
9f44c88
Rename some "new_session_tickets" symbols
ronald-cron-arm Aug 28, 2024
c46edd4
Fix/Improve documentation
ronald-cron-arm Aug 28, 2024
72064b2
Merge pull request #9507 from ronald-cron-arm/disable-new-session-tic…
gilles-peskine-arm Aug 28, 2024
9f10979
Merge branch 'mbedtls-3.6-restricted' into mbedtls-3.6.1rc0-pr
davidhorstmann-arm Aug 28, 2024
204c4b4
Fix typos in make clean target for Windows
davidhorstmann-arm Aug 28, 2024
636367f
Don't clean test_keys.h and test_certs.h
davidhorstmann-arm Aug 28, 2024
9cf929d
Assemble ChangeLog
davidhorstmann-arm Aug 28, 2024
1d2dcfc
Bump version to 3.6.1
davidhorstmann-arm Aug 28, 2024
ea44fa7
Finalise ChangeLog
davidhorstmann-arm Aug 28, 2024
0d11176
Add generated files
davidhorstmann-arm Aug 28, 2024
18f3beb
Update BRANCHES.md
davidhorstmann-arm Aug 28, 2024
fedf9a2
Add CVE IDs to security ChangeLog
davidhorstmann-arm Aug 28, 2024
4c8ca72
Move some ChangeLog entries to a different section
davidhorstmann-arm Aug 28, 2024
71c569d
Merge pull request #1286 from Mbed-TLS/mbedtls-3.6.1rc0-pr
davidhorstmann-arm Aug 30, 2024
9dabbbf
Revert "md: fix guards for mbedtls_md_error_from_psa"
tomi-font Sep 2, 2024
5b86c71
Revert "Revert "Require framework directory to exist when building""
tomi-font Sep 2, 2024
95583ee
Revert "Revert "Show guidance if the framework is not found""
tomi-font Sep 2, 2024
3d56549
Revert "Enable sources when MCUBOOT_USE_PSA_CRYPTO and not MBEDTLS_PS…
tomi-font Sep 2, 2024
a9935fd
Revert "Enable psa_can_do_hash"
tomi-font Sep 2, 2024
fed851c
Revert "Hardcode CC3XX entry points"
tomi-font Sep 2, 2024
b6dcc26
Revert "Initialise driver wrappers as first step in psa_crypto_init()"
tomi-font Sep 2, 2024
ab9908e
Revert "Allow SE key to use key vendor id within PSA crypto"
tomi-font Sep 2, 2024
f741181
Revert "Enable crypto code sharing between independent binaries"
tomi-font Sep 2, 2024
079e65c
Revert "Add TF-M Builtin Key Loader driver entry points"
tomi-font Sep 2, 2024
bd3a26f
Merge tag 'v3.6.1' into HEAD
tomi-font Sep 2, 2024
08ca11e
Add TF-M Builtin Key Loader driver entry points
adeaarm Mar 21, 2024
7baa026
Enable crypto code sharing between independent binaries
tamasban Oct 27, 2020
fe8fb6d
Allow SE key to use key vendor id within PSA crypto
BenBaratte Feb 9, 2023
7285534
Initialise driver wrappers as first step in psa_crypto_init()
adeaarm Mar 21, 2024
e7779a8
Hardcode CC3XX entry points
adeaarm Mar 21, 2024
3947c84
Enable psa_can_do_hash
adeaarm Mar 21, 2024
d03fc39
Revert "Show guidance if the framework is not found"
tomi-font Apr 19, 2024
6d8b909
Revert "Require framework directory to exist when building"
tomi-font Apr 19, 2024
dd5801b
Enable sources when MCUBOOT_USE_PSA_CRYPTO and not MBEDTLS_PSA_CRYPTO_C
adeaarm Apr 9, 2024
b9b26b7
config_psa: include legacy module adjusting in MCUBOOT
valeriosetti Jul 25, 2024
fb36f3f
Merge pull request #60 from tomi-font/bump_to_3.6.1
carlescufi Sep 4, 2024
4269889
[nrf noup] Check if GCM_C is defined in gcm.h
Vge0rge Jan 20, 2022
5081e5b
[nrf noup] Enable use of SNI without x509.
frkv Sep 10, 2024
d3cd22d
[nrf noup] Enable auto-generation of additional TLS/DTLS docs
plskeggs Feb 14, 2022
4c64e64
[nrf noup] Disable reporting ecjpake kkpp extension for PSK
frkv Apr 5, 2022
427c287
[nrf noup] Fix unset key bits for nrf_cc3xx v0.9.14
frkv May 12, 2022
333c076
[nrf noup] Zeroize the Mbedtls entropy mutex
Vge0rge Sep 13, 2022
9762663
[nrf noup] Replace MBEDTLS_ACCEL->PSA_WANT in md.h
frkv Aug 20, 2024
eb1efbf
[nrf noup] Move headers found in Oberon PSA core
Vge0rge Feb 12, 2024
f7a5ed4
[nrf noup] pk_wrap: Use Hash algorithm for ECDSA verify_psa
mswarowsky Feb 14, 2024
8661245
[nrf noup] tls: Adapt to final PSA PAKE APIs
mswarowsky Feb 23, 2024
9e12479
[nrf noup] mbedtls: Enable more PSA crypto client awareness
frkv Sep 5, 2024
11f0c24
[nrf noup] crypto: mbedtls: Make MD PSA Crypto client aware
frkv Sep 10, 2024
467178f
[nrf noup] crypto: mbedtls: Give oid/PK access to mbedtls/ecp.h
frkv Sep 5, 2024
fc31fb7
WIP: [nrf noup] Commenting out entropy/thread checks in check_config.h
frkv Sep 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 9 additions & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ Please write a few sentences describing the overall goals of the pull request's
Please tick as appropriate and edit the reasons (e.g.: "backport: not needed because this is a new feature")

- [ ] **changelog** provided, or not required
- [ ] **backport** done, or not required
- [ ] **3.6 backport** done, or not required
- [ ] **2.28 backport** done, or not required
- [ ] **tests** provided, or not required


Expand All @@ -18,3 +19,10 @@ Please tick as appropriate and edit the reasons (e.g.: "backport: not needed bec

Please refer to the [contributing guidelines](https://github.com/Mbed-TLS/mbedtls/blob/development/CONTRIBUTING.md), especially the
checklist for PR contributors.

Help make review efficient:
* Multiple simple commits
- please structure your PR into a series of small commits, each of which does one thing
* Avoid force-push
- please do not force-push to update your PR - just add new commit(s)
* See our [Guidelines for Contributors](https://mbed-tls.readthedocs.io/en/latest/reviews/review-for-contributors/) for more details about the review process.
10 changes: 9 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
seedfile
# MBEDTLS_PSA_INJECT_ENTROPY seed file created by the test framework
00000000ffffff52.psa_its
# Log files created by all.sh to reduce the logs in case a component runs
# successfully
quiet-make.*

# CMake build artifacts:
CMakeCache.txt
Expand Down Expand Up @@ -63,5 +66,10 @@ massif-*
/cscope*.out
/tags

# Clangd compilation database
# clangd compilation database
compile_commands.json
# clangd index files
/.cache/clangd/index/

# VScode folder to store local debug files and configurations
.vscode
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "framework"]
path = framework
url = https://github.com/Mbed-TLS/mbedtls-framework
5 changes: 5 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@
# Required
version: 2

# Include the framework submodule in the build
submodules:
include:
- framework

# Set the version of Python and other tools you might need
build:
os: ubuntu-20.04
Expand Down
14 changes: 1 addition & 13 deletions .uncrustify.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,7 @@
# to Mbed TLS.
#
# Copyright The Mbed TLS Contributors
# SPDX-License-Identifier: Apache-2.0
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later


# Wrap lines at 100 characters
Expand Down
2 changes: 1 addition & 1 deletion 3rdparty/Makefile.inc
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
THIRDPARTY_DIR = $(dir $(word 2, $(MAKEFILE_LIST)))
THIRDPARTY_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
include $(THIRDPARTY_DIR)/everest/Makefile.inc
include $(THIRDPARTY_DIR)/p256-m/Makefile.inc
4 changes: 2 additions & 2 deletions 3rdparty/everest/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ target_include_directories(${everest_target}
# everest is not directly linked against any mbedtls targets
# so does not inherit the compile definitions.
if(MBEDTLS_CONFIG_FILE)
target_compile_definitions(everest
target_compile_definitions(${everest_target}
PUBLIC MBEDTLS_CONFIG_FILE="${MBEDTLS_CONFIG_FILE}")
endif()
if(MBEDTLS_USER_CONFIG_FILE)
target_compile_definitions(everest
target_compile_definitions(${everest_target}
PUBLIC MBEDTLS_USER_CONFIG_FILE="${MBEDTLS_USER_CONFIG_FILE}")
endif()

Expand Down
8 changes: 4 additions & 4 deletions 3rdparty/everest/Makefile.inc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
THIRDPARTY_INCLUDES+=-I../3rdparty/everest/include -I../3rdparty/everest/include/everest -I../3rdparty/everest/include/everest/kremlib
THIRDPARTY_INCLUDES+=-I$(THIRDPARTY_DIR)/everest/include -I$(THIRDPARTY_DIR)/everest/include/everest -I$(THIRDPARTY_DIR)/everest/include/everest/kremlib

THIRDPARTY_CRYPTO_OBJECTS+= \
../3rdparty/everest/library/everest.o \
../3rdparty/everest/library/x25519.o \
../3rdparty/everest/library/Hacl_Curve25519_joined.o
$(THIRDPARTY_DIR)/everest/library/everest.o \
$(THIRDPARTY_DIR)/everest/library/x25519.o \
$(THIRDPARTY_DIR)/everest/library/Hacl_Curve25519_joined.o
1 change: 1 addition & 0 deletions 3rdparty/p256-m/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Makefile
4 changes: 2 additions & 2 deletions 3rdparty/p256-m/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ target_include_directories(${p256m_target}
# p256m is not directly linked against any mbedtls targets
# so does not inherit the compile definitions.
if(MBEDTLS_CONFIG_FILE)
target_compile_definitions(p256m
target_compile_definitions(${p256m_target}
PUBLIC MBEDTLS_CONFIG_FILE="${MBEDTLS_CONFIG_FILE}")
endif()
if(MBEDTLS_USER_CONFIG_FILE)
target_compile_definitions(p256m
target_compile_definitions(${p256m_target}
PUBLIC MBEDTLS_USER_CONFIG_FILE="${MBEDTLS_USER_CONFIG_FILE}")
endif()

Expand Down
6 changes: 3 additions & 3 deletions 3rdparty/p256-m/Makefile.inc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
THIRDPARTY_INCLUDES+=-I../3rdparty/p256-m/p256-m/include -I../3rdparty/p256-m/p256-m/include/p256-m -I../3rdparty/p256-m/p256-m_driver_interface
THIRDPARTY_INCLUDES+=-I$(THIRDPARTY_DIR)/p256-m/p256-m/include -I$(THIRDPARTY_DIR)/p256-m/p256-m/include/p256-m -I$(THIRDPARTY_DIR)/p256-m/p256-m_driver_interface

THIRDPARTY_CRYPTO_OBJECTS+= \
../3rdparty/p256-m//p256-m_driver_entrypoints.o \
../3rdparty/p256-m//p256-m/p256-m.o
$(THIRDPARTY_DIR)/p256-m//p256-m_driver_entrypoints.o \
$(THIRDPARTY_DIR)/p256-m//p256-m/p256-m.o
4 changes: 2 additions & 2 deletions 3rdparty/p256-m/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
The files within the `p256-m/` subdirectory originate from the [p256-m GitHub repository](https://github.com/mpg/p256-m), which is distributed under the Apache 2.0 license. They are authored by Manuel Pégourié-Gonnard. p256-m is a minimalistic implementation of ECDH and ECDSA on NIST P-256, especially suited to constrained 32-bit environments. Mbed TLS documentation for integrating drivers uses p256-m as an example of a software accelerator, and describes how it can be integrated alongside Mbed TLS. It should be noted that p256-m files in the Mbed TLS repo will not be updated regularly, so they may not have fixes and improvements present in the upstream project.
The files within the `p256-m/` subdirectory originate from the [p256-m GitHub repository](https://github.com/mpg/p256-m). They are distributed here under a dual Apache-2.0 OR GPL-2.0-or-later license. They are authored by Manuel Pégourié-Gonnard. p256-m is a minimalistic implementation of ECDH and ECDSA on NIST P-256, especially suited to constrained 32-bit environments. Mbed TLS documentation for integrating drivers uses p256-m as an example of a software accelerator, and describes how it can be integrated alongside Mbed TLS. It should be noted that p256-m files in the Mbed TLS repo will not be updated regularly, so they may not have fixes and improvements present in the upstream project.

The files `p256-m.c` and `.h`, along with the license, have been taken from the `p256-m` repository.
The files `p256-m.c`, `p256-m.h` and `README.md` have been taken from the `p256-m` repository.
It should be noted that p256-m deliberately does not supply its own cryptographically secure RNG function. As a result, the PSA RNG is used, with `p256_generate_random()` wrapping `psa_generate_random()`.
202 changes: 0 additions & 202 deletions 3rdparty/p256-m/p256-m/LICENSE

This file was deleted.

2 changes: 1 addition & 1 deletion 3rdparty/p256-m/p256-m/p256-m.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*
* Copyright The Mbed TLS Contributors
* Author: Manuel Pégourié-Gonnard.
* SPDX-License-Identifier: Apache-2.0
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "p256-m.h"
Expand Down
2 changes: 1 addition & 1 deletion 3rdparty/p256-m/p256-m/p256-m.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*
* Copyright The Mbed TLS Contributors
* Author: Manuel Pégourié-Gonnard.
* SPDX-License-Identifier: Apache-2.0
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/
#ifndef P256_M_H
#define P256_M_H
Expand Down
14 changes: 1 addition & 13 deletions 3rdparty/p256-m/p256-m_driver_entrypoints.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,7 @@
*/
/*
* Copyright The Mbed TLS Contributors
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "mbedtls/platform.h"
Expand Down
Loading