-
CONFIG_MBEDTLS_SHA256_SMALLER
¶
Enable smaller SHA-256 implementation
Use SHA256 small footprint implementation
Enable smaller SHA-256 implementation
Type: bool
Help¶
Enable an implementation of SHA-256 that has lower ROM footprint but also
lower performance
Help¶
Use a SHA-256 implementation with smaller footprint.
Note, that this implementation will also have a lower performance.
On a Cortex-M4 the size of mbedtls_sha256_process() will be reduced from ~2KB to ~0.5KB,
however it will also perform around 30% slower.
MBEDTLS_SHA256_SMALLER setting in mbed TLS config file.
Help¶
Enable an implementation of SHA-256 that has lower ROM footprint but also
lower performance
Direct dependencies¶
(MBEDTLS_MAC_SHA256_ENABLED
&& MBEDTLS_BUILTIN
&& MBEDTLS_CFG_FILE
= “config-tls-generic.h” && MBEDTLS
) || (VANILLA_MBEDTLS_SHA256_C
&& NRF_SECURITY_ADVANCED
&& NRF_SECURITY_ANY_BACKEND
&& NORDIC_SECURITY_BACKEND
) || (MBEDTLS_MAC_SHA256_ENABLED
&& MBEDTLS_BUILTIN
&& MBEDTLS_CFG_FILE
= “config-tls-generic.h” && MBEDTLS
&& 0)
(Includes any dependencies from ifs and menus.)
Defaults¶
y
y
Kconfig definitions¶
At <Zephyr>/modules/mbedtls/Kconfig.tls-generic:264
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:23
→ <Zephyr>/modules/Kconfig:6
→ <BuildDir>/kconfig/Kconfig.modules:50
→ <Zephyr>/modules/mbedtls/Kconfig:62
Menu path: (Top) → Modules → mbedtls (/home/runner/work/sdk-nrf/sdk-nrf/ncs/modules/crypto/mbedtls) → mbed TLS Support → TLS configuration → Ciphersuite configuration → Enable the SHA-224 and SHA-256 hash algorithms
config MBEDTLS_SHA256_SMALLER
bool "Enable smaller SHA-256 implementation"
default y
depends on MBEDTLS_MAC_SHA256_ENABLED && MBEDTLS_BUILTIN && MBEDTLS_CFG_FILE = "config-tls-generic.h" && MBEDTLS
help
Enable an implementation of SHA-256 that has lower ROM footprint but also
lower performance
At <nrfxlib>/nrf_security/Kconfig:1539
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:23
→ <Zephyr>/modules/Kconfig:6
→ <BuildDir>/kconfig/Kconfig.modules:62
→ <nrfxlib>/Kconfig.nrfxlib:13
Menu path: (Top) → Modules → nrfxlib (/home/runner/work/sdk-nrf/sdk-nrf/ncs/nrfxlib) → Nordic nrfxlib → Nordic Security → Use Nordic provided security backend → Advanced mbed TLS Configuration Settings
config MBEDTLS_SHA256_SMALLER
bool "Use SHA256 small footprint implementation"
depends on VANILLA_MBEDTLS_SHA256_C && NRF_SECURITY_ADVANCED && NRF_SECURITY_ANY_BACKEND && NORDIC_SECURITY_BACKEND
help
Use a SHA-256 implementation with smaller footprint.
Note, that this implementation will also have a lower performance.
On a Cortex-M4 the size of mbedtls_sha256_process() will be reduced from ~2KB to ~0.5KB,
however it will also perform around 30% slower.
MBEDTLS_SHA256_SMALLER setting in mbed TLS config file.
At <Zephyr>/modules/mbedtls/Kconfig.tls-generic:264
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:23
→ <Zephyr>/modules/Kconfig:66
→ <Zephyr>/modules/mbedtls/Kconfig:62
Menu path: (Top) → Modules → mbed TLS Support → TLS configuration → Ciphersuite configuration → Enable the SHA-224 and SHA-256 hash algorithms
config MBEDTLS_SHA256_SMALLER
bool "Enable smaller SHA-256 implementation"
default y
depends on MBEDTLS_MAC_SHA256_ENABLED && MBEDTLS_BUILTIN && MBEDTLS_CFG_FILE = "config-tls-generic.h" && MBEDTLS && 0
help
Enable an implementation of SHA-256 that has lower ROM footprint but also
lower performance
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)