4f5a177eef
to fix the following linker error: /usr/bin/ld: nuttx.rel: in function `aes_encrypt_xform': /github/workspace/sources/nuttx/crypto/xform.c:509: undefined reference to `aes_encrypt' /usr/bin/ld: nuttx.rel: in function `aes_decrypt_xform': /github/workspace/sources/nuttx/crypto/xform.c:514: undefined reference to `aes_decrypt' /usr/bin/ld: nuttx.rel: in function `aes_setkey_xform': /github/workspace/sources/nuttx/crypto/xform.c:519: undefined reference to `aes_setkey' /usr/bin/ld: nuttx.rel: in function `aes_ctr_crypt': /github/workspace/sources/nuttx/crypto/xform.c:566: undefined reference to `aes_encrypt' /usr/bin/ld: nuttx.rel: in function `aes_ctr_setkey': /github/workspace/sources/nuttx/crypto/xform.c:585: undefined reference to `aes_setkey' /usr/bin/ld: nuttx.rel: in function `aes_ofb_encrypt': /github/workspace/sources/nuttx/crypto/xform.c:694: undefined reference to `aes_encrypt' /usr/bin/ld: nuttx.rel: in function `aes_ofb_setkey': /github/workspace/sources/nuttx/crypto/xform.c:706: undefined reference to `aes_setkey' /usr/bin/ld: nuttx.rel: in function `aes_cfb8_encrypt': /github/workspace/sources/nuttx/crypto/xform.c:733: undefined reference to `aes_encrypt' /usr/bin/ld: nuttx.rel: in function `aes_cfb8_decrypt': /github/workspace/sources/nuttx/crypto/xform.c:751: undefined reference to `aes_encrypt' /usr/bin/ld: nuttx.rel: in function `aes_cfb128_encrypt': /github/workspace/sources/nuttx/crypto/xform.c:765: undefined reference to `aes_encrypt' /usr/bin/ld: nuttx.rel: in function `aes_cfb128_decrypt': /github/workspace/sources/nuttx/crypto/xform.c:781: undefined reference to `aes_encrypt' /usr/bin/ld: nuttx.rel: in function `aes_gmac_setkey': /github/workspace/sources/nuttx/crypto/gmac.c:135: undefined reference to `aes_setkey' /usr/bin/ld: /github/workspace/sources/nuttx/crypto/gmac.c:143: undefined reference to `aes_encrypt' /usr/bin/ld: nuttx.rel: in function `aes_gmac_final': /github/workspace/sources/nuttx/crypto/gmac.c:195: undefined reference to `aes_encrypt' Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
90 lines
2.1 KiB
Plaintext
90 lines
2.1 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
config CRYPTO
|
|
bool "Crypto API support"
|
|
default n
|
|
---help---
|
|
Enable or disable Crypto API features
|
|
|
|
if CRYPTO
|
|
|
|
config CRYPTO_AES
|
|
bool "AES cypher support"
|
|
default n
|
|
|
|
config CRYPTO_ALGTEST
|
|
bool "Perform automatic crypto algorithms test on startup"
|
|
default n
|
|
|
|
if CRYPTO_ALGTEST
|
|
|
|
config CRYPTO_AES128_DISABLE
|
|
bool "Omit 128-bit AES tests"
|
|
default n
|
|
|
|
config CRYPTO_AES192_DISABLE
|
|
bool "Omit 192-bit AES tests"
|
|
default n
|
|
|
|
config CRYPTO_AES256_DISABLE
|
|
bool "Omit 256-bit AES tests"
|
|
default n
|
|
|
|
endif # CRYPTO_ALGTEST
|
|
|
|
config CRYPTO_CRYPTODEV
|
|
bool "cryptodev support"
|
|
depends on ALLOW_BSD_COMPONENTS
|
|
default n
|
|
|
|
config CRYPTO_CRYPTODEV_SOFTWARE
|
|
bool "cryptodev software support"
|
|
depends on CRYPTO_CRYPTODEV && CRYPTO_SW_AES
|
|
default n
|
|
|
|
config CRYPTO_CRYPTODEV_HARDWARE
|
|
bool "cryptodev hardware support"
|
|
depends on CRYPTO_CRYPTODEV
|
|
default n
|
|
|
|
config CRYPTO_SW_AES
|
|
bool "Software AES library"
|
|
depends on ALLOW_BSD_COMPONENTS
|
|
default n
|
|
---help---
|
|
Enable the software AES library as described in
|
|
include/nuttx/crypto/aes.h
|
|
|
|
TODO: Adapt interfaces so that they are consistent with H/W AES
|
|
implementations. This needs to support up_aesinitialize() and
|
|
aes_cypher() per include/nuttx/crypto/crypto.h.
|
|
|
|
config CRYPTO_RANDOM_POOL
|
|
bool "Entropy pool and strong randon number generator"
|
|
default n
|
|
---help---
|
|
Entropy pool gathers environmental noise from device drivers,
|
|
user-space, etc., and returns good random numbers, suitable
|
|
for cryptographic use. Based on entropy pool design from
|
|
*BSDs and uses BLAKE2Xs algorithm for CSPRNG output.
|
|
|
|
NOTE: May not actually be cyptographically secure, if
|
|
not enough entropy is made available to the entropy pool.
|
|
|
|
if CRYPTO_RANDOM_POOL
|
|
|
|
config CRYPTO_RANDOM_POOL_COLLECT_IRQ_RANDOMNESS
|
|
bool "Use interrupts to feed timing randomness to entropy pool"
|
|
default y
|
|
---help---
|
|
Feed entropy pool with interrupt randomness from interrupt
|
|
dispatch function 'irq_dispatch'. This adds some overhead
|
|
for every interrupt handled.
|
|
|
|
endif # CRYPTO_RANDOM_POOL
|
|
|
|
endif # CRYPTO
|