Messages in this thread | | | Date | Tue, 22 Jul 2014 09:59:15 -0400 | From | Theodore Ts'o <> | Subject | Re: [PATCH v4 2/5] random: Add and use arch_get_rng_seed |
| |
On Thu, Jul 17, 2014 at 11:22:17AM -0700, Andy Lutomirski wrote: > Currently, init_std_data contains its own logic for using arch > random sources. This logic is a bit strange: it reads one long of > arch random data per byte of internal state.
This isn't true. Check out the init_std_data() a bit more closely.
unsigned long rv;
...
for (i = r->poolinfo->poolbytes; i > 0; i -= sizeof(rv)) { ...
In particular, note the "i -= sizeof(rv)". We are reading one bit per bit of internal state beeing seeded.
> Assuming the arch sources are perfect, this is the right thing to > do. They're not, though, so the followup patch attempts to > implement the correct logic on x86.
... and that's not a problem because we aren't giving any entropy credit --- and this is deliberate, because we don't want to trust un-auditable hardware. We are deliberately trying to be conservative here.
So I don't think either this patch or the next one is needed. It adds far more complexity than is warranted.
Regards,
- Ted
| |