linux/include/crypto/internal
Stefan Berger c6ab5c915d crypto: ecc - Prevent ecc_digits_from_bytes from reading too many bytes
Prevent ecc_digits_from_bytes from reading too many bytes from the input
byte array in case an insufficient number of bytes is provided to fill the
output digit array of ndigits. Therefore, initialize the most significant
digits with 0 to avoid trying to read too many bytes later on. Convert the
function into a regular function since it is getting too big for an inline
function.

If too many bytes are provided on the input byte array the extra bytes
are ignored since the input variable 'ndigits' limits the number of digits
that will be filled.

Fixes: d67c96fb97 ("crypto: ecdsa - Convert byte arrays with key coordinates to digits")
Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org>
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2024-05-17 18:55:07 +08:00
..
acompress.h crypto: remove CONFIG_CRYPTO_STATS 2024-04-02 10:49:38 +08:00
aead.h crypto: aead - Use crypto_request_complete 2023-02-13 18:34:48 +08:00
akcipher.h crypto: akcipher - Use crypto_request_complete 2023-02-13 18:34:48 +08:00
blake2b.h crypto: blake2b - sync with blake2s implementation 2021-01-03 08:41:39 +11:00
blake2s.h crypto: blake2s - remove shash module 2022-06-10 16:43:49 +08:00
chacha.h
cipher.h crypto: cipher - Add crypto_clone_cipher 2023-05-24 18:12:33 +08:00
des.h crypto: remove CRYPTO_TFM_RES_WEAK_KEY 2020-01-09 11:30:53 +08:00
ecc.h crypto: ecc - Prevent ecc_digits_from_bytes from reading too many bytes 2024-05-17 18:55:07 +08:00
engine.h crypto: engine - Move struct crypto_engine into internal/engine.h 2023-08-18 17:01:10 +08:00
geniv.h crypto: geniv - remove unneeded arguments from aead_geniv_alloc() 2020-07-16 21:49:07 +10:00
hash.h crypto: ahash - unexport crypto_hash_alg_has_setkey() 2024-02-02 18:10:05 +08:00
kdf_selftest.h crypto: kdf - Add key derivation self-test support code 2021-11-26 16:25:17 +11:00
kpp.h crypto: kpp - Use crypto_request_complete 2023-02-13 18:34:48 +08:00
poly1305.h crypto: poly1305 - fix poly1305_core_setkey() declaration 2021-04-02 18:28:12 +11:00
rng.h
rsa.h
scompress.h crypto: remove CONFIG_CRYPTO_STATS 2024-04-02 10:49:38 +08:00
sig.h crypto: sig - Add interface for sign/verify 2023-06-23 16:15:36 +08:00
simd.h
skcipher.h crypto: skcipher - Remove obsolete skcipher_alg helpers 2023-10-13 18:27:27 +08:00