You can create strong random number values with the System.Security.Cryptography.RandomNumberGenerator class. You use these random key or salt values when you want to store salted password hashes. A salted password hash is a hash created from a password and a so-called salt where salt is a random value. This guarantees that even if two users select the same password, the result stored in the back-end store looks different, because the random salt value is hashed with the password. You should store the salt value in a separate field together with the password, because you need it for password validation. The next code lines show how to use System.Security.Cryptography.RandomNumberGenerator class:

Dim RandomValue As Byte() = New Byte(15) {} Dim RndGen As RandomNumberGenerator = RandomNumberGenerator.Create() RndGen.GetBytes(RandomValue) ResultLabel.Text = Convert.ToBase64String(RandomValue)