Files
linux/include/crypto
Eric Biggers 6f49f00c98 crypto: drbg - Fix drbg_max_addtl() on 64-bit kernels
On 64-bit kernels, drbg_max_addtl() returns 2**35 bytes.  That's too
large, for two reasons:

1. SP800-90A says the maximum limit is 2**35 *bits*, not 2**35 bytes.
   So the implemented limit has confused bits and bytes.

2. When drbg_kcapi_hash() calls crypto_shash_update() on the additional
   information string, the length is implicitly cast to 'unsigned int'.
   That truncates the additional information string to U32_MAX bytes.

Fix the maximum additional information string length to always be
U32_MAX - 1, causing an error to be returned for any longer lengths.

Fixes: 541af946fe ("crypto: drbg - SP800-90A Deterministic Random Bit Generator")
Cc: stable@vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2026-05-07 16:09:59 +08:00
..
2022-12-02 18:12:40 +08:00
2023-06-05 09:36:35 +02:00
2024-04-02 10:49:38 +08:00
2026-01-12 11:07:49 -08:00
2019-08-05 18:40:19 -04:00
2026-03-23 17:50:59 -07:00
2022-04-08 16:12:46 +08:00
2023-01-06 17:15:47 +08:00