4 ms·
Can we please stop cargo-culting the "fact" that /dev/random outputs raw entropy while /dev/urandom is the output of a CSPRNG? They are both outputs from the sa
by stouset 13y ago
Can we please stop cargo-culting the "fact" that /dev/random outputs raw entropy while /dev/urandom is the output of a CSPRNG? They are both outputs from the same CSPRNG algorithm[1].
Edit: I'm eagerly awaiting the tptacek takedown of this article. Comments like "even a regular user can run: cat /dev/random > /dev/null & cat /dev/zero > /dev/random... entropy will be degraded" do not give me confidence in this guy's understanding of the systems involved. Same with his blatant misreading of RNDZAPENTCOUNT and RNDCLEARPOOL, which simple research[2] reveals only clears the entropy count and does nothing to the underlying entropy pool itself.
[1]: http://www.2uo.de/myths-about-urandom/ http://www.2uo.de/myths-about-urandom/
[2]: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/char/random.c#n1468 http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g...
- SAI_Peregrinus 13y agoEspecially because /dev/random's ability to block when it doesn't have enough entropy is dependent on accurate entropy estimation. Since the entropy estimator isn't accurate (it can't be, it's an undecidable problem) there will be attacks possible on the entropy estimator, either causing it to block when it shouldn't (DOS) or output data with insufficient entropy.