summaryrefslogtreecommitdiff
path: root/crypto/Kconfig
diff options
context:
space:
mode:
authorStephan Mueller <smueller@chronox.de>2014-05-31 17:22:31 +0200
committerHerbert Xu <herbert@gondor.apana.org.au>2014-06-20 21:26:09 +0800
commit629e805588a2ec7f85964fa96fa94d10a2ffe2d4 (patch)
treea31cb56cf4dd958c5861d206ae48340a095e8f8c /crypto/Kconfig
parentd7759a4400f38a92023e2ec43d478bd7586afc04 (diff)
downloadlinux-crypto-629e805588a2ec7f85964fa96fa94d10a2ffe2d4.tar.gz
linux-crypto-629e805588a2ec7f85964fa96fa94d10a2ffe2d4.zip
crypto: drbg - DRBG kernel configuration options
The different DRBG types of CTR, Hash, HMAC can be enabled or disabled at compile time. At least one DRBG type shall be selected. The default is the HMAC DRBG as its code base is smallest. Signed-off-by: Stephan Mueller <smueller@chronox.de> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto/Kconfig')
-rw-r--r--crypto/Kconfig36
1 files changed, 35 insertions, 1 deletions
diff --git a/crypto/Kconfig b/crypto/Kconfig
index ce4012a5..c9c1cd91 100644
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
@@ -23,7 +23,7 @@ comment "Crypto core or helper"
config CRYPTO_FIPS
bool "FIPS 200 compliance"
- depends on CRYPTO_ANSI_CPRNG && !CRYPTO_MANAGER_DISABLE_TESTS
+ depends on (CRYPTO_ANSI_CPRNG || CRYTPO_DRBG) && !CRYPTO_MANAGER_DISABLE_TESTS
help
This options enables the fips boot option which is
required if you want to system to operate in a FIPS 200
@@ -1380,6 +1380,40 @@ config CRYPTO_ANSI_CPRNG
ANSI X9.31 A.2.4. Note that this option must be enabled if
CRYPTO_FIPS is selected
+menuconfig CRYTPO_DRBG
+ tristate "NIST SP800-90A DRBG"
+ depends on CRYPTO
+ select CRYPTO_RNG
+ help
+ NIST SP800-90A compliant DRBG. In the following submenu, one or
+ more of the DRBG types must be selected.
+
+if CRYTPO_DRBG
+
+config CRYPTO_DRBG_HMAC
+ bool "Enable HMAC DRBG"
+ default y
+ depends on CRYTPO_DRBG
+ select CRYPTO_HMAC
+ help
+ Enable the HMAC DRBG variant as defined in NIST SP800-90A.
+
+config CRYPTO_DRBG_HASH
+ bool "Enable Hash DRBG"
+ depends on CRYTPO_DRBG
+ select CRYPTO_HASH
+ help
+ Enable the Hash DRBG variant as defined in NIST SP800-90A.
+
+config CRYPTO_DRBG_CTR
+ bool "Enable CTR DRBG"
+ depends on CRYTPO_DRBG
+ select CRYPTO_AES
+ help
+ Enable the CTR DRBG variant as defined in NIST SP800-90A.
+
+endif #CRYTPO_DRBG
+
config CRYPTO_USER_API
tristate