mirror of
https://github.com/yuzu-mirror/mbedtls.git
synced 2026-04-05 06:26:52 +00:00
tinyCrypt: Initial commit towards ECDHE support
This commit is a first step towards using uECC for ECDH during TLS handshakes.
This commit is contained in:
parent
36ae758798
commit
e12aafbdc7
4 changed files with 155 additions and 21 deletions
|
|
@ -53,6 +53,11 @@
|
|||
#include "ecjpake.h"
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_USE_TINYCRYPT)
|
||||
#include "tinycrypt/ecc.h"
|
||||
#include "tinycrypt/ecc_dh.h"
|
||||
#endif
|
||||
|
||||
#if ( defined(__ARMCC_VERSION) || defined(_MSC_VER) ) && \
|
||||
!defined(inline) && !defined(__cplusplus)
|
||||
#define inline __inline
|
||||
|
|
@ -381,10 +386,17 @@ struct mbedtls_ssl_handshake_params
|
|||
size_t ecjpake_cache_len; /*!< Length of cached data */
|
||||
#endif
|
||||
#endif /* MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED */
|
||||
#if defined(MBEDTLS_ECDH_C) || defined(MBEDTLS_ECDSA_C) || \
|
||||
#if defined(MBEDTLS_ECDH_C) || \
|
||||
defined(MBEDTLS_ECDSA_C) || \
|
||||
defined(MBEDTLS_USE_TINYCRYPT) || \
|
||||
defined(MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED)
|
||||
uint16_t curve_tls_id; /*!< TLS ID of EC for ECDHE. */
|
||||
#endif
|
||||
#if defined(MBEDTLS_USE_TINYCRYPT)
|
||||
uint8_t ecdh_privkey[NUM_ECC_BYTES];
|
||||
uint8_t ecdh_ownpubkey[2*NUM_ECC_BYTES];
|
||||
uint8_t ecdh_peerkey[2*NUM_ECC_BYTES];
|
||||
#endif /* MBEDTLS_USE_TINYCRYPT */
|
||||
#if defined(MBEDTLS_KEY_EXCHANGE__SOME__PSK_ENABLED)
|
||||
unsigned char *psk; /*!< PSK from the callback */
|
||||
size_t psk_len; /*!< Length of PSK from callback */
|
||||
|
|
@ -890,6 +902,10 @@ int mbedtls_ssl_handle_message_type( mbedtls_ssl_context *ssl );
|
|||
int mbedtls_ssl_prepare_handshake_record( mbedtls_ssl_context *ssl );
|
||||
void mbedtls_ssl_update_handshake_status( mbedtls_ssl_context *ssl );
|
||||
|
||||
#if defined(MBEDTLS_USE_TINYCRYPT)
|
||||
int mbetls_uecc_rng_wrapper( uint8_t *dest, unsigned int size );
|
||||
#endif
|
||||
|
||||
/**
|
||||
* \brief Update record layer
|
||||
*
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue