Re: [PATCH v9 3/7] crypto: move curve_id of ECDH from the key to algorithm name

From: yumeng
Date: Tue Feb 23 2021 - 20:33:38 EST




在 2021/2/23 18:44, Tudor.Ambarus@xxxxxxxxxxxxx 写道:
Hi,

On 2/23/21 9:10 AM, Meng Yu wrote:
--- a/drivers/crypto/atmel-ecc.c
+++ b/drivers/crypto/atmel-ecc.c
@@ -104,7 +104,7 @@ static int atmel_ecdh_set_secret(struct crypto_kpp *tfm, const void *buf,
return -EINVAL;
}

- ctx->n_sz = atmel_ecdh_supported_curve(params.curve_id);
+ ctx->n_sz = atmel_ecdh_supported_curve(ctx->curve_id);
if (!ctx->n_sz || params.key_size) {
/* fallback to ecdh software implementation */
ctx->do_fallback = true;

Now that you moved the curve id info into the alg name, and it is
no longer dynamically discovered when decoding the key, does it
still make sense to keep the curve id, the key size checks, and
the fallback to the software implementation?
I think we can keep the curve id, the key size check if 'atmel-ecc' may
support other curves in the future, and if you're sure P256 is the only
curve 'atmel-ecc' uses, and it will be changed, we can delete it.

And fallback to ecdh software implementation is needed when
params.key_size is zero.

I don't have an atecc508 at hand to test the changes, but I expect
your changes won't affect the functionality.


OK, if you or your team members have an atecc508, please help test.