mbedtls/library
Gilles Peskine e9a3454e09 CTR_DRBG: grab a nonce from the entropy source if needed
Change the default entropy nonce length to be nonzero in some cases.
Specifically, the default nonce length is now set in such a way that
the entropy input during the initial seeding always contains enough
entropy to achieve the maximum possible security strength per
NIST SP 800-90A given the key size and entropy length.

If MBEDTLS_CTR_DRBG_ENTROPY_LEN is kept to its default value,
mbedtls_ctr_drbg_seed() now grabs extra entropy for a nonce if
MBEDTLS_CTR_DRBG_USE_128_BIT_KEY is disabled and either
MBEDTLS_ENTROPY_FORCE_SHA256 is enabled or MBEDTLS_SHA512_C is
disabled. If MBEDTLS_CTR_DRBG_USE_128_BIT_KEY is enabled, or if
the entropy module uses SHA-512, then the default value of
MBEDTLS_CTR_DRBG_ENTROPY_LEN does not require a second call to the
entropy function to achieve the maximum security strength.

This choice of default nonce size guarantees NIST compliance with the
maximum security strength while keeping backward compatibility and
performance high: in configurations that do not require grabbing more
entropy, the code will not grab more entropy than before.
2019-10-23 19:46:57 +02:00
..
.gitignore
aes.c
aesni.c
arc4.c
aria.c
asn1parse.c mbedtls_asn1_get_int: fix int overflow 2019-10-10 19:29:27 +02:00
asn1write.c mbedtls_asn1_store_named_data: clarify val allocation behavior 2019-09-11 15:46:45 +02:00
base64.c
bignum.c Merge remote-tracking branch 'origin/pr/2623' into development 2019-09-05 14:43:46 +01:00
blowfish.c
camellia.c
ccm.c
chacha20.c
chachapoly.c
cipher_wrap.c
cipher.c
cmac.c
CMakeLists.txt Merge pull request #185 from gilles-peskine-arm/harvard-md 2019-09-10 18:38:39 +01:00
ctr_drbg.c CTR_DRBG: grab a nonce from the entropy source if needed 2019-10-23 19:46:57 +02:00
des.c des: Reduce number of self-test iterations 2019-09-04 10:11:45 +01:00
dhm.c
ecdh.c Fix code style 2019-08-19 13:37:46 +01:00
ecdsa.c Correct deterministic ECDSA behavior 2019-09-05 11:18:58 +01:00
ecjpake.c Fix handling of md failure 2019-07-08 14:32:38 +02:00
ecp_curves.c Replace 0 by MBEDTLS_ECP_DP_NONE to avoid IAR compiler complains 2019-09-10 17:58:20 +03:00
ecp.c 3rdparty: Adjust use of Everest in ecp_supported_curves 2019-08-19 13:37:46 +01:00
entropy_poll.c
entropy.c
error.c Fix long-standing bug in error code description 2019-09-11 18:16:11 +02:00
gcm.c
havege.c
hkdf.c
hmac_drbg.c HMAC_DRBG: support set_entropy_len() before seed() 2019-10-11 18:04:12 +02:00
Makefile Merge pull request #185 from gilles-peskine-arm/harvard-md 2019-09-10 18:38:39 +01:00
md2.c
md4.c
md5.c
md.c Use smaller types in mbedtls_md_info_t 2019-07-22 11:35:19 +02:00
memory_buffer_alloc.c
nist_kw.c
oid.c
padlock.c
pem.c
pk_wrap.c
pk.c
pkcs5.c Improve speed of PBKDF2 by caching the digest state of the passphrase 2019-09-23 19:15:54 -04:00
pkcs12.c
pkparse.c
pkwrite.c
platform_util.c Check for zero length and NULL buffer pointer. 2019-09-04 11:31:35 +01:00
platform.c
poly1305.c
psa_crypto_core.h Rename internal macro to pass check-names.sh 2019-08-08 10:58:09 +02:00
psa_crypto_invasive.h
psa_crypto_its.h Add psa_trusted_storage_linux persistent storage support for v1.0.0 APIs 2019-07-23 17:30:37 +01:00
psa_crypto_se.c SE driver: Fix loading of persistent data 2019-10-01 16:55:29 +02:00
psa_crypto_se.h SE driver: call the p_init method during psa_crypto_init() 2019-10-01 15:22:29 +02:00
psa_crypto_service_integration.h
psa_crypto_slot_management.c Make psa_close_key(0) and psa_destroy_key(0) succeed 2019-10-08 15:57:27 +02:00
psa_crypto_slot_management.h Rename psa_internal_allocate_key_slot to psa_get_empty_key_slot 2019-08-08 10:58:09 +02:00
psa_crypto_storage.c Merge pull request #198 from gilles-peskine-arm/psa-api-1.0-beta-merge_development_20190801 2019-08-08 10:24:53 +02:00
psa_crypto_storage.h Switch storage functions over to psa_core_key_attributes_t 2019-07-31 14:15:27 +02:00
psa_crypto.c Merge pull request #292 from gilles-peskine-arm/psa-destroy_0 2019-10-14 11:21:54 +02:00
psa_its_file.c Add an input check in psa_its_set 2019-09-05 09:34:34 -04:00
ripemd160.c
rsa_internal.c
rsa.c
sha1.c
sha256.c
sha512.c Re-roll main loop with SHA512_SMALLER 2019-07-17 13:16:54 +02:00
threading.c
timing.c
version_features.c Move MBEDTLS_CTR_DRBG_USE_128_BIT_KEY to the correct section 2019-10-04 11:16:24 +02:00
version.c
xtea.c