Within the targets directory for the mbed TLS feature I’ve found support for hardware acceleration that uses the STM32 Crypto and Hash peripherals (provided by STM32F7xx_HAL_Driver).
In my application this works fine.
While using the cipher suite TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384, I was wondering why there is only a aes_alt.c implementation and not a gcm_alt.c implementation to support AES-GCM hardware acceleration by STM32 crypto peripheral.
Searching the code base for AES, I only found the AES-ECB and AES-CBC modes use the HW STM32 crypto.
See stm32f7xx_hal_cryp_ex.h that offers the following interfaces for AES-GCM support by HW:
HAL_CRYPEx_AESGCM_Encrypt();
HAL_CRYPEx_AESGCM_Decrypt();
HAL_CRYPEx_AESGCM_Finish();
Can performance benefits be expected by properly implementing a gcm_alt.c module the uses the STM32 crypto peripheral?
Is anyone already working or thinking about a gcm_alt implementation for STM32?
Kind regards,
Robert