#define NRF_CRYPTO_ALLOCATOR |
Memory allocator.
Choose memory allocator used by nrf_crypto. Default is alloca if possible or nrf_malloc otherwise. If 'User macros' are selected, the user has to create 'nrf_crypto_allocator.h' file that contains NRF_CRYPTO_ALLOC, NRF_CRYPTO_FREE, and NRF_CRYPTO_ALLOC_ON_STACK.
Following options are available:
#define NRF_CRYPTO_BACKEND_CC310_AES_CBC_ENABLED |
Enable the AES CBC mode using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_AES_CBC_MAC_ENABLED |
Enable the AES CBC_MAC mode using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_AES_CCM_ENABLED |
Enable the AES CCM mode using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_AES_CCM_STAR_ENABLED |
Enable the AES CCM* mode using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_AES_CMAC_ENABLED |
Enable the AES CMAC mode using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_AES_CTR_ENABLED |
Enable the AES CTR mode using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_AES_ECB_ENABLED |
Enable the AES ECB mode using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP224R1_ENABLED |
Enable the secp224r1 elliptic curve support using CC310_BL.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP256R1_ENABLED |
Enable the secp256r1 elliptic curve support using CC310_BL.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_BL_ENABLED |
Enable the ARM Cryptocell CC310 reduced backend.
The CC310 hardware-accelerated cryptography backend with reduced functionality and footprint (only available on nRF52840).
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_ENABLED |
nrf_cc310_bl buffers to RAM before running hash operation
Enabling this makes hashing of addresses in FLASH range possible. Size of buffer allocated for hashing is set by NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE |
nrf_cc310_bl hash outputs digests in little endian
Makes the nrf_cc310_bl hash functions output digests in little endian format. Only for use in nRF SDK DFU!
#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_SHA256_ENABLED |
CC310_BL SHA-256 hash functionality.
CC310_BL backend implementation for hardware-accelerated SHA-256.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_BL_INTERRUPTS_ENABLED |
Enable Interrupts while support using CC310 bl.
Select a library version compatible with the configuration. When interrupts are disable, a version named _noint must be used
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_CHACHA_POLY_ENABLED |
Enable the CHACHA-POLY mode using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_CURVE25519_ENABLED |
Enable the Curve25519 curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_ED25519_ENABLED |
Enable the Ed25519 curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160K1_ENABLED |
Enable the secp160k1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R1_ENABLED |
Enable the secp160r1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R2_ENABLED |
Enable the secp160r2 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP192K1_ENABLED |
Enable the secp192k1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP192R1_ENABLED |
Enable the secp192r1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP224K1_ENABLED |
Enable the secp224k1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP224R1_ENABLED |
Enable the secp224r1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP256K1_ENABLED |
Enable the secp256k1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP256R1_ENABLED |
Enable the secp256r1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP384R1_ENABLED |
Enable the secp384r1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP521R1_ENABLED |
Enable the secp521r1 elliptic curve support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_ENABLED |
Enable the ARM Cryptocell CC310 backend.
The CC310 hardware-accelerated cryptography backend (only available on nRF52840).
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_HASH_SHA256_ENABLED |
CC310 SHA-256 hash functionality.
CC310 backend implementation for hardware-accelerated SHA-256.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_HASH_SHA512_ENABLED |
CC310 SHA-512 hash functionality.
CC310 backend implementation for SHA-512 (in software).
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_HMAC_SHA256_ENABLED |
CC310 HMAC using SHA-256.
CC310 backend implementation for HMAC using hardware-accelerated SHA-256.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_HMAC_SHA512_ENABLED |
CC310 HMAC using SHA-512.
CC310 backend implementation for HMAC using SHA-512 (in software).
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_INTERRUPTS_ENABLED |
Enable Interrupts while support using CC310.
Select a library version compatible with the configuration. When interrupts are disable, a version named _noint must be used
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CC310_RNG_ENABLED |
Enable RNG support using CC310.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CIFRA_AES_EAX_ENABLED |
Enable the AES EAX mode using Cifra.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_CIFRA_ENABLED |
Enable the Cifra backend.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_ENABLED |
Enable the AES CBC mode mbed TLS.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_MAC_ENABLED |
Enable the AES CBC MAC mode using mbed TLS.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CCM_ENABLED |
Enable the AES CCM mode using mbed TLS.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CFB_ENABLED |
Enable the AES CFB mode using mbed TLS.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CMAC_ENABLED |
Enable the AES CMAC mode using mbed TLS.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CTR_ENABLED |
Enable the AES CTR mode using mbed TLS.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_ECB_ENABLED |
Enable the AES ECB mode using mbed TLS.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_GCM_ENABLED |
Enable the AES GCM mode using mbed TLS.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP256R1_ENABLED |
Enable bp256r1 (Brainpool 256-bit) curve.
Enable this setting if you need bp256r1 (Brainpool 256-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP384R1_ENABLED |
Enable bp384r1 (Brainpool 384-bit) curve.
Enable this setting if you need bp384r1 (Brainpool 384-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP512R1_ENABLED |
Enable bp512r1 (Brainpool 512-bit) curve.
Enable this setting if you need bp512r1 (Brainpool 512-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_CURVE25519_ENABLED |
Enable Curve25519 curve.
Enable this setting if you need Curve25519 support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192K1_ENABLED |
Enable secp192k1 (Koblitz 192-bit) curve.
Enable this setting if you need secp192k1 (Koblitz 192-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192R1_ENABLED |
Enable secp192r1 (NIST 192-bit) curve.
Enable this setting if you need secp192r1 (NIST 192-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224K1_ENABLED |
Enable secp224k1 (Koblitz 224-bit) curve.
Enable this setting if you need secp224k1 (Koblitz 224-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224R1_ENABLED |
Enable secp224r1 (NIST 224-bit) curve.
Enable this setting if you need secp224r1 (NIST 224-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256K1_ENABLED |
Enable secp256k1 (Koblitz 256-bit) curve.
Enable this setting if you need secp256k1 (Koblitz 256-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256R1_ENABLED |
Enable secp256r1 (NIST 256-bit) curve.
Enable this setting if you need secp256r1 (NIST 256-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP384R1_ENABLED |
Enable secp384r1 (NIST 384-bit) curve.
Enable this setting if you need secp384r1 (NIST 384-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP521R1_ENABLED |
Enable secp521r1 (NIST 521-bit) curve.
Enable this setting if you need secp521r1 (NIST 521-bit) support using MBEDTLS
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_ENABLED |
Enable the mbed TLS backend.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA256_ENABLED |
Enable mbed TLS SHA-256 hash functionality.
mbed TLS backend implementation for SHA-256.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA512_ENABLED |
Enable mbed TLS SHA-512 hash functionality.
mbed TLS backend implementation for SHA-512.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA256_ENABLED |
Enable mbed TLS HMAC using SHA-256.
mbed TLS backend implementation for HMAC using SHA-256.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA512_ENABLED |
Enable mbed TLS HMAC using SHA-512.
mbed TLS backend implementation for HMAC using SHA-512.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP192R1_ENABLED |
Enable secp192r1 (NIST 192-bit) curve.
Enable this setting if you need secp192r1 (NIST 192-bit) support using micro-ecc
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP224R1_ENABLED |
Enable secp224r1 (NIST 224-bit) curve.
Enable this setting if you need secp224r1 (NIST 224-bit) support using micro-ecc
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256K1_ENABLED |
Enable secp256k1 (Koblitz 256-bit) curve.
Enable this setting if you need secp256k1 (Koblitz 256-bit) support using micro-ecc
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256R1_ENABLED |
Enable secp256r1 (NIST 256-bit) curve.
Enable this setting if you need secp256r1 (NIST 256-bit) support using micro-ecc
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_MICRO_ECC_ENABLED |
Enable the micro-ecc backend.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_NRF_HW_RNG_ENABLED |
Enable the nRF HW RNG backend.
The nRF HW backend provide access to RNG peripheral in nRF5x devices.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_NRF_HW_RNG_MBEDTLS_CTR_DRBG_ENABLED |
Enable mbed TLS CTR-DRBG algorithm.
Enable mbed TLS CTR-DRBG standardized by NIST (NIST SP 800-90A Rev. 1). The nRF HW RNG is used as an entropy source for seeding.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_NRF_SW_ENABLED |
Enable the legacy nRFx sw for crypto.
The nRF SW cryptography backend (only used in bootloader context).
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_NRF_SW_HASH_SHA256_ENABLED |
nRF SW hash backend support for SHA-256
The nRF SW backend provide access to nRF SDK legacy hash implementation of SHA-256.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_CHACHA_POLY_ENABLED |
Enable the CHACHA-POLY mode using Oberon.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_ECC_CURVE25519_ENABLED |
Enable Curve25519 ECDH.
Enable this setting if you need Curve25519 ECDH support using Oberon library
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_ECC_ED25519_ENABLED |
Enable Ed25519 signature scheme.
Enable this setting if you need Ed25519 support using Oberon library
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_ECC_SECP256R1_ENABLED |
Enable secp256r1 curve.
Enable this setting if you need secp256r1 curve support using Oberon library
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_ENABLED |
Enable the Oberon backend.
The Oberon backend
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_HASH_SHA256_ENABLED |
Oberon SHA-256 hash functionality.
Oberon backend implementation for SHA-256.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_HASH_SHA512_ENABLED |
Oberon SHA-512 hash functionality.
Oberon backend implementation for SHA-512.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA256_ENABLED |
Oberon HMAC using SHA-256.
Oberon backend implementation for HMAC using SHA-256.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA512_ENABLED |
Oberon HMAC using SHA-512.
Oberon backend implementation for HMAC using SHA-512.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OPTIGA_ECC_SECP256R1_ENABLED |
Optiga backend support for ECC secp256r1.
The Optiga backend provide external chip ECC using secp256r1.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OPTIGA_ENABLED |
Enable the nrf_crypto Optiga Trust X backend.
Enables the nrf_crypto backend for Optiga Trust X devices.
Set to 1 to activate.
#define NRF_CRYPTO_BACKEND_OPTIGA_RNG_ENABLED |
Optiga backend support for RNG.
The Optiga backend provide external chip RNG.
Set to 1 to activate.
#define NRF_CRYPTO_CURVE25519_BIG_ENDIAN_ENABLED |
Big-endian byte order in raw Curve25519 data.
Enable big-endian byte order in Curve25519 API, if set to 1. Use little-endian, if set to 0.
Set to 1 to activate.
#define NRF_CRYPTO_ENABLED |
Cryptography module for nRF5 SDK.
Set to 1 to activate.