2022-02-24 00:00:50

by Ahmad Fatoum

[permalink] [raw]
Subject: Re: [PATCH v5 3/5] KEYS: trusted: allow trust sources to use kernel RNG for key material

On 22.02.22 20:58, Ahmad Fatoum wrote:
> The two existing trusted key sources don't make use of the kernel RNG,
> but instead let the hardware that does the sealing/unsealing also
> generate the random key material. While a previous change offers users
> the choice to use the kernel RNG instead for both, new trust sources
> may want to unconditionally use the kernel RNG for generating key
> material, like it's done elsewhere in the kernel.
>
> This is especially prudent for hardware that has proven-in-production
> HWRNG drivers implemented, as otherwise code would have to be duplicated
> only to arrive at a possibly worse result.
>
> Make this possible by turning struct trusted_key_ops::get_random
> into an optional member. If a driver leaves it NULL, kernel RNG
> will be used instead.

The rebase on the change in scope of the previous commit made this
one here quite small. I would squash it into the previous commit
for v6, unless there are objections.


>
> Acked-by: Sumit Garg <[email protected]>
> Reviewed-by: David Gstir <[email protected]>
> Tested-By: Tim Harvey <[email protected]>
> Signed-off-by: Ahmad Fatoum <[email protected]>
> ---
> To: James Bottomley <[email protected]>
> To: Jarkko Sakkinen <[email protected]>
> To: Mimi Zohar <[email protected]>
> To: David Howells <[email protected]>
> Cc: James Morris <[email protected]>
> Cc: "Serge E. Hallyn" <[email protected]>
> Cc: "Horia Geantă" <[email protected]>
> Cc: Aymen Sghaier <[email protected]>
> Cc: Herbert Xu <[email protected]>
> Cc: "David S. Miller" <[email protected]>
> Cc: Eric Biggers <[email protected]>
> Cc: Jan Luebbe <[email protected]>
> Cc: David Gstir <[email protected]>
> Cc: Richard Weinberger <[email protected]>
> Cc: Franck LENORMAND <[email protected]>
> Cc: Sumit Garg <[email protected]>
> Cc: Tim Harvey <[email protected]>
> Cc: Matthias Schiffer <[email protected]>
> Cc: Pankaj Gupta <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> ---
> include/keys/trusted-type.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/keys/trusted-type.h b/include/keys/trusted-type.h
> index d89fa2579ac0..4eb64548a74f 100644
> --- a/include/keys/trusted-type.h
> +++ b/include/keys/trusted-type.h
> @@ -64,7 +64,7 @@ struct trusted_key_ops {
> /* Unseal a key. */
> int (*unseal)(struct trusted_key_payload *p, char *datablob);
>
> - /* Get a randomized key. */
> + /* Optional: Get a randomized key. */
> int (*get_random)(unsigned char *key, size_t key_len);
>
> /* Exit key interface. */


--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |


2022-02-25 19:15:40

by Pankaj Gupta

[permalink] [raw]
Subject: RE: [EXT] Re: [PATCH v5 3/5] KEYS: trusted: allow trust sources to use kernel RNG for key material

Reviewed-by: Pankaj Gupta <[email protected]>

> -----Original Message-----
> From: Ahmad Fatoum <[email protected]>
> Sent: Wednesday, February 23, 2022 9:53 PM
> To: James Bottomley <[email protected]>; Jarkko Sakkinen
> <[email protected]>; Mimi Zohar <[email protected]>; David Howells
> <[email protected]>
> Cc: [email protected]; Sumit Garg <[email protected]>; David Gstir
> <[email protected]>; [email protected]; James Morris
> <[email protected]>; Serge E. Hallyn <[email protected]>; Horia Geanta
> <[email protected]>; Aymen Sghaier <[email protected]>; Herbert
> Xu <[email protected]>; David S. Miller <[email protected]>;
> Eric Biggers <[email protected]>; Jan Luebbe <[email protected]>;
> Richard Weinberger <[email protected]>; Franck Lenormand
> <[email protected]>; Matthias Schiffer <[email protected]
> group.com>; Pankaj Gupta <[email protected]>; [email protected];
> [email protected]; [email protected]; linux-
> [email protected]; [email protected]
> Subject: [EXT] Re: [PATCH v5 3/5] KEYS: trusted: allow trust sources to use
> kernel RNG for key material
>
> Caution: EXT Email
>
> On 22.02.22 20:58, Ahmad Fatoum wrote:
> > The two existing trusted key sources don't make use of the kernel RNG,
> > but instead let the hardware that does the sealing/unsealing also
> > generate the random key material. While a previous change offers users
> > the choice to use the kernel RNG instead for both, new trust sources
> > may want to unconditionally use the kernel RNG for generating key
> > material, like it's done elsewhere in the kernel.
> >
> > This is especially prudent for hardware that has proven-in-production
> > HWRNG drivers implemented, as otherwise code would have to be
> > duplicated only to arrive at a possibly worse result.
> >
> > Make this possible by turning struct trusted_key_ops::get_random into
> > an optional member. If a driver leaves it NULL, kernel RNG will be
> > used instead.
>
> The rebase on the change in scope of the previous commit made this one here
> quite small. I would squash it into the previous commit for v6, unless there are
> objections.
>
>
> >
> > Acked-by: Sumit Garg <[email protected]>
> > Reviewed-by: David Gstir <[email protected]>
> > Tested-By: Tim Harvey <[email protected]>
> > Signed-off-by: Ahmad Fatoum <[email protected]>
> > ---
> > To: James Bottomley <[email protected]>
> > To: Jarkko Sakkinen <[email protected]>
> > To: Mimi Zohar <[email protected]>
> > To: David Howells <[email protected]>
> > Cc: James Morris <[email protected]>
> > Cc: "Serge E. Hallyn" <[email protected]>
> > Cc: "Horia Geant?" <[email protected]>
> > Cc: Aymen Sghaier <[email protected]>
> > Cc: Herbert Xu <[email protected]>
> > Cc: "David S. Miller" <[email protected]>
> > Cc: Eric Biggers <[email protected]>
> > Cc: Jan Luebbe <[email protected]>
> > Cc: David Gstir <[email protected]>
> > Cc: Richard Weinberger <[email protected]>
> > Cc: Franck LENORMAND <[email protected]>
> > Cc: Sumit Garg <[email protected]>
> > Cc: Tim Harvey <[email protected]>
> > Cc: Matthias Schiffer <[email protected]>
> > Cc: Pankaj Gupta <[email protected]>
> > Cc: [email protected]
> > Cc: [email protected]
> > Cc: [email protected]
> > Cc: [email protected]
> > Cc: [email protected]
> > ---
> > include/keys/trusted-type.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/include/keys/trusted-type.h b/include/keys/trusted-type.h
> > index d89fa2579ac0..4eb64548a74f 100644
> > --- a/include/keys/trusted-type.h
> > +++ b/include/keys/trusted-type.h
> > @@ -64,7 +64,7 @@ struct trusted_key_ops {
> > /* Unseal a key. */
> > int (*unseal)(struct trusted_key_payload *p, char *datablob);
> >
> > - /* Get a randomized key. */
> > + /* Optional: Get a randomized key. */
> > int (*get_random)(unsigned char *key, size_t key_len);
> >
> > /* Exit key interface. */
>
>
> --
> Pengutronix e.K. | |
> Steuerwalder Str. 21 |
> https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.pen
> gutronix.de%2F&amp;data=04%7C01%7Cpankaj.gupta%40nxp.com%7Cd6143a
> 1791a8494849f208d9f6e8cef8%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0
> %7C0%7C637812302026139014%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4
> wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&am
> p;sdata=2QRFygy%2BVafXrLIkF1BOHtDiwP%2Fz9kwU9ovtG1WJBTY%3D&amp;r
> eserved=0 |
> 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |