DONTMERGE [common] Update ciphersuite used for securing pipe/UDS connections #1911
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of the changes
Previously, Gramine-SGX used MBEDTLS_TLS_PSK_WITH_AES_128_GCM_SHA256 ciphersuite when creating TLS-secured pipes and Unix Domain Sockets. This ciphersuite is considered deprecated, thus we switch to MBEDTLS_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256 (with Elliptic Curve DHE key exchange). This is recommended for Forward Security.
Unfortunately mbedTLS v3.6.0 doesn't provide an ECDHE PSK based ciphersuite that has AES-GCM, but only the one with AES-CBC. For the lack of options, we use the AES-CBC one.
DONTMERGE:
There is an alternative PR that uses DHE: #1918
More info see also in Mbed-TLS/mbedtls#8170
How to test this PR?
CI is enough.
CI currently fails on forking apps, because serialization of TLS sessions doesn't work correctly. That's because of our minimalistic patch.
This change is