Re: [PATCH] random: add blocking facility to urandom

Sasha Levin
2011-09-07T20:23:38Z

On Wed, 2011-09-07 at 16:02 -0400, Steve Grubb wrote:
> On Wednesday, September 07, 2011 03:27:37 PM Ted Ts'o wrote:
> > On Wed, Sep 07, 2011 at 02:26:35PM -0400, Jarod Wilson wrote:
> > > We're looking for a generic solution here that doesn't require
> > > re-educating every single piece of userspace. And anything done in
> > > userspace is going to be full of possible holes -- there needs to be
> > > something in place that actually *enforces* the policy, and
> > > centralized accounting/tracking, lest you wind up with multiple
> > > processes racing to grab the entropy.
> >
> > Yeah, but there are userspace programs that depend on urandom not
> > blocking... so your proposed change would break them.
>
> The only time this kicks in is when a system is under attack. If you have set this and
> the system is running as normal, you will never notice it even there. Almost all uses
> of urandom grab 4 bytes and seed openssl or libgcrypt or nss. It then uses those
> libraries. There are the odd cases where something uses urandom to generate a key or
> otherwise grab a chunk of bytes, but these are still small reads in the scheme of
> things. Can you think of any legitimate use of urandom that grabs 100K or 1M from
> urandom? Even those numbers still won't hit the sysctl on a normally function system.
>

As far as I remember, several wipe utilities are using /dev/urandom to
overwrite disks (possibly several times).

Something similar probably happens for getting junk on disks before
creating an encrypted filesystem on top of them.

--

Sasha.