This lecture explains why randomness is so important to security, using examples such as TLS session keys and TCP initial sequence numbers. It reviews the inadequacies of conventional pseudo-random number generators (PRNGs) for security purposes and explores more secure alternatives. It highlights the importance of initializing cryptographically secure pseudo-random number generators (CSPRNGs) with a good source of entropy, and discusses some of the entropy sources that can be used to seed CSPRNGs.
/dev/urandom