Date: Sun, 18 Aug 2013 09:53:29 -0700 From: Tim Kientzle <tim@kientzle.com> To: =?iso-8859-1?Q?Dag-Erling_Sm=F8rgrav?= <des@des.no>, Mark R V Murray <mark@grondar.org> Cc: secteam@freebsd.org, FreeBSD-arch Arch <freebsd-arch@freebsd.org> Subject: Re: random(4) plugin infrastructure for mulitple RNG in a modular fashion Message-ID: <4C1BD77C-8C6B-4044-9285-5978A3BC4B70@kientzle.com> In-Reply-To: <86r4dr5j3p.fsf@nine.des.no> References: <20130807183112.GA79319@dragon.NUXI.org> <86pptfnu33.fsf@nine.des.no> <20130815231713.GD76666@x96.org> <20130816002625.GE76666@x96.org> <9B274F48-0C88-4117-BEAC-1A555772A3C5@grondar.org> <86a9kf733d.fsf@nine.des.no> <0C97B866-A169-4141-8368-AA7F5B5382F4@grondar.org> <861u5r71zi.fsf@nine.des.no> <892B11BD-396D-4F82-B97C-753F72CA494D@grondar.org> <86r4dr5j3p.fsf@nine.des.no>
next in thread | previous in thread | raw e-mail | index | archive | help
On Aug 18, 2013, at 4:33 AM, Dag-Erling Sm=F8rgrav wrote: > Mark R V Murray <mark@grondar.org> writes: >> OK - in the context of what is currently there, it makes less sense = than >> that; loading RDRAND/Ivy and Nehemiah simultaneously is silly =85 Lots of folks build static kernels that they run on diverse hardware. The hardware RNG modules should be loadable simultaneously and should probe and activate only if their hardware is present, like any other driver for real hardware. > Provided the HWRNG is of sufficient quality, the user should be = allowed > to use it directly (through /dev/random) without Yarrow / Fortuna. We could have kernel options to choose mixers (e.g., Yarrow or Fortuna) for /dev/random and loadable device modules for entropy sources. Besides Yarrow and Fortuna mixers, we could then offer a "null mixer" option that selected the single "best" entropy source and passed it directly through. Users could compile the null mixer into the kernel and load a single HW RNG driver to have precise control over /dev/random. Interrupt harvesting would be the lowest-quality source as a fall back. In particular, this has a reasonable failure mode if someone built a kernel with only a single HW entropy source and the null mixer: * On hardware with that source, they would get full-speed HW entropy. * On hardware without that source, they would get the old blocking /dev/random that we had before Yarrow, the one that used only interrupt harvesting. Tim
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C1BD77C-8C6B-4044-9285-5978A3BC4B70>