Cryptography Hardware Acceleration Configuration

Description

Configuration macros for Silicon Labs CRYPTO hardware acceleration mbed TLS plugins.

The config-sl-crypto-all-acceleration.h file lists configuration macros for setup of the crypto hardware accelerator plugins for mbed TLS from Silicon Labs. You can use macros in config-sl-crypto-all-acceleration.h and mbedtls/include/mbedtls/config.h in order to configure your mbed TLS application running on Silicon Labs devices.

Warning
This configuration file should be used as a starting point only for hardware acceleration evaluation on Silicon Labs devices.

Macros

#define MBEDTLS_ECP_DP_SECP192R1_ENABLED
#define MBEDTLS_ECP_DP_SECP224R1_ENABLED
#define MBEDTLS_ECP_DP_SECP256R1_ENABLED
#define MBEDTLS_MPI_MAX_SIZE 32
#define MBEDTLS_ECP_WINDOW_SIZE 3
#define MBEDTLS_ECP_FIXED_POINT_OPTIM 0
#define MBEDTLS_ECP_NIST_OPTIM

SECTION: mbed TLS feature support

This section sets support for features that are or are not needed within the modules that are enabled.

#define MBEDTLS_AES_ALT
#define MBEDTLS_NO_PLATFORM_ENTROPY

Macro Definition Documentation

MBEDTLS_AES_ALT

#define MBEDTLS_AES_ALT

MBEDTLS__MODULE_NAME__ALT: Uncomment a macro to let mbed TLS use your alternate core implementation of a symmetric crypto, an arithmetic or hash module (e.g. platform specific assembly optimized implementations). Keep in mind that the function prototypes should remain the same.

This replaces the whole module. If you only want to replace one of the functions, use one of the MBEDTLS__FUNCTION_NAME__ALT flags.

Example: In case you uncomment MBEDTLS_AES_ALT, mbed TLS will no longer provide the "struct mbedtls_aes_context" definition and omit the base function declarations and implementations. "aes_alt.h" will be included from "aes.h" to include the new function definitions.

Uncomment a macro to enable alternate implementation of the corresponding module.

Warning
MD5, DES and SHA-1 are considered weak and their use constitutes a security risk. If possible, we recommend avoiding dependencies on them, and considering stronger message digests and ciphers instead.

Enable hardware acceleration for the AES block cipher

Module: sl_crypto/src/crypto_aes.c for devices with CRYPTO sl_crypto/src/aes_aes.c for devices with AES

See MBEDTLS_AES_C for more information.

MBEDTLS_NO_PLATFORM_ENTROPY

#define MBEDTLS_NO_PLATFORM_ENTROPY

Do not use built-in platform entropy functions. This is useful if your platform does not support standards like the /dev/urandom or Windows CryptoAPI.

Uncomment this macro to disable the built-in platform entropy functions.