Re: [RFC PATCH 1/4] X.509: Parse public key parameters from x509 for akcipher

From: Herbert Xu
Date: Thu Feb 28 2019 - 04:01:36 EST


On Thu, Feb 28, 2019 at 11:28:01AM +0300, Vitaly Chikunov wrote:
> On Thu, Feb 28, 2019 at 03:51:41PM +0800, Herbert Xu wrote:
> > On Thu, Feb 28, 2019 at 10:04:49AM +0300, Vitaly Chikunov wrote:
> > >
> > > It seems that you insist on set_params to be removed and both key and
> > > params to be passed into set_{pub,priv}_key. This means reworking all
> > > existing RSA drivers and callers, right? Can you please confirm that
> > > huge rework to avoid misunderstanding?
> >
> > I don't understand why we even need to touch the existing RSA
> > drivers. Nothing needs to change as far as they're concerned.
> >
> > Only the new algorithms would need to decode the extra parameters
> > in the key stream.
>
> int (*set_pub_key)(struct crypto_akcipher *tfm, const void *key,
> unsigned int keylen);
> int (*set_priv_key)(struct crypto_akcipher *tfm, const void *key,
> unsigned int keylen);
>
> So you want `keylen' not to cover parameters data, but parameters
> actually present in key after `keylen' bytes (in come packed format)?
> (And if there is no parameters appended, there is still appended some
> marker, like 0, to signify that there is no parameters.)
>
> This looks a bit counter-intuitive usage of arguments (as argument
> signifying length does not cover all arguments data), is this ok to you?

This is how we handle things in DH as well as other places such
as authenc.

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