title: How urandom function generates random
body: <p>I'm a newbie on python and flask.
  When reading flask tutorial on the official web site, 
  I found that the using urandom() function is recommended way of generating secret key.</p>
  
  <p>In here, I'm wondering how the random number is generated by urandom(), and why this is more cryptographically safe.</p>
  
  <p>I know the basic principle used in random generator used in C, and if the same principle is used in the urandom, it should be initialized with random seed. However, I don't see the seed related function in os module API.</p>
  
  <p>I found some articles saying that it refers some value on specific locations but I don't know how it can be related to randomness and why it is safe to use.</p>