A lot of computer security depends on encryption: SSL connections, TCP packet sequencing, encrypted files, etc. These depend on random number generation to ensure that attackers can't guess the encryption key.
Weak random number generation creates security vulnerabilities like the recent one with SSL certificates. However, you can't get truly random output from a deterministic computer program; you need to at least seed it with something truly random from the physical world.
Pseudorandom number generators are sufficient for most purposes; they output a pattern of numbers which is very hard to predict unless you know the starting point. That starting point, however, should be a truly random seed, and should be renewed periodically.
I see that hardware random number generators do exist. My question is: how can I, as a regular computer user, use one? Or am I likely using one already?
I'd like to know that when I start an SSL connection, it's based on solid randomness.
(Of course, this applies doubly to web servers that I work with.)