This quote in particular struck me as very strange.
> From: Florian Weimer <fw@deneb.enyo.de>
> To: Thorsten Glaser <tg@mirbsd.de>
> Cc: 742145@bugs.debian.org
> Subject: Re: openssl: uses only 32 bytes (256 bit) for key generation
> Date: Wed, 19 Mar 2014 21:33:10 +0100
>
> * Thorsten Glaser:
>
> >>Historically, the OpenSSL command line tools have been intended for
> >>debugging only.
> >
> > I disagree,
>
> It's what I was told by the OpenSSL developers.
>
> > Also, what do other tools (that do not invoke openssl(1)
> > unlike most of these I saw, which were shell wrappers
> > around it) do, entropy-wise?
>
> There are different choices. Some use more bits from /dev/urandom,
> some even block on /dev/random. The latter is quite problematic for
> non-interactive key generation during package isntallation.
1. I would doubt most actually block on /dev/random, but why? /dev/urandom should be Good Enough For Everyone, except in very narrow circumstances. But why isn't someone with a firm grasp of crypto setting a safe default? Why are implementers and consumers of these components making these choices of entropy size ("some use more bits") and underlying sources ("some even block..."). This is ridiculous, I don't trust the average developer to make safe choices in this respect. Why is it okay? This is incoherent. Either OpenSSL has safe defaults, or it doesn't. Leaving it up to consumers to do it correctly is giving up - and leads me to believe it's done unsafely by default.
2. The inconsistency alluded to by referring to non-interactive key generation and "some even block on" startles me. I don't know why developers think blocking on key generation is generally safer, but if they do, why are other (perhaps the same?) developers sacrificing that safety when generating keys on package installation for the sake of user experience? If /dev/random is safer, it should be used, and if not, it shouldn't be (because of the blocking issue.) The lack of guidance from crypto-savvy developers is deeply concerning.