twx-linux/include/crypto
Stefan Berger 55779f26ea crypto: ecc - Prevent ecc_digits_from_bytes from reading too many bytes
[ Upstream commit c6ab5c915da460c0397960af3c308386c3f3247b ]

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: d67c96fb97b5 ("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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-01-09 13:31:52 +01:00
..
internal crypto: ecc - Prevent ecc_digits_from_bytes from reading too many bytes 2025-01-09 13:31:52 +01:00
acompress.h
aead.h
aes.h
akcipher.h crypto: akcipher - Add sync interface without SG lists 2023-06-23 16:15:36 +08:00
algapi.h crypto: api - Use work queue in crypto_destroy_instance 2023-08-11 19:19:27 +08:00
arc4.h
aria.h
authenc.h
b128ops.h cyrpto/b128ops: Remove struct u128 2023-06-05 09:36:35 +02:00
blake2b.h
blake2s.h
blowfish.h
cast5.h
cast6.h
cast_common.h
chacha20poly1305.h
chacha.h
cryptd.h
ctr.h
curve25519.h
des.h
dh.h
drbg.h
ecc_curve.h
ecdh.h
engine.h crypto: engine - Remove crypto_engine_ctx 2023-08-18 17:01:11 +08:00
gcm.h
gf128mul.h
ghash.h
hash_info.h
hash.h crypto: hash - Add statesize to crypto_ahash 2023-05-12 18:48:01 +08:00
hmac.h
if_alg.h crypto: af_alg - Disallow multiple in-flight AIO requests 2024-01-25 15:35:16 -08:00
kdf_sp800108.h
kpp.h
md5.h
nhpoly1305.h
null.h
padlock.h
pcrypt.h
pkcs7.h
poly1305.h
polyval.h
public_key.h KEYS: DigitalSignature link restriction 2023-08-17 20:12:20 +00:00
rng.h
scatterwalk.h
serpent.h
sha1_base.h
sha1.h
sha2.h crypto: lib/sha256 - Remove redundant and unused sha224_update 2023-05-19 16:45:43 +08:00
sha3.h
sha256_base.h crypto: lib/sha256 - Use generic code from sha256_base 2023-05-19 16:45:43 +08:00
sha512_base.h
sig.h crypto: sig - Add interface for sign/verify 2023-06-23 16:15:36 +08:00
skcipher.h
sm2.h crypto: sm2 - Provide sm2_compute_z_digest when sm2 is disabled 2023-06-26 16:14:01 +08:00
sm3_base.h
sm3.h
sm4.h
streebog.h
twofish.h
utils.h crypto: lib/utils - Move utilities into new header 2023-03-31 17:50:09 +08:00
xts.h