Adrián Bíro

Cryptography And Randomness Notes

/dev/random/ /dev/urandom

The files in the directory /proc/sys/kernel/random provide an additional interface to the /dev/random device, cf. man 4 random | less +/proc\ Interface

$ base64 /proc/sys/kernel/random/uuid
ZTE2Y2U5ZWQtNDI3My00ZGYyLWI3YTYtZGY2OTdhZmU1MzJkCg==
$ sed 's/-//g' /proc/sys/kernel/random/uuid 
73c9c0c65f1c43eab2826d669b9c40b3
$ head -c 30 /dev/urandom | base64
kr7T5iC5X3TdxHxizD12NpPUB5wIxipIdfqAN6WY

Myths about urandom In Linux 4.8 the equivalency between /dev/urandom and /dev/random was given up. Now /dev/urandom output does not come from an entropy pool, but directly from a CSPRNG.

When to use dev random over dev urandom in linux

Linux /dev/random safely generate random numbers

Windows CryptGenRandom function

Cryptography

Cryptographic Best Practices

NSA Cybersecurity Information Sheet The Commercial National Security Algorithm Suite 2.0 and Quantum Computing FAQ

Size requirement for security

The Physic of Brute Force

Cryptographic Right Answers

Security and Cryptography MIT

Password

PIN analysis