mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-04-24 15:02:55 +00:00
Merge pull request #9613 from gilles-peskine-arm/remove-rsa-psk-key-exchange
Remove RSA-PSK key exchange
This commit is contained in:
commit
4c58e89976
2
ChangeLog.d/tls-key-exchange-rsa.txt
Normal file
2
ChangeLog.d/tls-key-exchange-rsa.txt
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
Removals
|
||||||
|
* Remove support for the RSA-PSK key exchange in TLS 1.2.
|
@ -117,7 +117,6 @@ Support description
|
|||||||
| MBEDTLS_KEY_EXCHANGE_PSK_ENABLED | n/a (2) |
|
| MBEDTLS_KEY_EXCHANGE_PSK_ENABLED | n/a (2) |
|
||||||
| MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED | n/a |
|
| MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED | n/a |
|
||||||
| MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED | n/a |
|
| MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED | n/a |
|
||||||
| MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED | n/a |
|
|
||||||
| MBEDTLS_KEY_EXCHANGE_RSA_ENABLED | n/a |
|
| MBEDTLS_KEY_EXCHANGE_RSA_ENABLED | n/a |
|
||||||
| MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED | n/a |
|
| MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED | n/a |
|
||||||
| MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED | n/a |
|
| MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED | n/a |
|
||||||
|
@ -310,12 +310,6 @@
|
|||||||
#error "MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED defined, but not all prerequisites"
|
#error "MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED defined, but not all prerequisites"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED) && \
|
|
||||||
( !defined(MBEDTLS_RSA_C) || !defined(MBEDTLS_X509_CRT_PARSE_C) || \
|
|
||||||
!defined(MBEDTLS_PKCS1_V15) )
|
|
||||||
#error "MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED defined, but not all prerequisites"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED) && \
|
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED) && \
|
||||||
( !defined(MBEDTLS_RSA_C) || !defined(MBEDTLS_X509_CRT_PARSE_C) || \
|
( !defined(MBEDTLS_RSA_C) || !defined(MBEDTLS_X509_CRT_PARSE_C) || \
|
||||||
!defined(MBEDTLS_PKCS1_V15) )
|
!defined(MBEDTLS_PKCS1_V15) )
|
||||||
@ -797,7 +791,6 @@
|
|||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED) || \
|
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED) )
|
defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED) )
|
||||||
#error "One or more versions of the TLS protocol are enabled " \
|
#error "One or more versions of the TLS protocol are enabled " \
|
||||||
|
@ -67,7 +67,6 @@
|
|||||||
#undef MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
|
#undef MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
|
||||||
#undef MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
|
#undef MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
|
||||||
#undef MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED
|
#undef MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED
|
||||||
#undef MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
|
|
||||||
#undef MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
|
#undef MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
|
||||||
#undef MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
|
#undef MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
|
||||||
#undef MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED
|
#undef MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED
|
||||||
|
@ -523,9 +523,6 @@
|
|||||||
* MBEDTLS_TLS_RSA_WITH_NULL_SHA256
|
* MBEDTLS_TLS_RSA_WITH_NULL_SHA256
|
||||||
* MBEDTLS_TLS_RSA_WITH_NULL_SHA
|
* MBEDTLS_TLS_RSA_WITH_NULL_SHA
|
||||||
* MBEDTLS_TLS_RSA_WITH_NULL_MD5
|
* MBEDTLS_TLS_RSA_WITH_NULL_MD5
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA
|
|
||||||
* MBEDTLS_TLS_PSK_WITH_NULL_SHA384
|
* MBEDTLS_TLS_PSK_WITH_NULL_SHA384
|
||||||
* MBEDTLS_TLS_PSK_WITH_NULL_SHA256
|
* MBEDTLS_TLS_PSK_WITH_NULL_SHA256
|
||||||
* MBEDTLS_TLS_PSK_WITH_NULL_SHA
|
* MBEDTLS_TLS_PSK_WITH_NULL_SHA
|
||||||
@ -745,29 +742,6 @@
|
|||||||
*/
|
*/
|
||||||
#define MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
|
#define MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
|
||||||
|
|
||||||
/**
|
|
||||||
* \def MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
|
|
||||||
*
|
|
||||||
* Enable the RSA-PSK based ciphersuite modes in SSL / TLS.
|
|
||||||
*
|
|
||||||
* Requires: MBEDTLS_RSA_C, MBEDTLS_PKCS1_V15,
|
|
||||||
* MBEDTLS_X509_CRT_PARSE_C
|
|
||||||
*
|
|
||||||
* This enables the following ciphersuites (if other requisites are
|
|
||||||
* enabled as well):
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256
|
|
||||||
*/
|
|
||||||
#define MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \def MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
|
* \def MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
|
||||||
*
|
*
|
||||||
@ -2140,12 +2114,6 @@
|
|||||||
* MBEDTLS_TLS_RSA_WITH_AES_128_GCM_SHA256
|
* MBEDTLS_TLS_RSA_WITH_AES_128_GCM_SHA256
|
||||||
* MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA256
|
* MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA256
|
||||||
* MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA
|
* MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA
|
|
||||||
* MBEDTLS_TLS_PSK_WITH_AES_256_GCM_SHA384
|
* MBEDTLS_TLS_PSK_WITH_AES_256_GCM_SHA384
|
||||||
* MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA384
|
* MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA384
|
||||||
* MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA
|
* MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA
|
||||||
@ -2283,10 +2251,6 @@
|
|||||||
* MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256
|
* MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256
|
||||||
* MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256
|
* MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256
|
||||||
* MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
|
* MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256
|
|
||||||
* MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384
|
* MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384
|
||||||
* MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384
|
* MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384
|
||||||
* MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256
|
* MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256
|
||||||
@ -2333,14 +2297,10 @@
|
|||||||
* MBEDTLS_TLS_PSK_WITH_ARIA_256_CBC_SHA384
|
* MBEDTLS_TLS_PSK_WITH_ARIA_256_CBC_SHA384
|
||||||
* MBEDTLS_TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256
|
* MBEDTLS_TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256
|
||||||
* MBEDTLS_TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384
|
* MBEDTLS_TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384
|
|
||||||
* MBEDTLS_TLS_PSK_WITH_ARIA_128_GCM_SHA256
|
* MBEDTLS_TLS_PSK_WITH_ARIA_128_GCM_SHA256
|
||||||
* MBEDTLS_TLS_PSK_WITH_ARIA_256_GCM_SHA384
|
* MBEDTLS_TLS_PSK_WITH_ARIA_256_GCM_SHA384
|
||||||
* MBEDTLS_TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256
|
* MBEDTLS_TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256
|
||||||
* MBEDTLS_TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384
|
* MBEDTLS_TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256
|
|
||||||
* MBEDTLS_TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384
|
|
||||||
* MBEDTLS_TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256
|
* MBEDTLS_TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256
|
||||||
* MBEDTLS_TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384
|
* MBEDTLS_TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384
|
||||||
*/
|
*/
|
||||||
@ -3081,7 +3041,7 @@
|
|||||||
* library/ssl*_server.c
|
* library/ssl*_server.c
|
||||||
*
|
*
|
||||||
* This module is used by the following key exchanges:
|
* This module is used by the following key exchanges:
|
||||||
* RSA, DHE-RSA, ECDHE-RSA, RSA-PSK
|
* RSA, DHE-RSA, ECDHE-RSA
|
||||||
*
|
*
|
||||||
* Requires: MBEDTLS_BIGNUM_C, MBEDTLS_OID_C
|
* Requires: MBEDTLS_BIGNUM_C, MBEDTLS_OID_C
|
||||||
*/
|
*/
|
||||||
|
@ -673,9 +673,6 @@ union mbedtls_ssl_premaster_secret {
|
|||||||
unsigned char _pms_dhe_psk[4 + MBEDTLS_MPI_MAX_SIZE
|
unsigned char _pms_dhe_psk[4 + MBEDTLS_MPI_MAX_SIZE
|
||||||
+ MBEDTLS_PSK_MAX_LEN]; /* RFC 4279 3 */
|
+ MBEDTLS_PSK_MAX_LEN]; /* RFC 4279 3 */
|
||||||
#endif
|
#endif
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
unsigned char _pms_rsa_psk[52 + MBEDTLS_PSK_MAX_LEN]; /* RFC 4279 4 */
|
|
||||||
#endif
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
|
#if defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
|
||||||
unsigned char _pms_ecdhe_psk[4 + MBEDTLS_ECP_MAX_BYTES
|
unsigned char _pms_ecdhe_psk[4 + MBEDTLS_ECP_MAX_BYTES
|
||||||
+ MBEDTLS_PSK_MAX_LEN]; /* RFC 5489 2 */
|
+ MBEDTLS_PSK_MAX_LEN]; /* RFC 5489 2 */
|
||||||
|
@ -29,7 +29,6 @@ extern "C" {
|
|||||||
|
|
||||||
#define MBEDTLS_TLS_PSK_WITH_NULL_SHA 0x2C /**< Weak! */
|
#define MBEDTLS_TLS_PSK_WITH_NULL_SHA 0x2C /**< Weak! */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA 0x2D /**< Weak! */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA 0x2D /**< Weak! */
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA 0x2E /**< Weak! */
|
|
||||||
#define MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA 0x2F
|
#define MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA 0x2F
|
||||||
|
|
||||||
#define MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CBC_SHA 0x33
|
#define MBEDTLS_TLS_DHE_RSA_WITH_AES_128_CBC_SHA 0x33
|
||||||
@ -55,9 +54,6 @@ extern "C" {
|
|||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CBC_SHA 0x90
|
#define MBEDTLS_TLS_DHE_PSK_WITH_AES_128_CBC_SHA 0x90
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CBC_SHA 0x91
|
#define MBEDTLS_TLS_DHE_PSK_WITH_AES_256_CBC_SHA 0x91
|
||||||
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA 0x94
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA 0x95
|
|
||||||
|
|
||||||
#define MBEDTLS_TLS_RSA_WITH_AES_128_GCM_SHA256 0x9C /**< TLS 1.2 */
|
#define MBEDTLS_TLS_RSA_WITH_AES_128_GCM_SHA256 0x9C /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_RSA_WITH_AES_256_GCM_SHA384 0x9D /**< TLS 1.2 */
|
#define MBEDTLS_TLS_RSA_WITH_AES_256_GCM_SHA384 0x9D /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 0x9E /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 0x9E /**< TLS 1.2 */
|
||||||
@ -67,8 +63,6 @@ extern "C" {
|
|||||||
#define MBEDTLS_TLS_PSK_WITH_AES_256_GCM_SHA384 0xA9 /**< TLS 1.2 */
|
#define MBEDTLS_TLS_PSK_WITH_AES_256_GCM_SHA384 0xA9 /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 0xAA /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 0xAA /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 0xAB /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 0xAB /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256 0xAC /**< TLS 1.2 */
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384 0xAD /**< TLS 1.2 */
|
|
||||||
|
|
||||||
#define MBEDTLS_TLS_PSK_WITH_AES_128_CBC_SHA256 0xAE
|
#define MBEDTLS_TLS_PSK_WITH_AES_128_CBC_SHA256 0xAE
|
||||||
#define MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA384 0xAF
|
#define MBEDTLS_TLS_PSK_WITH_AES_256_CBC_SHA384 0xAF
|
||||||
@ -80,11 +74,6 @@ extern "C" {
|
|||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA256 0xB4 /**< Weak! */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA256 0xB4 /**< Weak! */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA384 0xB5 /**< Weak! */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_NULL_SHA384 0xB5 /**< Weak! */
|
||||||
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256 0xB6
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384 0xB7
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA256 0xB8 /**< Weak! */
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA384 0xB9 /**< Weak! */
|
|
||||||
|
|
||||||
#define MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256 0xBA /**< TLS 1.2 */
|
#define MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256 0xBA /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 0xBE /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 0xBE /**< TLS 1.2 */
|
||||||
|
|
||||||
@ -161,14 +150,10 @@ extern "C" {
|
|||||||
#define MBEDTLS_TLS_PSK_WITH_ARIA_256_CBC_SHA384 0xC065 /**< TLS 1.2 */
|
#define MBEDTLS_TLS_PSK_WITH_ARIA_256_CBC_SHA384 0xC065 /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256 0xC066 /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256 0xC066 /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384 0xC067 /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384 0xC067 /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256 0xC068 /**< TLS 1.2 */
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384 0xC069 /**< TLS 1.2 */
|
|
||||||
#define MBEDTLS_TLS_PSK_WITH_ARIA_128_GCM_SHA256 0xC06A /**< TLS 1.2 */
|
#define MBEDTLS_TLS_PSK_WITH_ARIA_128_GCM_SHA256 0xC06A /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_PSK_WITH_ARIA_256_GCM_SHA384 0xC06B /**< TLS 1.2 */
|
#define MBEDTLS_TLS_PSK_WITH_ARIA_256_GCM_SHA384 0xC06B /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256 0xC06C /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256 0xC06C /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384 0xC06D /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384 0xC06D /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256 0xC06E /**< TLS 1.2 */
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384 0xC06F /**< TLS 1.2 */
|
|
||||||
#define MBEDTLS_TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256 0xC070 /**< TLS 1.2 */
|
#define MBEDTLS_TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256 0xC070 /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384 0xC071 /**< TLS 1.2 */
|
#define MBEDTLS_TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384 0xC071 /**< TLS 1.2 */
|
||||||
|
|
||||||
@ -198,15 +183,11 @@ extern "C" {
|
|||||||
#define MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384 0xC08F /**< TLS 1.2 */
|
#define MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384 0xC08F /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256 0xC090 /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256 0xC090 /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384 0xC091 /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384 0xC091 /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256 0xC092 /**< TLS 1.2 */
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384 0xC093 /**< TLS 1.2 */
|
|
||||||
|
|
||||||
#define MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256 0xC094
|
#define MBEDTLS_TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256 0xC094
|
||||||
#define MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384 0xC095
|
#define MBEDTLS_TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384 0xC095
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 0xC096
|
#define MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 0xC096
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 0xC097
|
#define MBEDTLS_TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 0xC097
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256 0xC098
|
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384 0xC099
|
|
||||||
#define MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 0xC09A
|
#define MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 0xC09A
|
||||||
#define MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 0xC09B
|
#define MBEDTLS_TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 0xC09B
|
||||||
|
|
||||||
@ -242,7 +223,6 @@ extern "C" {
|
|||||||
#define MBEDTLS_TLS_PSK_WITH_CHACHA20_POLY1305_SHA256 0xCCAB /**< TLS 1.2 */
|
#define MBEDTLS_TLS_PSK_WITH_CHACHA20_POLY1305_SHA256 0xCCAB /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 0xCCAC /**< TLS 1.2 */
|
#define MBEDTLS_TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 0xCCAC /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256 0xCCAD /**< TLS 1.2 */
|
#define MBEDTLS_TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256 0xCCAD /**< TLS 1.2 */
|
||||||
#define MBEDTLS_TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256 0xCCAE /**< TLS 1.2 */
|
|
||||||
|
|
||||||
/* RFC 8446, Appendix B.4 */
|
/* RFC 8446, Appendix B.4 */
|
||||||
#define MBEDTLS_TLS1_3_AES_128_GCM_SHA256 0x1301 /**< TLS 1.3 */
|
#define MBEDTLS_TLS1_3_AES_128_GCM_SHA256 0x1301 /**< TLS 1.3 */
|
||||||
@ -262,7 +242,6 @@ typedef enum {
|
|||||||
MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
|
MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA,
|
||||||
MBEDTLS_KEY_EXCHANGE_PSK,
|
MBEDTLS_KEY_EXCHANGE_PSK,
|
||||||
MBEDTLS_KEY_EXCHANGE_DHE_PSK,
|
MBEDTLS_KEY_EXCHANGE_DHE_PSK,
|
||||||
MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
|
MBEDTLS_KEY_EXCHANGE_ECDHE_PSK,
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
|
MBEDTLS_KEY_EXCHANGE_ECDH_RSA,
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
|
MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA,
|
||||||
@ -274,7 +253,6 @@ typedef enum {
|
|||||||
defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED) || \
|
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED)
|
defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED)
|
||||||
#define MBEDTLS_KEY_EXCHANGE_WITH_CERT_ENABLED
|
#define MBEDTLS_KEY_EXCHANGE_WITH_CERT_ENABLED
|
||||||
@ -294,19 +272,14 @@ typedef enum {
|
|||||||
|
|
||||||
/* Key exchanges allowing client certificate requests.
|
/* Key exchanges allowing client certificate requests.
|
||||||
*
|
*
|
||||||
* Note: that's almost the same as MBEDTLS_KEY_EXCHANGE_WITH_CERT_ENABLED
|
* This is now the same as MBEDTLS_KEY_EXCHANGE_WITH_CERT_ENABLED,
|
||||||
* above, except RSA-PSK uses a server certificate but no client cert.
|
* and the two macros could be unified.
|
||||||
*
|
* Until Mbed TLS 3.x, the two sets were different because
|
||||||
* Note: this difference is specific to TLS 1.2, as with TLS 1.3, things are
|
* MBEDTLS_KEY_EXCHANGE_CERT_REQ_ALLOWED_ENABLED covers
|
||||||
* more symmetrical: client certs and server certs are either both allowed
|
* MBEDTLS_KEY_EXCHANGE_WITH_CERT_ENABLED plus RSA-PSK.
|
||||||
* (Ephemeral mode) or both disallowed (PSK and PKS-Ephemeral modes).
|
* But RSA-PSK was removed in Mbed TLS 4.0.
|
||||||
*/
|
*/
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED) || \
|
#if defined(MBEDTLS_KEY_EXCHANGE_WITH_CERT_ENABLED)
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED) || \
|
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED) || \
|
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED) || \
|
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED) || \
|
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED)
|
|
||||||
#define MBEDTLS_KEY_EXCHANGE_CERT_REQ_ALLOWED_ENABLED
|
#define MBEDTLS_KEY_EXCHANGE_CERT_REQ_ALLOWED_ENABLED
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -339,7 +312,6 @@ typedef enum {
|
|||||||
/* Key exchanges that don't involve ephemeral keys */
|
/* Key exchanges that don't involve ephemeral keys */
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED) || \
|
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED) || \
|
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_SOME_ECDH_ENABLED)
|
defined(MBEDTLS_KEY_EXCHANGE_SOME_ECDH_ENABLED)
|
||||||
#define MBEDTLS_KEY_EXCHANGE_SOME_NON_PFS_ENABLED
|
#define MBEDTLS_KEY_EXCHANGE_SOME_NON_PFS_ENABLED
|
||||||
#endif
|
#endif
|
||||||
@ -356,7 +328,6 @@ typedef enum {
|
|||||||
|
|
||||||
/* Key exchanges using a PSK */
|
/* Key exchanges using a PSK */
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED) || \
|
#if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED) || \
|
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
|
defined(MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED)
|
||||||
#define MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED
|
#define MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED
|
||||||
|
@ -211,24 +211,6 @@ static const int ciphersuite_preference[] =
|
|||||||
MBEDTLS_TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256,
|
MBEDTLS_TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256,
|
||||||
MBEDTLS_TLS_RSA_WITH_ARIA_128_CBC_SHA256,
|
MBEDTLS_TLS_RSA_WITH_ARIA_128_CBC_SHA256,
|
||||||
|
|
||||||
/* The RSA PSK suites */
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384,
|
|
||||||
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256,
|
|
||||||
|
|
||||||
/* The PSK suites */
|
/* The PSK suites */
|
||||||
MBEDTLS_TLS_PSK_WITH_CHACHA20_POLY1305_SHA256,
|
MBEDTLS_TLS_PSK_WITH_CHACHA20_POLY1305_SHA256,
|
||||||
MBEDTLS_TLS_PSK_WITH_AES_256_GCM_SHA384,
|
MBEDTLS_TLS_PSK_WITH_AES_256_GCM_SHA384,
|
||||||
@ -266,9 +248,6 @@ static const int ciphersuite_preference[] =
|
|||||||
MBEDTLS_TLS_RSA_WITH_NULL_MD5,
|
MBEDTLS_TLS_RSA_WITH_NULL_MD5,
|
||||||
MBEDTLS_TLS_ECDH_RSA_WITH_NULL_SHA,
|
MBEDTLS_TLS_ECDH_RSA_WITH_NULL_SHA,
|
||||||
MBEDTLS_TLS_ECDH_ECDSA_WITH_NULL_SHA,
|
MBEDTLS_TLS_ECDH_ECDSA_WITH_NULL_SHA,
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA384,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA256,
|
|
||||||
MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA,
|
|
||||||
MBEDTLS_TLS_PSK_WITH_NULL_SHA384,
|
MBEDTLS_TLS_PSK_WITH_NULL_SHA384,
|
||||||
MBEDTLS_TLS_PSK_WITH_NULL_SHA256,
|
MBEDTLS_TLS_PSK_WITH_NULL_SHA256,
|
||||||
MBEDTLS_TLS_PSK_WITH_NULL_SHA,
|
MBEDTLS_TLS_PSK_WITH_NULL_SHA,
|
||||||
@ -371,14 +350,6 @@ static const mbedtls_ssl_ciphersuite_t ciphersuite_definitions[] =
|
|||||||
0,
|
0,
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
||||||
#endif
|
#endif
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256,
|
|
||||||
"TLS-RSA-PSK-WITH-CHACHA20-POLY1305-SHA256",
|
|
||||||
MBEDTLS_CIPHER_CHACHA20_POLY1305, MBEDTLS_MD_SHA256,
|
|
||||||
MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif
|
|
||||||
#endif /* PSA_WANT_ALG_CHACHA20_POLY1305 &&
|
#endif /* PSA_WANT_ALG_CHACHA20_POLY1305 &&
|
||||||
PSA_WANT_ALG_SHA_256 &&
|
PSA_WANT_ALG_SHA_256 &&
|
||||||
MBEDTLS_SSL_PROTO_TLS1_2 */
|
MBEDTLS_SSL_PROTO_TLS1_2 */
|
||||||
@ -1235,89 +1206,6 @@ static const mbedtls_ssl_ciphersuite_t ciphersuite_definitions[] =
|
|||||||
|
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED */
|
#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED */
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
#if defined(PSA_WANT_KEY_TYPE_AES)
|
|
||||||
#if defined(PSA_WANT_ALG_GCM)
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_256)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256, "TLS-RSA-PSK-WITH-AES-128-GCM-SHA256",
|
|
||||||
MBEDTLS_CIPHER_AES_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_256 */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_384)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384, "TLS-RSA-PSK-WITH-AES-256-GCM-SHA384",
|
|
||||||
MBEDTLS_CIPHER_AES_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_384 */
|
|
||||||
#endif /* PSA_WANT_ALG_GCM */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_CBC_NO_PADDING)
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_256)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256, "TLS-RSA-PSK-WITH-AES-128-CBC-SHA256",
|
|
||||||
MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_256 */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_384)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384, "TLS-RSA-PSK-WITH-AES-256-CBC-SHA384",
|
|
||||||
MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_384 */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_1)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_AES_128_CBC_SHA, "TLS-RSA-PSK-WITH-AES-128-CBC-SHA",
|
|
||||||
MBEDTLS_CIPHER_AES_128_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA, "TLS-RSA-PSK-WITH-AES-256-CBC-SHA",
|
|
||||||
MBEDTLS_CIPHER_AES_256_CBC, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_1 */
|
|
||||||
#endif /* PSA_WANT_ALG_CBC_NO_PADDING */
|
|
||||||
#endif /* PSA_WANT_KEY_TYPE_AES */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_KEY_TYPE_CAMELLIA)
|
|
||||||
#if defined(PSA_WANT_ALG_CBC_NO_PADDING)
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_256)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256, "TLS-RSA-PSK-WITH-CAMELLIA-128-CBC-SHA256",
|
|
||||||
MBEDTLS_CIPHER_CAMELLIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_256 */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_384)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384, "TLS-RSA-PSK-WITH-CAMELLIA-256-CBC-SHA384",
|
|
||||||
MBEDTLS_CIPHER_CAMELLIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_384 */
|
|
||||||
#endif /* PSA_WANT_ALG_CBC_NO_PADDING */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_GCM)
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_256)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256, "TLS-RSA-PSK-WITH-CAMELLIA-128-GCM-SHA256",
|
|
||||||
MBEDTLS_CIPHER_CAMELLIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_256 */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_384)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384, "TLS-RSA-PSK-WITH-CAMELLIA-256-GCM-SHA384",
|
|
||||||
MBEDTLS_CIPHER_CAMELLIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_384 */
|
|
||||||
#endif /* PSA_WANT_ALG_GCM */
|
|
||||||
#endif /* PSA_WANT_KEY_TYPE_CAMELLIA */
|
|
||||||
|
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
|
#if defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
|
||||||
#if defined(PSA_WANT_KEY_TYPE_AES)
|
#if defined(PSA_WANT_KEY_TYPE_AES)
|
||||||
#if defined(PSA_WANT_ALG_CCM)
|
#if defined(PSA_WANT_ALG_CCM)
|
||||||
@ -1421,29 +1309,6 @@ static const mbedtls_ssl_ciphersuite_t ciphersuite_definitions[] =
|
|||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
||||||
#endif /* PSA_WANT_ALG_SHA_384 */
|
#endif /* PSA_WANT_ALG_SHA_384 */
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED */
|
#endif /* MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED */
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_1)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA, "TLS-RSA-PSK-WITH-NULL-SHA",
|
|
||||||
MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA1, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
MBEDTLS_CIPHERSUITE_WEAK,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_1 */
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_256)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA256, "TLS-RSA-PSK-WITH-NULL-SHA256",
|
|
||||||
MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
MBEDTLS_CIPHERSUITE_WEAK,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(PSA_WANT_ALG_SHA_384)
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_NULL_SHA384, "TLS-RSA-PSK-WITH-NULL-SHA384",
|
|
||||||
MBEDTLS_CIPHER_NULL, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
MBEDTLS_CIPHERSUITE_WEAK,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif /* PSA_WANT_ALG_SHA_384 */
|
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
|
|
||||||
#endif /* MBEDTLS_CIPHER_NULL_CIPHER */
|
#endif /* MBEDTLS_CIPHER_NULL_CIPHER */
|
||||||
|
|
||||||
#if defined(PSA_WANT_KEY_TYPE_ARIA)
|
#if defined(PSA_WANT_KEY_TYPE_ARIA)
|
||||||
@ -1483,41 +1348,6 @@ static const mbedtls_ssl_ciphersuite_t ciphersuite_definitions[] =
|
|||||||
|
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
|
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
|
|
||||||
#if (defined(PSA_WANT_ALG_GCM) && defined(PSA_WANT_ALG_SHA_384))
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384,
|
|
||||||
"TLS-RSA-PSK-WITH-ARIA-256-GCM-SHA384",
|
|
||||||
MBEDTLS_CIPHER_ARIA_256_GCM, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif
|
|
||||||
#if (defined(PSA_WANT_ALG_CBC_NO_PADDING) && \
|
|
||||||
defined(PSA_WANT_ALG_SHA_384))
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384,
|
|
||||||
"TLS-RSA-PSK-WITH-ARIA-256-CBC-SHA384",
|
|
||||||
MBEDTLS_CIPHER_ARIA_256_CBC, MBEDTLS_MD_SHA384, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif
|
|
||||||
#if (defined(PSA_WANT_ALG_GCM) && defined(PSA_WANT_ALG_SHA_256))
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256,
|
|
||||||
"TLS-RSA-PSK-WITH-ARIA-128-GCM-SHA256",
|
|
||||||
MBEDTLS_CIPHER_ARIA_128_GCM, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif
|
|
||||||
#if (defined(PSA_WANT_ALG_CBC_NO_PADDING) && \
|
|
||||||
defined(PSA_WANT_ALG_SHA_256))
|
|
||||||
{ MBEDTLS_TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256,
|
|
||||||
"TLS-RSA-PSK-WITH-ARIA-128-CBC-SHA256",
|
|
||||||
MBEDTLS_CIPHER_ARIA_128_CBC, MBEDTLS_MD_SHA256, MBEDTLS_KEY_EXCHANGE_RSA_PSK,
|
|
||||||
0,
|
|
||||||
MBEDTLS_SSL_VERSION_TLS1_2, MBEDTLS_SSL_VERSION_TLS1_2 },
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED)
|
#if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED)
|
||||||
|
|
||||||
#if (defined(PSA_WANT_ALG_GCM) && defined(PSA_WANT_ALG_SHA_384))
|
#if (defined(PSA_WANT_ALG_GCM) && defined(PSA_WANT_ALG_SHA_384))
|
||||||
@ -1932,7 +1762,6 @@ mbedtls_pk_type_t mbedtls_ssl_get_ciphersuite_sig_pk_alg(const mbedtls_ssl_ciphe
|
|||||||
case MBEDTLS_KEY_EXCHANGE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
|
|
||||||
return MBEDTLS_PK_RSA;
|
return MBEDTLS_PK_RSA;
|
||||||
|
|
||||||
case MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA:
|
case MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA:
|
||||||
@ -1952,7 +1781,6 @@ psa_algorithm_t mbedtls_ssl_get_ciphersuite_sig_pk_psa_alg(const mbedtls_ssl_cip
|
|||||||
{
|
{
|
||||||
switch (info->key_exchange) {
|
switch (info->key_exchange) {
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
|
|
||||||
return PSA_ALG_RSA_PKCS1V15_CRYPT;
|
return PSA_ALG_RSA_PKCS1V15_CRYPT;
|
||||||
case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
|
||||||
@ -1975,7 +1803,6 @@ psa_key_usage_t mbedtls_ssl_get_ciphersuite_sig_pk_psa_usage(const mbedtls_ssl_c
|
|||||||
{
|
{
|
||||||
switch (info->key_exchange) {
|
switch (info->key_exchange) {
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
|
|
||||||
return PSA_KEY_USAGE_DECRYPT;
|
return PSA_KEY_USAGE_DECRYPT;
|
||||||
case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
|
||||||
@ -2036,7 +1863,6 @@ int mbedtls_ssl_ciphersuite_uses_psk(const mbedtls_ssl_ciphersuite_t *info)
|
|||||||
{
|
{
|
||||||
switch (info->key_exchange) {
|
switch (info->key_exchange) {
|
||||||
case MBEDTLS_KEY_EXCHANGE_PSK:
|
case MBEDTLS_KEY_EXCHANGE_PSK:
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
|
|
||||||
case MBEDTLS_KEY_EXCHANGE_DHE_PSK:
|
case MBEDTLS_KEY_EXCHANGE_DHE_PSK:
|
||||||
case MBEDTLS_KEY_EXCHANGE_ECDHE_PSK:
|
case MBEDTLS_KEY_EXCHANGE_ECDHE_PSK:
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -50,7 +50,6 @@ static inline int mbedtls_ssl_ciphersuite_no_pfs(const mbedtls_ssl_ciphersuite_t
|
|||||||
case MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA:
|
case MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_PSK:
|
case MBEDTLS_KEY_EXCHANGE_PSK:
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
|
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@ -93,7 +92,6 @@ static inline int mbedtls_ssl_ciphersuite_uses_srv_cert(const mbedtls_ssl_cipher
|
|||||||
{
|
{
|
||||||
switch (info->MBEDTLS_PRIVATE(key_exchange)) {
|
switch (info->MBEDTLS_PRIVATE(key_exchange)) {
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
|
|
||||||
case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_DHE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_ECDH_RSA:
|
case MBEDTLS_KEY_EXCHANGE_ECDH_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_ECDHE_RSA:
|
||||||
|
@ -7016,11 +7016,6 @@ static int ssl_compute_master(mbedtls_ssl_handshake_params *handshake,
|
|||||||
* Other secret is stored in premaster, where first 2 bytes hold the
|
* Other secret is stored in premaster, where first 2 bytes hold the
|
||||||
* length of the other key.
|
* length of the other key.
|
||||||
*/
|
*/
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
|
|
||||||
/* For RSA-PSK other key length is always 48 bytes. */
|
|
||||||
other_secret_len = 48;
|
|
||||||
other_secret = handshake->premaster + 2;
|
|
||||||
break;
|
|
||||||
case MBEDTLS_KEY_EXCHANGE_ECDHE_PSK:
|
case MBEDTLS_KEY_EXCHANGE_ECDHE_PSK:
|
||||||
case MBEDTLS_KEY_EXCHANGE_DHE_PSK:
|
case MBEDTLS_KEY_EXCHANGE_DHE_PSK:
|
||||||
other_secret_len = MBEDTLS_GET_UINT16_BE(handshake->premaster, 0);
|
other_secret_len = MBEDTLS_GET_UINT16_BE(handshake->premaster, 0);
|
||||||
@ -7357,21 +7352,6 @@ int mbedtls_ssl_psk_derive_premaster(mbedtls_ssl_context *ssl, mbedtls_key_excha
|
|||||||
p += psk_len;
|
p += psk_len;
|
||||||
} else
|
} else
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
|
#endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
if (key_ex == MBEDTLS_KEY_EXCHANGE_RSA_PSK) {
|
|
||||||
/*
|
|
||||||
* other_secret already set by the ClientKeyExchange message,
|
|
||||||
* and is 48 bytes long
|
|
||||||
*/
|
|
||||||
if (end - p < 2) {
|
|
||||||
return MBEDTLS_ERR_SSL_BAD_INPUT_DATA;
|
|
||||||
}
|
|
||||||
|
|
||||||
*p++ = 0;
|
|
||||||
*p++ = 48;
|
|
||||||
p += 48;
|
|
||||||
} else
|
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
|
#if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
|
||||||
if (key_ex == MBEDTLS_KEY_EXCHANGE_DHE_PSK) {
|
if (key_ex == MBEDTLS_KEY_EXCHANGE_DHE_PSK) {
|
||||||
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
||||||
@ -7835,10 +7815,6 @@ static int ssl_parse_certificate_coordinate(mbedtls_ssl_context *ssl,
|
|||||||
|
|
||||||
#if defined(MBEDTLS_SSL_SRV_C)
|
#if defined(MBEDTLS_SSL_SRV_C)
|
||||||
if (ssl->conf->endpoint == MBEDTLS_SSL_IS_SERVER) {
|
if (ssl->conf->endpoint == MBEDTLS_SSL_IS_SERVER) {
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA_PSK) {
|
|
||||||
return SSL_CERTIFICATE_SKIP;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (authmode == MBEDTLS_SSL_VERIFY_NONE) {
|
if (authmode == MBEDTLS_SSL_VERIFY_NONE) {
|
||||||
ssl->session_negotiate->verify_result =
|
ssl->session_negotiate->verify_result =
|
||||||
MBEDTLS_X509_BADCERT_SKIP_VERIFY;
|
MBEDTLS_X509_BADCERT_SKIP_VERIFY;
|
||||||
@ -9685,7 +9661,6 @@ int mbedtls_ssl_check_cert_usage(const mbedtls_x509_crt *cert,
|
|||||||
/* TLS 1.2 server part of the key exchange */
|
/* TLS 1.2 server part of the key exchange */
|
||||||
switch (ciphersuite->key_exchange) {
|
switch (ciphersuite->key_exchange) {
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA:
|
case MBEDTLS_KEY_EXCHANGE_RSA:
|
||||||
case MBEDTLS_KEY_EXCHANGE_RSA_PSK:
|
|
||||||
usage = MBEDTLS_X509_KU_KEY_ENCIPHERMENT;
|
usage = MBEDTLS_X509_KU_KEY_ENCIPHERMENT;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -1900,8 +1900,7 @@ static int ssl_parse_server_psk_hint(mbedtls_ssl_context *ssl,
|
|||||||
}
|
}
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED */
|
#endif /* MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED */
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED) || \
|
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED)
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
/*
|
/*
|
||||||
* Generate a pre-master secret and encrypt it with the server's RSA key
|
* Generate a pre-master secret and encrypt it with the server's RSA key
|
||||||
*/
|
*/
|
||||||
@ -1976,8 +1975,7 @@ static int ssl_write_encrypted_pms(mbedtls_ssl_context *ssl,
|
|||||||
#endif /* !MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
|
#endif /* !MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED ||
|
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
|
||||||
MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED) || \
|
#if defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED)
|
defined(MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED)
|
||||||
@ -2139,12 +2137,11 @@ static int ssl_parse_server_key_exchange(mbedtls_ssl_context *ssl)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ServerKeyExchange may be skipped with PSK and RSA-PSK when the server
|
* ServerKeyExchange may be skipped with PSK when the server
|
||||||
* doesn't use a psk_identity_hint
|
* doesn't use a psk_identity_hint
|
||||||
*/
|
*/
|
||||||
if (ssl->in_msg[0] != MBEDTLS_SSL_HS_SERVER_KEY_EXCHANGE) {
|
if (ssl->in_msg[0] != MBEDTLS_SSL_HS_SERVER_KEY_EXCHANGE) {
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_PSK ||
|
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_PSK) {
|
||||||
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA_PSK) {
|
|
||||||
/* Current message is probably either
|
/* Current message is probably either
|
||||||
* CertificateRequest or ServerHelloDone */
|
* CertificateRequest or ServerHelloDone */
|
||||||
ssl->keep_current_message = 1;
|
ssl->keep_current_message = 1;
|
||||||
@ -2174,7 +2171,6 @@ start_processing:
|
|||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED)
|
#if defined(MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED)
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_PSK ||
|
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_PSK ||
|
||||||
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA_PSK ||
|
|
||||||
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_DHE_PSK ||
|
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_DHE_PSK ||
|
||||||
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_ECDHE_PSK) {
|
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_ECDHE_PSK) {
|
||||||
if (ssl_parse_server_psk_hint(ssl, &p, end) != 0) {
|
if (ssl_parse_server_psk_hint(ssl, &p, end) != 0) {
|
||||||
@ -2188,14 +2184,11 @@ start_processing:
|
|||||||
} /* FALLTHROUGH */
|
} /* FALLTHROUGH */
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED */
|
#endif /* MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED */
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED) || \
|
#if defined(MBEDTLS_KEY_EXCHANGE_PSK_ENABLED)
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_PSK) {
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_PSK ||
|
|
||||||
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA_PSK) {
|
|
||||||
; /* nothing more to do */
|
; /* nothing more to do */
|
||||||
} else
|
} else
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED ||
|
#endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
|
||||||
MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED) || \
|
#if defined(MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED) || \
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
|
defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_DHE_RSA ||
|
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_DHE_RSA ||
|
||||||
@ -3050,14 +3043,6 @@ ecdh_calc_secret:
|
|||||||
content_len = 0;
|
content_len = 0;
|
||||||
} else
|
} else
|
||||||
#endif
|
#endif
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA_PSK) {
|
|
||||||
if ((ret = ssl_write_encrypted_pms(ssl, header_len,
|
|
||||||
&content_len, 2)) != 0) {
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
#endif
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
|
#if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_DHE_PSK) {
|
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_DHE_PSK) {
|
||||||
/*
|
/*
|
||||||
|
@ -3414,8 +3414,7 @@ static int ssl_parse_client_dh_public(mbedtls_ssl_context *ssl, unsigned char **
|
|||||||
#endif /* MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED ||
|
#endif /* MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED ||
|
||||||
MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED */
|
MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED */
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED) || \
|
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED)
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_SSL_ASYNC_PRIVATE)
|
#if defined(MBEDTLS_SSL_ASYNC_PRIVATE)
|
||||||
MBEDTLS_CHECK_RETURN_CRITICAL
|
MBEDTLS_CHECK_RETURN_CRITICAL
|
||||||
@ -3601,8 +3600,7 @@ static int ssl_parse_encrypted_pms(mbedtls_ssl_context *ssl,
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED ||
|
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_ENABLED */
|
||||||
MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED)
|
#if defined(MBEDTLS_KEY_EXCHANGE_SOME_PSK_ENABLED)
|
||||||
MBEDTLS_CHECK_RETURN_CRITICAL
|
MBEDTLS_CHECK_RETURN_CRITICAL
|
||||||
@ -3671,10 +3669,8 @@ static int ssl_parse_client_key_exchange(mbedtls_ssl_context *ssl)
|
|||||||
MBEDTLS_SSL_DEBUG_MSG(2, ("=> parse client key exchange"));
|
MBEDTLS_SSL_DEBUG_MSG(2, ("=> parse client key exchange"));
|
||||||
|
|
||||||
#if defined(MBEDTLS_SSL_ASYNC_PRIVATE) && \
|
#if defined(MBEDTLS_SSL_ASYNC_PRIVATE) && \
|
||||||
(defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED) || \
|
defined(MBEDTLS_KEY_EXCHANGE_RSA_ENABLED)
|
||||||
defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED))
|
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA &&
|
||||||
if ((ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA_PSK ||
|
|
||||||
ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA) &&
|
|
||||||
(ssl->handshake->async_in_progress != 0)) {
|
(ssl->handshake->async_in_progress != 0)) {
|
||||||
/* We've already read a record and there is an asynchronous
|
/* We've already read a record and there is an asynchronous
|
||||||
* operation in progress to decrypt it. So skip reading the
|
* operation in progress to decrypt it. So skip reading the
|
||||||
@ -3842,39 +3838,6 @@ static int ssl_parse_client_key_exchange(mbedtls_ssl_context *ssl)
|
|||||||
#endif /* !MBEDTLS_USE_PSA_CRYPTO */
|
#endif /* !MBEDTLS_USE_PSA_CRYPTO */
|
||||||
} else
|
} else
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
|
#endif /* MBEDTLS_KEY_EXCHANGE_PSK_ENABLED */
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED)
|
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_RSA_PSK) {
|
|
||||||
#if defined(MBEDTLS_SSL_ASYNC_PRIVATE)
|
|
||||||
if (ssl->handshake->async_in_progress != 0) {
|
|
||||||
/* There is an asynchronous operation in progress to
|
|
||||||
* decrypt the encrypted premaster secret, so skip
|
|
||||||
* directly to resuming this operation. */
|
|
||||||
MBEDTLS_SSL_DEBUG_MSG(3, ("PSK identity already parsed"));
|
|
||||||
/* Update p to skip the PSK identity. ssl_parse_encrypted_pms
|
|
||||||
* won't actually use it, but maintain p anyway for robustness. */
|
|
||||||
p += ssl->conf->psk_identity_len + 2;
|
|
||||||
} else
|
|
||||||
#endif /* MBEDTLS_SSL_ASYNC_PRIVATE */
|
|
||||||
if ((ret = ssl_parse_client_psk_identity(ssl, &p, end)) != 0) {
|
|
||||||
MBEDTLS_SSL_DEBUG_RET(1, ("ssl_parse_client_psk_identity"), ret);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((ret = ssl_parse_encrypted_pms(ssl, p, end, 2)) != 0) {
|
|
||||||
MBEDTLS_SSL_DEBUG_RET(1, ("ssl_parse_encrypted_pms"), ret);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if !defined(MBEDTLS_USE_PSA_CRYPTO)
|
|
||||||
if ((ret = mbedtls_ssl_psk_derive_premaster(ssl,
|
|
||||||
(mbedtls_key_exchange_type_t) ciphersuite_info->
|
|
||||||
key_exchange)) != 0) {
|
|
||||||
MBEDTLS_SSL_DEBUG_RET(1, "mbedtls_ssl_psk_derive_premaster", ret);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
#endif /* !MBEDTLS_USE_PSA_CRYPTO */
|
|
||||||
} else
|
|
||||||
#endif /* MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED */
|
|
||||||
#if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
|
#if defined(MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED)
|
||||||
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_DHE_PSK) {
|
if (ciphersuite_info->key_exchange == MBEDTLS_KEY_EXCHANGE_DHE_PSK) {
|
||||||
if ((ret = ssl_parse_client_psk_identity(ssl, &p, end)) != 0) {
|
if ((ret = ssl_parse_client_psk_identity(ssl, &p, end)) != 0) {
|
||||||
|
@ -369,10 +369,6 @@ add_common_ciphersuites()
|
|||||||
# Based on client's naming convention, all ciphersuite names will be
|
# Based on client's naming convention, all ciphersuite names will be
|
||||||
# translated into another naming format before sent to the client.
|
# translated into another naming format before sent to the client.
|
||||||
#
|
#
|
||||||
# NOTE: for some reason RSA-PSK doesn't work with OpenSSL,
|
|
||||||
# so RSA-PSK ciphersuites need to go in other sections, see
|
|
||||||
# https://github.com/Mbed-TLS/mbedtls/issues/1419
|
|
||||||
#
|
|
||||||
# ChachaPoly suites are here rather than in "common", as they were added in
|
# ChachaPoly suites are here rather than in "common", as they were added in
|
||||||
# GnuTLS in 3.5.0 and the CI only has 3.4.x so far.
|
# GnuTLS in 3.5.0 and the CI only has 3.4.x so far.
|
||||||
add_openssl_ciphersuites()
|
add_openssl_ciphersuites()
|
||||||
@ -514,18 +510,6 @@ add_gnutls_ciphersuites()
|
|||||||
TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384 \
|
TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384 \
|
||||||
TLS_PSK_WITH_NULL_SHA256 \
|
TLS_PSK_WITH_NULL_SHA256 \
|
||||||
TLS_PSK_WITH_NULL_SHA384 \
|
TLS_PSK_WITH_NULL_SHA384 \
|
||||||
TLS_RSA_PSK_WITH_AES_128_CBC_SHA \
|
|
||||||
TLS_RSA_PSK_WITH_AES_128_CBC_SHA256 \
|
|
||||||
TLS_RSA_PSK_WITH_AES_128_GCM_SHA256 \
|
|
||||||
TLS_RSA_PSK_WITH_AES_256_CBC_SHA \
|
|
||||||
TLS_RSA_PSK_WITH_AES_256_CBC_SHA384 \
|
|
||||||
TLS_RSA_PSK_WITH_AES_256_GCM_SHA384 \
|
|
||||||
TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256 \
|
|
||||||
TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256 \
|
|
||||||
TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384 \
|
|
||||||
TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384 \
|
|
||||||
TLS_RSA_PSK_WITH_NULL_SHA256 \
|
|
||||||
TLS_RSA_PSK_WITH_NULL_SHA384 \
|
|
||||||
"
|
"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@ -579,12 +563,6 @@ add_mbedtls_ciphersuites()
|
|||||||
TLS_PSK_WITH_ARIA_128_CBC_SHA256 \
|
TLS_PSK_WITH_ARIA_128_CBC_SHA256 \
|
||||||
TLS_PSK_WITH_ARIA_256_CBC_SHA384 \
|
TLS_PSK_WITH_ARIA_256_CBC_SHA384 \
|
||||||
TLS_PSK_WITH_NULL_SHA \
|
TLS_PSK_WITH_NULL_SHA \
|
||||||
TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256 \
|
|
||||||
TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256 \
|
|
||||||
TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384 \
|
|
||||||
TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384 \
|
|
||||||
TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256 \
|
|
||||||
TLS_RSA_PSK_WITH_NULL_SHA \
|
|
||||||
"
|
"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@ -642,7 +620,7 @@ setup_arguments()
|
|||||||
M_SERVER_ARGS="server_port=$PORT server_addr=0.0.0.0 force_version=$MODE"
|
M_SERVER_ARGS="server_port=$PORT server_addr=0.0.0.0 force_version=$MODE"
|
||||||
O_SERVER_ARGS="-accept $PORT -cipher ALL,COMPLEMENTOFALL -$O_MODE"
|
O_SERVER_ARGS="-accept $PORT -cipher ALL,COMPLEMENTOFALL -$O_MODE"
|
||||||
G_SERVER_ARGS="-p $PORT --http $G_MODE"
|
G_SERVER_ARGS="-p $PORT --http $G_MODE"
|
||||||
G_SERVER_PRIO="NORMAL:${G_PRIO_CCM}+NULL:+MD5:+PSK:+DHE-PSK:+ECDHE-PSK:+SHA256:+SHA384:+RSA-PSK:-VERS-TLS-ALL:$G_PRIO_MODE"
|
G_SERVER_PRIO="NORMAL:${G_PRIO_CCM}+NULL:+MD5:+PSK:+DHE-PSK:+ECDHE-PSK:+SHA256:+SHA384:-VERS-TLS-ALL:$G_PRIO_MODE"
|
||||||
|
|
||||||
# The default prime for `openssl s_server` depends on the version:
|
# The default prime for `openssl s_server` depends on the version:
|
||||||
# * OpenSSL <= 1.0.2a: 512-bit
|
# * OpenSSL <= 1.0.2a: 512-bit
|
||||||
@ -751,11 +729,9 @@ setup_arguments()
|
|||||||
;;
|
;;
|
||||||
|
|
||||||
"PSK")
|
"PSK")
|
||||||
# give RSA-PSK-capable server a RSA cert
|
M_SERVER_ARGS="$M_SERVER_ARGS psk=6162636465666768696a6b6c6d6e6f70 ca_file=none"
|
||||||
# (should be a separate type, but harder to close with openssl)
|
|
||||||
M_SERVER_ARGS="$M_SERVER_ARGS psk=6162636465666768696a6b6c6d6e6f70 ca_file=none crt_file=$DATA_FILES_PATH/server2-sha256.crt key_file=$DATA_FILES_PATH/server2.key"
|
|
||||||
O_SERVER_ARGS="$O_SERVER_ARGS -psk 6162636465666768696a6b6c6d6e6f70 -nocert"
|
O_SERVER_ARGS="$O_SERVER_ARGS -psk 6162636465666768696a6b6c6d6e6f70 -nocert"
|
||||||
G_SERVER_ARGS="$G_SERVER_ARGS --x509certfile $DATA_FILES_PATH/server2-sha256.crt --x509keyfile $DATA_FILES_PATH/server2.key --pskpasswd $DATA_FILES_PATH/passwd.psk"
|
G_SERVER_ARGS="$G_SERVER_ARGS --pskpasswd $DATA_FILES_PATH/passwd.psk"
|
||||||
|
|
||||||
M_CLIENT_ARGS="$M_CLIENT_ARGS psk=6162636465666768696a6b6c6d6e6f70 crt_file=none key_file=none"
|
M_CLIENT_ARGS="$M_CLIENT_ARGS psk=6162636465666768696a6b6c6d6e6f70 crt_file=none key_file=none"
|
||||||
O_CLIENT_ARGS="$O_CLIENT_ARGS -psk 6162636465666768696a6b6c6d6e6f70"
|
O_CLIENT_ARGS="$O_CLIENT_ARGS -psk 6162636465666768696a6b6c6d6e6f70"
|
||||||
|
@ -1243,7 +1243,6 @@ config_psa_crypto_config_accel_ecc_ffdh_no_bignum () {
|
|||||||
scripts/config.py unset MBEDTLS_PKCS1_V21
|
scripts/config.py unset MBEDTLS_PKCS1_V21
|
||||||
scripts/config.py unset MBEDTLS_X509_RSASSA_PSS_SUPPORT
|
scripts/config.py unset MBEDTLS_X509_RSASSA_PSS_SUPPORT
|
||||||
# Also disable key exchanges that depend on RSA
|
# Also disable key exchanges that depend on RSA
|
||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
|
|
||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
|
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
|
||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
|
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
|
||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
|
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
|
||||||
@ -1619,7 +1618,6 @@ component_test_new_psa_want_key_pair_symbol () {
|
|||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
|
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
|
||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
|
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
|
||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
|
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
|
||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
|
|
||||||
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
|
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
|
||||||
scripts/config.py unset MBEDTLS_RSA_C
|
scripts/config.py unset MBEDTLS_RSA_C
|
||||||
scripts/config.py unset MBEDTLS_X509_RSASSA_PSS_SUPPORT
|
scripts/config.py unset MBEDTLS_X509_RSASSA_PSS_SUPPORT
|
||||||
|
@ -312,7 +312,6 @@ REVERSE_DEPENDENCIES = {
|
|||||||
'PSA_WANT_ALG_RSA_PSS'],
|
'PSA_WANT_ALG_RSA_PSS'],
|
||||||
'MBEDTLS_PKCS1_V15': ['MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED',
|
'MBEDTLS_PKCS1_V15': ['MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED',
|
||||||
'MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED',
|
'MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED',
|
||||||
'MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED',
|
|
||||||
'MBEDTLS_KEY_EXCHANGE_RSA_ENABLED',
|
'MBEDTLS_KEY_EXCHANGE_RSA_ENABLED',
|
||||||
'PSA_WANT_ALG_RSA_PKCS1V15_CRYPT',
|
'PSA_WANT_ALG_RSA_PKCS1V15_CRYPT',
|
||||||
'PSA_WANT_ALG_RSA_PKCS1V15_SIGN'],
|
'PSA_WANT_ALG_RSA_PKCS1V15_SIGN'],
|
||||||
|
179
tests/ssl-opt.sh
179
tests/ssl-opt.sh
@ -312,7 +312,6 @@ TLS1_2_KEY_EXCHANGES_WITH_CERT="MBEDTLS_KEY_EXCHANGE_RSA_ENABLED \
|
|||||||
MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED \
|
MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED \
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED \
|
MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED \
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED \
|
MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED \
|
||||||
MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED \
|
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED \
|
MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED \
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED"
|
MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED"
|
||||||
|
|
||||||
@ -322,8 +321,7 @@ TLS1_2_KEY_EXCHANGES_WITH_ECDSA_CERT="MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED \
|
|||||||
TLS1_2_KEY_EXCHANGES_WITH_CERT_WO_ECDH="MBEDTLS_KEY_EXCHANGE_RSA_ENABLED \
|
TLS1_2_KEY_EXCHANGES_WITH_CERT_WO_ECDH="MBEDTLS_KEY_EXCHANGE_RSA_ENABLED \
|
||||||
MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED \
|
MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED \
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED \
|
MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED \
|
||||||
MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED \
|
MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED"
|
||||||
MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED"
|
|
||||||
|
|
||||||
requires_certificate_authentication () {
|
requires_certificate_authentication () {
|
||||||
if is_config_enabled MBEDTLS_SSL_PROTO_TLS1_3
|
if is_config_enabled MBEDTLS_SSL_PROTO_TLS1_3
|
||||||
@ -584,7 +582,7 @@ adapt_cmd_for_psk () {
|
|||||||
# with a pre-shared key, skip it. If the test looks like it's already using
|
# with a pre-shared key, skip it. If the test looks like it's already using
|
||||||
# a pre-shared key, do nothing.
|
# a pre-shared key, do nothing.
|
||||||
#
|
#
|
||||||
# This code does not consider builds with ECDHE-PSK or RSA-PSK.
|
# This code does not consider builds with ECDHE-PSK.
|
||||||
#
|
#
|
||||||
# Inputs:
|
# Inputs:
|
||||||
# * $CLI_CMD, $SRV_CMD, $PXY_CMD: client/server/proxy commands.
|
# * $CLI_CMD, $SRV_CMD, $PXY_CMD: client/server/proxy commands.
|
||||||
@ -2537,22 +2535,6 @@ run_test "Opaque key for server authentication: DHE-RSA" \
|
|||||||
-S "error" \
|
-S "error" \
|
||||||
-C "error"
|
-C "error"
|
||||||
|
|
||||||
requires_config_enabled MBEDTLS_X509_CRT_PARSE_C
|
|
||||||
requires_config_enabled MBEDTLS_RSA_C
|
|
||||||
requires_hash_alg SHA_256
|
|
||||||
run_test "Opaque key for server authentication: RSA-PSK" \
|
|
||||||
"$P_SRV debug_level=1 key_opaque=1 key_opaque_algs=rsa-decrypt,none \
|
|
||||||
psk=73776f726466697368 psk_identity=foo" \
|
|
||||||
"$P_CLI force_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA256 \
|
|
||||||
psk=73776f726466697368 psk_identity=foo" \
|
|
||||||
0 \
|
|
||||||
-c "Verifying peer X.509 certificate... ok" \
|
|
||||||
-c "Ciphersuite is TLS-RSA-PSK-" \
|
|
||||||
-s "key types: Opaque, Opaque" \
|
|
||||||
-s "Ciphersuite is TLS-RSA-PSK-" \
|
|
||||||
-S "error" \
|
|
||||||
-C "error"
|
|
||||||
|
|
||||||
requires_config_enabled MBEDTLS_X509_CRT_PARSE_C
|
requires_config_enabled MBEDTLS_X509_CRT_PARSE_C
|
||||||
requires_config_enabled MBEDTLS_RSA_C
|
requires_config_enabled MBEDTLS_RSA_C
|
||||||
requires_hash_alg SHA_256
|
requires_hash_alg SHA_256
|
||||||
@ -8584,50 +8566,6 @@ run_test "PSK callback: opaque psk on client, no callback, SHA-384, EMS" \
|
|||||||
-S "SSL - Unknown identity received" \
|
-S "SSL - Unknown identity received" \
|
||||||
-S "SSL - Verification of the message MAC failed"
|
-S "SSL - Verification of the message MAC failed"
|
||||||
|
|
||||||
run_test "PSK callback: opaque rsa-psk on client, no callback" \
|
|
||||||
"$P_SRV extended_ms=0 debug_level=1 psk=73776f726466697368 psk_identity=foo" \
|
|
||||||
"$P_CLI extended_ms=0 debug_level=1 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA256 \
|
|
||||||
psk_identity=foo psk=73776f726466697368 psk_opaque=1" \
|
|
||||||
0 \
|
|
||||||
-C "session hash for extended master secret"\
|
|
||||||
-S "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: opaque rsa-psk on client, no callback, SHA-384" \
|
|
||||||
"$P_SRV extended_ms=0 debug_level=1 psk=73776f726466697368 psk_identity=foo" \
|
|
||||||
"$P_CLI extended_ms=0 debug_level=1 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384 \
|
|
||||||
psk_identity=foo psk=73776f726466697368 psk_opaque=1" \
|
|
||||||
0 \
|
|
||||||
-C "session hash for extended master secret"\
|
|
||||||
-S "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: opaque rsa-psk on client, no callback, EMS" \
|
|
||||||
"$P_SRV extended_ms=1 debug_level=3 psk=73776f726466697368 psk_identity=foo" \
|
|
||||||
"$P_CLI extended_ms=1 debug_level=3 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA \
|
|
||||||
psk_identity=foo psk=73776f726466697368 psk_opaque=1" \
|
|
||||||
0 \
|
|
||||||
-c "session hash for extended master secret"\
|
|
||||||
-s "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: opaque rsa-psk on client, no callback, SHA-384, EMS" \
|
|
||||||
"$P_SRV extended_ms=1 debug_level=3 psk=73776f726466697368 psk_identity=foo" \
|
|
||||||
"$P_CLI extended_ms=1 debug_level=3 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384 \
|
|
||||||
psk_identity=foo psk=73776f726466697368 psk_opaque=1" \
|
|
||||||
0 \
|
|
||||||
-c "session hash for extended master secret"\
|
|
||||||
-s "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: opaque ecdhe-psk on client, no callback" \
|
run_test "PSK callback: opaque ecdhe-psk on client, no callback" \
|
||||||
"$P_SRV extended_ms=0 debug_level=1 psk=73776f726466697368 psk_identity=foo" \
|
"$P_SRV extended_ms=0 debug_level=1 psk=73776f726466697368 psk_identity=foo" \
|
||||||
"$P_CLI extended_ms=0 debug_level=1 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA256 \
|
"$P_CLI extended_ms=0 debug_level=1 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA256 \
|
||||||
@ -8762,52 +8700,6 @@ run_test "PSK callback: raw psk on client, static opaque on server, no callba
|
|||||||
-S "SSL - Unknown identity received" \
|
-S "SSL - Unknown identity received" \
|
||||||
-S "SSL - Verification of the message MAC failed"
|
-S "SSL - Verification of the message MAC failed"
|
||||||
|
|
||||||
run_test "PSK callback: raw rsa-psk on client, static opaque on server, no callback" \
|
|
||||||
"$P_SRV extended_ms=0 debug_level=5 psk=73776f726466697368 psk_identity=foo psk_opaque=1 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA" \
|
|
||||||
"$P_CLI extended_ms=0 debug_level=5 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA \
|
|
||||||
psk_identity=foo psk=73776f726466697368" \
|
|
||||||
0 \
|
|
||||||
-C "session hash for extended master secret"\
|
|
||||||
-S "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: raw rsa-psk on client, static opaque on server, no callback, SHA-384" \
|
|
||||||
"$P_SRV extended_ms=0 debug_level=1 psk=73776f726466697368 psk_identity=foo psk_opaque=1 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384" \
|
|
||||||
"$P_CLI extended_ms=0 debug_level=1 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384 \
|
|
||||||
psk_identity=foo psk=73776f726466697368" \
|
|
||||||
0 \
|
|
||||||
-C "session hash for extended master secret"\
|
|
||||||
-S "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: raw rsa-psk on client, static opaque on server, no callback, EMS" \
|
|
||||||
"$P_SRV debug_level=3 psk=73776f726466697368 psk_identity=foo psk_opaque=1 min_version=tls12 \
|
|
||||||
force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA extended_ms=1" \
|
|
||||||
"$P_CLI debug_level=3 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA \
|
|
||||||
psk_identity=foo psk=73776f726466697368 extended_ms=1" \
|
|
||||||
0 \
|
|
||||||
-c "session hash for extended master secret"\
|
|
||||||
-s "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: raw rsa-psk on client, static opaque on server, no callback, EMS, SHA384" \
|
|
||||||
"$P_SRV debug_level=3 psk=73776f726466697368 psk_identity=foo psk_opaque=1 min_version=tls12 \
|
|
||||||
force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384 extended_ms=1" \
|
|
||||||
"$P_CLI debug_level=3 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384 \
|
|
||||||
psk_identity=foo psk=73776f726466697368 extended_ms=1" \
|
|
||||||
0 \
|
|
||||||
-c "session hash for extended master secret"\
|
|
||||||
-s "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: raw ecdhe-psk on client, static opaque on server, no callback" \
|
run_test "PSK callback: raw ecdhe-psk on client, static opaque on server, no callback" \
|
||||||
"$P_SRV extended_ms=0 debug_level=5 psk=73776f726466697368 psk_identity=foo psk_opaque=1 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA" \
|
"$P_SRV extended_ms=0 debug_level=5 psk=73776f726466697368 psk_identity=foo psk_opaque=1 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA" \
|
||||||
"$P_CLI extended_ms=0 debug_level=5 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA \
|
"$P_CLI extended_ms=0 debug_level=5 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA \
|
||||||
@ -8946,52 +8838,6 @@ run_test "PSK callback: raw psk on client, no static PSK on server, opaque PS
|
|||||||
-S "SSL - Unknown identity received" \
|
-S "SSL - Unknown identity received" \
|
||||||
-S "SSL - Verification of the message MAC failed"
|
-S "SSL - Verification of the message MAC failed"
|
||||||
|
|
||||||
run_test "PSK callback: raw rsa-psk on client, no static RSA-PSK on server, opaque RSA-PSK from callback" \
|
|
||||||
"$P_SRV extended_ms=0 debug_level=3 psk_list=abc,dead,def,beef psk_list_opaque=1 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA" \
|
|
||||||
"$P_CLI extended_ms=0 debug_level=3 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA \
|
|
||||||
psk_identity=def psk=beef" \
|
|
||||||
0 \
|
|
||||||
-C "session hash for extended master secret"\
|
|
||||||
-S "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: raw rsa-psk on client, no static RSA-PSK on server, opaque RSA-PSK from callback, SHA-384" \
|
|
||||||
"$P_SRV extended_ms=0 debug_level=3 psk_list=abc,dead,def,beef psk_list_opaque=1 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384" \
|
|
||||||
"$P_CLI extended_ms=0 debug_level=3 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384 \
|
|
||||||
psk_identity=def psk=beef" \
|
|
||||||
0 \
|
|
||||||
-C "session hash for extended master secret"\
|
|
||||||
-S "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: raw rsa-psk on client, no static RSA-PSK on server, opaque RSA-PSK from callback, EMS" \
|
|
||||||
"$P_SRV debug_level=3 psk_list=abc,dead,def,beef psk_list_opaque=1 min_version=tls12 \
|
|
||||||
force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA extended_ms=1" \
|
|
||||||
"$P_CLI debug_level=3 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA \
|
|
||||||
psk_identity=abc psk=dead extended_ms=1" \
|
|
||||||
0 \
|
|
||||||
-c "session hash for extended master secret"\
|
|
||||||
-s "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: raw rsa-psk on client, no static RSA-PSK on server, opaque RSA-PSK from callback, EMS, SHA384" \
|
|
||||||
"$P_SRV debug_level=3 psk_list=abc,dead,def,beef psk_list_opaque=1 min_version=tls12 \
|
|
||||||
force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384 extended_ms=1" \
|
|
||||||
"$P_CLI debug_level=3 min_version=tls12 force_ciphersuite=TLS-RSA-PSK-WITH-AES-256-CBC-SHA384 \
|
|
||||||
psk_identity=abc psk=dead extended_ms=1" \
|
|
||||||
0 \
|
|
||||||
-c "session hash for extended master secret"\
|
|
||||||
-s "session hash for extended master secret"\
|
|
||||||
-S "SSL - The handshake negotiation failed" \
|
|
||||||
-S "SSL - Unknown identity received" \
|
|
||||||
-S "SSL - Verification of the message MAC failed"
|
|
||||||
|
|
||||||
run_test "PSK callback: raw ecdhe-psk on client, no static ECDHE-PSK on server, opaque ECDHE-PSK from callback" \
|
run_test "PSK callback: raw ecdhe-psk on client, no static ECDHE-PSK on server, opaque ECDHE-PSK from callback" \
|
||||||
"$P_SRV extended_ms=0 debug_level=3 psk_list=abc,dead,def,beef psk_list_opaque=1 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA" \
|
"$P_SRV extended_ms=0 debug_level=3 psk_list=abc,dead,def,beef psk_list_opaque=1 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA" \
|
||||||
"$P_CLI extended_ms=0 debug_level=3 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA \
|
"$P_CLI extended_ms=0 debug_level=3 min_version=tls12 force_ciphersuite=TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA \
|
||||||
@ -9995,27 +9841,6 @@ run_test "SSL async private: decrypt, delay=1" \
|
|||||||
-s "Async resume (slot [0-9]): call 0 more times." \
|
-s "Async resume (slot [0-9]): call 0 more times." \
|
||||||
-s "Async resume (slot [0-9]): decrypt done, status=0"
|
-s "Async resume (slot [0-9]): decrypt done, status=0"
|
||||||
|
|
||||||
requires_config_enabled MBEDTLS_SSL_ASYNC_PRIVATE
|
|
||||||
run_test "SSL async private: decrypt RSA-PSK, delay=0" \
|
|
||||||
"$P_SRV psk=73776f726466697368 \
|
|
||||||
async_operations=d async_private_delay1=0 async_private_delay2=0" \
|
|
||||||
"$P_CLI psk=73776f726466697368 \
|
|
||||||
force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA256" \
|
|
||||||
0 \
|
|
||||||
-s "Async decrypt callback: using key slot " \
|
|
||||||
-s "Async resume (slot [0-9]): decrypt done, status=0"
|
|
||||||
|
|
||||||
requires_config_enabled MBEDTLS_SSL_ASYNC_PRIVATE
|
|
||||||
run_test "SSL async private: decrypt RSA-PSK, delay=1" \
|
|
||||||
"$P_SRV psk=73776f726466697368 \
|
|
||||||
async_operations=d async_private_delay1=1 async_private_delay2=1" \
|
|
||||||
"$P_CLI psk=73776f726466697368 \
|
|
||||||
force_ciphersuite=TLS-RSA-PSK-WITH-AES-128-CBC-SHA256" \
|
|
||||||
0 \
|
|
||||||
-s "Async decrypt callback: using key slot " \
|
|
||||||
-s "Async resume (slot [0-9]): call 0 more times." \
|
|
||||||
-s "Async resume (slot [0-9]): decrypt done, status=0"
|
|
||||||
|
|
||||||
requires_config_enabled MBEDTLS_SSL_ASYNC_PRIVATE
|
requires_config_enabled MBEDTLS_SSL_ASYNC_PRIVATE
|
||||||
run_test "SSL async private: sign callback not present" \
|
run_test "SSL async private: sign callback not present" \
|
||||||
"$P_SRV \
|
"$P_SRV \
|
||||||
|
@ -452,26 +452,6 @@ Handshake, select RSA-WITH-AES-256-CBC-SHA256, opaque, bad usage
|
|||||||
depends_on:PSA_WANT_ALG_SHA_256:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_RSA_ENABLED:MBEDTLS_USE_PSA_CRYPTO:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
depends_on:PSA_WANT_ALG_SHA_256:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_RSA_ENABLED:MBEDTLS_USE_PSA_CRYPTO:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||||
handshake_ciphersuite_select:"TLS-RSA-WITH-AES-256-CBC-SHA256":MBEDTLS_PK_RSA:"":PSA_ALG_RSA_PKCS1V15_CRYPT:PSA_ALG_NONE:PSA_KEY_USAGE_DERIVE:MBEDTLS_ERR_SSL_HANDSHAKE_FAILURE:0
|
handshake_ciphersuite_select:"TLS-RSA-WITH-AES-256-CBC-SHA256":MBEDTLS_PK_RSA:"":PSA_ALG_RSA_PKCS1V15_CRYPT:PSA_ALG_NONE:PSA_KEY_USAGE_DERIVE:MBEDTLS_ERR_SSL_HANDSHAKE_FAILURE:0
|
||||||
|
|
||||||
Handshake, select RSA-PSK-WITH-AES-256-CBC-SHA384, non-opaque
|
|
||||||
depends_on:PSA_WANT_ALG_SHA_384:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
|
||||||
handshake_ciphersuite_select:"TLS-RSA-PSK-WITH-AES-256-CBC-SHA384":MBEDTLS_PK_RSA:"abc123":PSA_ALG_NONE:PSA_ALG_NONE:0:0:MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384
|
|
||||||
|
|
||||||
Handshake, select RSA-PSK-WITH-AES-256-CBC-SHA384, opaque
|
|
||||||
depends_on:PSA_WANT_ALG_SHA_384:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED:MBEDTLS_USE_PSA_CRYPTO:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
|
||||||
handshake_ciphersuite_select:"TLS-RSA-PSK-WITH-AES-256-CBC-SHA384":MBEDTLS_PK_RSA:"abc123":PSA_ALG_RSA_PKCS1V15_CRYPT:PSA_ALG_NONE:PSA_KEY_USAGE_DECRYPT:0:MBEDTLS_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384
|
|
||||||
|
|
||||||
Handshake, select RSA-PSK-WITH-AES-256-CBC-SHA384, opaque, bad alg
|
|
||||||
depends_on:PSA_WANT_ALG_SHA_384:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED:MBEDTLS_USE_PSA_CRYPTO:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
|
||||||
handshake_ciphersuite_select:"TLS-RSA-PSK-WITH-AES-256-CBC-SHA384":MBEDTLS_PK_RSA:"abc123":PSA_ALG_RSA_PKCS1V15_SIGN(PSA_ALG_ANY_HASH):PSA_ALG_NONE:PSA_KEY_USAGE_DECRYPT:MBEDTLS_ERR_SSL_HANDSHAKE_FAILURE:0
|
|
||||||
|
|
||||||
Handshake, select RSA-PSK-WITH-AES-256-CBC-SHA384, opaque, bad usage
|
|
||||||
depends_on:PSA_WANT_ALG_SHA_384:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED:MBEDTLS_USE_PSA_CRYPTO:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
|
||||||
handshake_ciphersuite_select:"TLS-RSA-PSK-WITH-AES-256-CBC-SHA384":MBEDTLS_PK_RSA:"abc123":PSA_ALG_RSA_PKCS1V15_CRYPT:PSA_ALG_NONE:PSA_KEY_USAGE_DERIVE:MBEDTLS_ERR_SSL_HANDSHAKE_FAILURE:0
|
|
||||||
|
|
||||||
Handshake, select RSA-PSK-WITH-AES-256-CBC-SHA384, opaque, no psk
|
|
||||||
depends_on:PSA_WANT_ALG_SHA_384:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED:MBEDTLS_USE_PSA_CRYPTO:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
|
||||||
handshake_ciphersuite_select:"TLS-RSA-PSK-WITH-AES-256-CBC-SHA384":MBEDTLS_PK_RSA:"":PSA_ALG_RSA_PKCS1V15_CRYPT:PSA_ALG_NONE:PSA_KEY_USAGE_DECRYPT:MBEDTLS_ERR_SSL_HANDSHAKE_FAILURE:0
|
|
||||||
|
|
||||||
Handshake, select DHE-RSA-WITH-AES-256-GCM-SHA384, non-opaque
|
Handshake, select DHE-RSA-WITH-AES-256-GCM-SHA384, non-opaque
|
||||||
depends_on:PSA_WANT_ALG_SHA_384:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_GCM:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
depends_on:PSA_WANT_ALG_SHA_384:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_GCM:MBEDTLS_RSA_C:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||||
handshake_ciphersuite_select:"TLS-DHE-RSA-WITH-AES-256-GCM-SHA384":MBEDTLS_PK_RSA:"":PSA_ALG_NONE:PSA_ALG_NONE:0:0:MBEDTLS_TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
|
handshake_ciphersuite_select:"TLS-DHE-RSA-WITH-AES-256-GCM-SHA384":MBEDTLS_PK_RSA:"":PSA_ALG_NONE:PSA_ALG_NONE:0:0:MBEDTLS_TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
|
||||||
|
@ -7019,12 +7019,11 @@ static psa_status_t psa_tls12_prf_psk_to_ms_set_key(
|
|||||||
* uint16 with the value N, and the PSK itself.
|
* uint16 with the value N, and the PSK itself.
|
||||||
*
|
*
|
||||||
* mixed-PSK:
|
* mixed-PSK:
|
||||||
* In a DHE-PSK, RSA-PSK, ECDHE-PSK the premaster secret is formed as
|
* In a DHE-PSK, ECDHE-PSK the premaster secret is formed as
|
||||||
* follows: concatenate a uint16 with the length of the other secret,
|
* follows: concatenate a uint16 with the length of the other secret,
|
||||||
* the other secret itself, uint16 with the length of PSK, and the
|
* the other secret itself, uint16 with the length of PSK, and the
|
||||||
* PSK itself.
|
* PSK itself.
|
||||||
* For details please check:
|
* For details please check:
|
||||||
* - RFC 4279, Section 4 for the definition of RSA-PSK,
|
|
||||||
* - RFC 4279, Section 3 for the definition of DHE-PSK,
|
* - RFC 4279, Section 3 for the definition of DHE-PSK,
|
||||||
* - RFC 5489 for the definition of ECDHE-PSK.
|
* - RFC 5489 for the definition of ECDHE-PSK.
|
||||||
*/
|
*/
|
||||||
|
@ -2020,13 +2020,6 @@
|
|||||||
* this input may be an output of `psa_raw_key_agreement()` passed with
|
* this input may be an output of `psa_raw_key_agreement()` passed with
|
||||||
* psa_key_derivation_input_bytes(), or an equivalent input passed with
|
* psa_key_derivation_input_bytes(), or an equivalent input passed with
|
||||||
* psa_key_derivation_input_bytes() or psa_key_derivation_input_key().
|
* psa_key_derivation_input_bytes() or psa_key_derivation_input_key().
|
||||||
* - for a RSA-PSK cipher suite (RFC 4279, Section 4), the other secret
|
|
||||||
* should be the 48-byte client challenge (the PreMasterSecret of
|
|
||||||
* (RFC 5246, Section 7.4.7.1)) concatenation of the TLS version and
|
|
||||||
* a 46-byte random string chosen by the client. On the server, this is
|
|
||||||
* typically an output of psa_asymmetric_decrypt() using
|
|
||||||
* PSA_ALG_RSA_PKCS1V15_CRYPT, passed to the key derivation operation
|
|
||||||
* with `psa_key_derivation_input_bytes()`.
|
|
||||||
*
|
*
|
||||||
* For example, `PSA_ALG_TLS12_PSK_TO_MS(PSA_ALG_SHA_256)` represents the
|
* For example, `PSA_ALG_TLS12_PSK_TO_MS(PSA_ALG_SHA_256)` represents the
|
||||||
* TLS-1.2 PSK to MasterSecret derivation PRF using HMAC-SHA-256.
|
* TLS-1.2 PSK to MasterSecret derivation PRF using HMAC-SHA-256.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user