From: "Stephan Müller" <smueller@chronox.de>
To: Arnd Bergmann <arnd@arndb.de>
Cc: "Jason A. Donenfeld" <jason@zx2c4.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-crypto@vger.kernel.org,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [RFC PATCH v12 2/4] random: conditionally compile code depending on LRNG
Date: Tue, 18 Jul 2017 10:37:40 +0200 [thread overview]
Message-ID: <1590546.5d4hGCCWgT@positron.chronox.de> (raw)
In-Reply-To: <CAK8P3a2aQ8nJUjo76Vwt-vkPUoa9BT616ZVZWsVykHHiz4Pdpw@mail.gmail.com>
Am Dienstag, 18. Juli 2017, 10:13:55 CEST schrieb Arnd Bergmann:
Hi Arnd,
> On Tue, Jul 18, 2017 at 9:58 AM, Stephan Müller <smueller@chronox.de> wrote:
> > When selecting the LRNG for compilation, disable add_disk_randomness and
> > its supporting function.
> >
> > CC: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > CC: Arnd Bergmann <arnd@arndb.de>
> > CC: Jason A. Donenfeld <Jason@zx2c4.com>
> > Signed-off-by: Stephan Mueller <smueller@chronox.de>
>
> I think this needs a better explanation. Why do we ignore the extra
> entropy here?
I was not sure whether to add all the details about the reason into the patch
submission.
The reason is explained here in [1] page 3 and re-iterated in [2].
The gist is the following:
A HID or block device event providing entropy to the respective individual
noise sources processing generates an interrupt. These interrupts are also
processed by the interrupt noise source. The majority of entropy is delivered
by the high-resolution time stamp of the occurrence of such an event. Now,
that event is processed twice in the legacy /dev/random implementation: once
by the HID or block device noise source and once by the interrupt noise
source. Thus, the two time stamps of the one event (HID noise source and
interrupt noise source, or block device noise source and interrupt noise
source) used as a basis for entropy are highly correlated. Correlation or even
a possible reuse of the same random value diminishes entropy significantly.
The additional data provided via the block noise source (block device number)
has no real entropy.
Bottom line: for entropy, the HID and block device noise sources are just a
derivative of the interrupt noise source. Thus, discarding the block device
noise source will not lose any entropy. Regarding the HID noise source, only
the key/mouse event numbers are injected into the LRNG without attributing any
entropy to them.
[1] http://www.chronox.de/lrng/doc/lrng.pdf
[2] https://www.spinics.net/lists/linux-crypto/msg26316.html
Ciao
Stephan
next prev parent reply other threads:[~2017-07-18 8:37 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-18 7:57 [RFC PATCH v12 0/4] /dev/random - a new approach Stephan Müller
2017-07-18 7:57 ` [RFC PATCH v12 1/4] crypto: make Jitter RNG directly accessible Stephan Müller
2017-07-18 8:30 ` Greg Kroah-Hartman
2017-07-18 8:40 ` Stephan Müller
2017-07-18 8:49 ` Greg Kroah-Hartman
2017-07-18 8:53 ` Stephan Müller
2017-07-18 9:02 ` Arnd Bergmann
2017-07-18 9:10 ` Stephan Müller
2017-07-18 9:16 ` Arnd Bergmann
2017-07-18 9:17 ` Stephan Müller
2017-07-18 7:58 ` [RFC PATCH v12 2/4] random: conditionally compile code depending on LRNG Stephan Müller
2017-07-18 8:13 ` Arnd Bergmann
2017-07-18 8:37 ` Stephan Müller [this message]
2017-07-18 8:47 ` Arnd Bergmann
2017-07-18 8:50 ` Stephan Müller
2017-07-18 7:59 ` [RFC PATCH v12 3/4] Linux Random Number Generator Stephan Müller
2017-07-18 8:32 ` Greg Kroah-Hartman
2017-07-18 8:45 ` Stephan Müller
2017-07-18 8:52 ` Greg Kroah-Hartman
2017-07-18 14:37 ` Stephan Müller
2017-07-18 21:08 ` Theodore Ts'o
2017-07-19 1:00 ` Sandy Harris
2017-07-19 1:51 ` Theodore Ts'o
2017-07-19 6:25 ` Stephan Müller
2017-07-30 10:44 ` Pavel Machek
2017-07-23 18:05 ` Sandy Harris
2017-07-23 21:47 ` Theodore Ts'o
2017-07-19 6:22 ` Stephan Müller
2017-07-19 6:34 ` Greg Kroah-Hartman
2017-07-19 17:26 ` Theodore Ts'o
2017-07-20 19:00 ` Stephan Müller
2017-07-21 3:08 ` Theodore Ts'o
2017-07-21 8:57 ` Stephan Müller
2017-07-21 15:09 ` Arnd Bergmann
2017-07-21 15:17 ` Stephan Müller
2017-07-18 8:52 ` Greg Kroah-Hartman
2017-07-18 7:59 ` [RFC PATCH v12 4/4] LRNG - enable compile Stephan Müller
2017-07-18 8:51 ` Arnd Bergmann
2017-07-18 8:56 ` Stephan Müller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1590546.5d4hGCCWgT@positron.chronox.de \
--to=smueller@chronox.de \
--cc=arnd@arndb.de \
--cc=gregkh@linuxfoundation.org \
--cc=jason@zx2c4.com \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).