Re: [PATCH v3] crypto: ecc - Prevent ecc_digits_from_bytes from reading too many bytes

From: Herbert Xu
Date: Fri May 17 2024 - 06:57:51 EST


On Thu, May 09, 2024 at 09:59:21PM -0400, Stefan Berger wrote:
> 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@xxxxxxxxxx>
> Signed-off-by: Stefan Berger <stefanb@xxxxxxxxxxxxx>
>
> ---
> v3:
> - Applied Jarkko's tag
>
> v2:
> - un-inline function
> - use memset
> ---
> crypto/ecc.c | 22 ++++++++++++++++++++++
> include/crypto/internal/ecc.h | 15 ++-------------
> 2 files changed, 24 insertions(+), 13 deletions(-)

Patch applied. Thanks.
--
Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt