Calculate hashes of ssl encryption and decryption keys
Optimize the key switching mechanism to set the key only if
a different operation is performed with the context.
Signed-off-by: Andrzej Kurek <andrzej.kurek@arm.com>
diff --git a/include/mbedtls/ssl_internal.h b/include/mbedtls/ssl_internal.h
index 40d246e..a1c5d1d 100644
--- a/include/mbedtls/ssl_internal.h
+++ b/include/mbedtls/ssl_internal.h
@@ -760,7 +760,11 @@
unsigned char *key_enc;
unsigned char *key_dec;
unsigned int key_bitlen;
- mbedtls_cipher_context_t cipher_ctx; /*!< encryption/decryption context */
+ mbedtls_cipher_context_t cipher_ctx; /*!< encryption/decryption context */
+#if defined(MBEDTLS_VALIDATE_SSL_KEYS_INTEGRITY)
+ uint32_t key_enc_hash; /*!< hash of the encryption key */
+ uint32_t key_dec_hash; /*!< hash of the decryption key */
+#endif
#else
mbedtls_cipher_context_t cipher_ctx_enc; /*!< encryption context */
mbedtls_cipher_context_t cipher_ctx_dec; /*!< decryption context */