title: How are .NET 4 GUIDs generated?
body: <p>I am aware of the multitude of questions <a href="https://stackoverflow.com/questions/tagged/guid">here</a> as well as Raymond's excellent (as usual) <a href="https://blogs.msdn.microsoft.com/oldnewthing/20080627-00/?p=21823" rel="noreferrer">post</a>. However, since the algorithm to create GUIDs was changed apparently, I found it hard to get my hands on any up-to-date information. The <a href="http://msdn.microsoft.com/en-us/library/system.guid.aspx" rel="noreferrer">MSDN</a> seems to try and provide as few information as possible.</p>
  
  <p>What is known about how GUIDs are generated in .NET 4? What was changed, and how does it affect the security ("randomness") and integrity ("uniqueness")?</p>
  
  <p>One specific aspect I'm interested in: In v1, it seems to be about impossible to generate the same GUID on a single machine again since there was a timestamp and counter involved. In v4, this is no longer the case (I was told), so the chance to get the same GUID on a single machine ... <em>increased</em>?</p>