Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Jul 2015 09:10:31 +0100
From:      Mark R V Murray <markm@FreeBSD.org>
To:        Scott Long <scott4long@yahoo.com>
Cc:        src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r284959 - in head: . share/man/man4 share/man/man9 sys/conf sys/dev/glxsb sys/dev/hifn sys/dev/random sys/dev/rndtest sys/dev/safe sys/dev/syscons sys/dev/ubsec sys/dev/virtio/random sy...
Message-ID:  <C7829D02-EFB2-4C3D-B68E-28A6CADCEC01@FreeBSD.org>
In-Reply-To: <96EA33AB-7325-4DD2-83F4-B4FAF6F47CB5@yahoo.com>
References:  <201506301700.t5UH0jPq001498@svn.freebsd.org> <alpine.BSF.2.20.1507221138360.1071@desktop> <FFAED695-145A-45F5-988D-B843EF5F544B@FreeBSD.org> <alpine.BSF.2.20.1507221249120.1071@desktop> <FFFB06D7-164B-40B3-AFC3-A6630BCF074E@bsdimp.com> <E20B169F-4C8A-4D11-9853-5C2EFC116450@FreeBSD.org> <F54A96A8-D9AD-409A-814F-538B6AD3CD50@yahoo.com> <20150724012519.GE78154@funkthat.com> <BC734D25-375C-4C1C-BA8A-BD91158B6A39@FreeBSD.org> <96EA33AB-7325-4DD2-83F4-B4FAF6F47CB5@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help

> On 25 Jul 2015, at 06:06, Scott Long <scott4long@yahoo.com> wrote:
>=20
>> I=E2=80=99m working on a premise of =E2=80=9Ctools, not policy=E2=80=9D=
. I=E2=80=99d like there to be
>> enough harvesting points for the box owner to get the warm fuzzies.
>> If they choose to use less, fine by me.
>>=20
>=20
> Sure, and that=E2=80=99s not an unreasonable goal, but the devil is in =
the details.

Yes, indeed!

> It=E2=80=99s an unfortunate fact of modern CPU architecture that even =
something
> as simple and innocent as a run-time control that checks a variable =
can
> cause significant performance problems, thanks to the penalty of cache
> misses and bus contention between lots of CPU cores.  Maybe these
> =E2=80=9Cextended=E2=80=9D collection points should be controlled with =
a compile-time
> option?

They can. I=E2=80=99ve coded it already, but not tested it properly, and =
will
commit in a week or two. :-)

>=20
>>> Many of the issues that FreeBSD sees with lack of entropy at start =
up
>>> is more of a problem on how systems are installed and provisioned.  =
I
>>> don't believe that we currently store any entropy from the install
>>> process, yet this is one of the best places to get it, the user is
>>> banging on keyboard selecting options, etc.  If an image is designed
>>> to be cloned (vm images or appliance images) we need to have a
>>> mechanism to ensure that before we start, we get the entropy from
>>> other sources, be it a hardware RNG or the console.
>>=20
>> Getting an initial entropy bundle for first boot is high up on my
>> TODO list. :-) Patches welcome! We need the usual /entropy (or
>> /var/db/entropy/=E2=80=A6 or whatever) and crucially we need =
/boot/entropy
>> and the correct invocation in /boot/loader.conf.
>>=20
>=20
> I agree that bootstrap entropy is a big deal, especially with the =
increasing
> prevalence of using virtual machine containers, cloned images, and
> datacenter automation.  Addressing that is an interesting problem, and
> goes well beyond the scope of in-kernel entropy collection.  I wish I =
had
> a simple answer or a patch for you ;-)

The hard stuff has been done. We just need to write (e.g.) 4k of good
numbers to /boot/entropy and job nearly done. This could be done by
sysinstall or by the cloning system, for example.

The embedded folks will still need a bit more careful etc/rc.d/* design.

>> Well, sure, but what if you don=E2=80=99t have microphone? I want =
lots
>> of choices, in anticipation of only a subset being usable.
>>=20
>=20
> I still think that for most use cases where you have a high likelyhood
> of draining /dev/random of useful bits, you=E2=80=99re likely already =
on a tight
> budget for CPU cycles and you=E2=80=99ll probably just look to a =
hardware
> accelerator rather than sacrifice even more CPU cycles.  At least,
> that=E2=80=99s what the nice sale people at Cavium and Intel tell me =
;-)

Sure, but I don=E2=80=99t trust them either. This is the professional =
mistrust
of crypto, not an assertion of incompetence or malice. ;-) They do,
however, fulfil a need, but I don=E2=80=99t like the idea of trusting a =
single
source unless that source has been properly vetted.

M
--=20
Mark R V Murray




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C7829D02-EFB2-4C3D-B68E-28A6CADCEC01>