[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e354fe2f-2040-689a-4293-e1d919f14b74@infradead.org>
Date: Wed, 15 Jan 2020 16:17:05 -0800
From: Randy Dunlap <rdunlap@...radead.org>
To: Stephan Müller <smueller@...onox.de>,
Arnd Bergmann <arnd@...db.de>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
linux-crypto@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>,
linux-api@...r.kernel.org,
"Eric W. Biederman" <ebiederm@...ssion.com>,
"Alexander E. Patrakov" <patrakov@...il.com>,
"Ahmed S. Darwish" <darwish.07@...il.com>,
"Theodore Y. Ts'o" <tytso@....edu>, Willy Tarreau <w@....eu>,
Matthew Garrett <mjg59@...f.ucam.org>,
Vito Caputo <vcaputo@...garu.com>,
Andreas Dilger <adilger.kernel@...ger.ca>,
Jan Kara <jack@...e.cz>, Ray Strode <rstrode@...hat.com>,
William Jon McCann <mccann@....edu>,
zhangjs <zachary@...shancloud.com>,
Andy Lutomirski <luto@...nel.org>,
Florian Weimer <fweimer@...hat.com>,
Lennart Poettering <mzxreary@...inter.de>,
Nicolai Stange <nstange@...e.de>,
"Peter, Matthias" <matthias.peter@....bund.de>,
Marcelo Henrique Cerri <marcelo.cerri@...onical.com>,
Roman Drahtmueller <draht@...altsekun.de>,
Neil Horman <nhorman@...hat.com>,
Julia Lawall <julia.lawall@...ia.fr>,
Dan Carpenter <dan.carpenter@...cle.com>
Subject: Re: [PATCH v28 09/12] LRNG - add Jitter RNG fast noise source
On 1/15/20 2:34 AM, Stephan Müller wrote:
>
> CC: "Eric W. Biederman" <ebiederm@...ssion.com>
> CC: "Alexander E. Patrakov" <patrakov@...il.com>
> CC: "Ahmed S. Darwish" <darwish.07@...il.com>
> CC: "Theodore Y. Ts'o" <tytso@....edu>
> CC: Willy Tarreau <w@....eu>
> CC: Matthew Garrett <mjg59@...f.ucam.org>
> CC: Vito Caputo <vcaputo@...garu.com>
> CC: Andreas Dilger <adilger.kernel@...ger.ca>
> CC: Jan Kara <jack@...e.cz>
> CC: Ray Strode <rstrode@...hat.com>
> CC: William Jon McCann <mccann@....edu>
> CC: zhangjs <zachary@...shancloud.com>
> CC: Andy Lutomirski <luto@...nel.org>
> CC: Florian Weimer <fweimer@...hat.com>
> CC: Lennart Poettering <mzxreary@...inter.de>
> CC: Nicolai Stange <nstange@...e.de>
> Reviewed-by: Marcelo Henrique Cerri <marcelo.cerri@...onical.com>
> Reviewed-by: Roman Drahtmueller <draht@...altsekun.de>
> Tested-by: Roman Drahtmüller <draht@...altsekun.de>
> Tested-by: Marcelo Henrique Cerri <marcelo.cerri@...onical.com>
> Tested-by: Neil Horman <nhorman@...hat.com>
> Signed-off-by: Stephan Mueller <smueller@...onox.de>
> ---
> drivers/char/lrng/Kconfig | 11 +++++
> drivers/char/lrng/Makefile | 1 +
> drivers/char/lrng/lrng_jent.c | 89 +++++++++++++++++++++++++++++++++++
> 3 files changed, 101 insertions(+)
> create mode 100644 drivers/char/lrng/lrng_jent.c
>
> diff --git a/drivers/char/lrng/Kconfig b/drivers/char/lrng/Kconfig
> index 0d070a3897dd..10b7cbdb8c8e 100644
> --- a/drivers/char/lrng/Kconfig
> +++ b/drivers/char/lrng/Kconfig
> @@ -92,4 +92,15 @@ config LRNG_KCAPI
> provided by the selected kernel crypto API RNG.
> endif # LRNG_DRNG_SWITCH
>
> +config LRNG_JENT
> + bool "Enable Jitter RNG as LRNG Seed Source"
> + select CRYPTO_JITTERENTROPY
Don't select unless CRYPTO is already set/enabled.
> + help
> + The Linux RNG may use the Jitter RNG as noise source. Enabling
> + this option enables the use of the Jitter RNG. Its default
> + entropy level is 16 bits of entropy per 256 data bits delivered
> + by the Jitter RNG. This entropy level can be changed at boot
> + time or at runtime with the lrng_base.jitterrng configuration
> + variable.
> +
> endif # LRNG
> diff --git a/drivers/char/lrng/lrng_jent.c b/drivers/char/lrng/lrng_jent.c
> new file mode 100644
> index 000000000000..ff0bbe2680c4
> --- /dev/null
> +++ b/drivers/char/lrng/lrng_jent.c
> @@ -0,0 +1,89 @@
> +// SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
> +/*
> + * LRNG Fast Noise Source: Jitter RNG
> + *
> + * Copyright (C) 2016 - 2020, Stephan Mueller <smueller@...onox.de>
> + */
> +
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> +#include <linux/types.h>
> +#include <crypto/internal/jitterentropy.h>
> +
> +#include "lrng_internal.h"
> +
> +/*
> + * Estimated entropy of data is a 16th of LRNG_DRNG_SECURITY_STRENGTH_BITS.
> + * Albeit a full entropy assessment is provided for the noise source indicating
> + * that it provides high entropy rates and considering that it deactivates
> + * when it detects insufficient hardware, the chosen under estimation of
> + * entropy is considered to be acceptable to all reviewers.
> + */
> +static u32 jitterrng = LRNG_DRNG_SECURITY_STRENGTH_BITS>>4;
> +module_param(jitterrng, uint, 0644);
> +MODULE_PARM_DESC(jitterrng, "Entropy in bits of 256 data bits from Jitter "
> + "RNG noise source");
One line for the string, please, not split to 2 lines.
--
~Randy
Reported-by: Randy Dunlap <rdunlap@...radead.org>
Powered by blists - more mailing lists