On the order of microseconds, you may be right. But I wouldn't be
surprised to find patterns on the order of milliseconds.
I would think so. You would find people hitting certain key pairs
pretty well the same way each time. Let's say you type 200 wpm, that
is 2000 chars per minute or 33 cps. So that is only 30 ms per char.
Your inter char time would vary perhaps only between 25 and 35
milliseconds per char, not enough to give you the variation you want.
However a nanosecond timer or a tight loop counter should. It would
vary between 25000 and 35000 ns you discard the high order 7 bits or
xor them into the lower to give you one random byte.
In the version I wrote long ago I put in code to detect holding down
the repeat key. I may also have insisted you hit a different key each
time. If you worked at it, you probably could get non-random values,
e..g by warbling back and forth between two keys at a consistent
speed.
Radiocativity should be a lot cheaper than Mexican peasants for
generating one-time pads and more secure.
How could you crack it? Have your peasant smuggle in a typing device
you hide in your palm that hits key using a timing based on a linear
random number generator.
With all these schemes, you have to put on hats of attacker and
defender back and forth to guess just how much work the attacker would
have to go through.
Defenders tend to get in the mindset of improving an already
substantial defense, not appreciating that any attack will try to
bypass it.
I remember humilating a company that presented an encryption package
to our computer club claiming it would take x million years to crack
the code. I did it in a few minutes -- very simply. They did not
think to wipe the clear text temp files it created then "deleted".