edit: but i guess that's on purpose to handle disk imaging
Per some of the comments in the Debian bug(s): if you tell users and devs simply "you deal with it", you will get a multitude of ad hoc, half-baked solutions that may nor may not be secure. You will have dozens of people trying to re-invent the wheel.
The whole point of things like /dev/urandom and getentropy() is that the problem is solved once properly, and then you allow everyone to benefit. By having the above solutions not-work, we are basically going back to the days of where they did not exist--in which case what was the point of creating them?
The BSDs seem to not have a problem with this, so I have no idea why the Linux folks can't seem to get their act together.
> Key generation is already slow anyway.
Define "slow". Key generation was slow in the early 1990s when I first started using PGP (nee GPG) back in the day. It is generally not-slow nowadays IMHO--as in, it takes less than ten minutes to find p and q for RSA 1024 (nevermind 2048+).
To a first approximation:
* SHA256( cat /var/lib/randomseed || ifconfig || date -u ) > /dev/urandom
will get any decent stream-cipher-based PRNG going.
Each machine will have a unique MAC address, so that's 48 bits right off the bat, even if randomseed is identical and every machine is booted at the exact same second.
If the system is not communicating with other systems... what attack tree are you actually worried about if it is inaccessible?
I would also be curious to know which virtualization environments generate duplicate MAC addresses over (say) dozens of systems?
qemu uses the same MAC address by default.
Are you telling me there is not even, say, 8 bits' worth of entropy credit in there? (Especially when hashed with other data?)
Remember: the context of this discussion is VMs (and not embedded systems without a battery-backed RTC).
Persistent state is hard. For example, some systems run with read-only filesystem.
Edit: Replaced "host keys" with "cryptographic state".