RandomNumberGeneratorクラスを使って乱数を生成するには、GetBytesメソッドを使います。 GetBytesメソッドは、Random.NextBytesメソッドと同様のメソッドで、引数として与えられたバイト配列を乱数で満たします。

RandomNumberGenerator.GetBytesメソッドでバイト配列を乱数で満たす
Imports System
Imports System.Security.Cryptography

Class Sample
  Shared Sub Main()
    Using rng As RandomNumberGenerator = RandomNumberGenerator.Create()
      ' RandomNumberGeneratorを使って16バイトのnonce値を3個生成する
      Dim nonce(15) As Byte

      For i As Integer = 1 To 3
        rng.GetBytes(nonce)

        Console.WriteLine(BitConverter.ToString(nonce))
      Next
    End Using
  End Sub
End Class
実行結果の一例
44-55-FB-46-91-80-CB-8E-EC-52-5A-06-48-13-46-B5
F7-30-40-46-6E-1B-80-00-B5-61-D5-13-0D-3A-BD-9E
5C-A6-2D-70-FF-55-BA-BF-E5-A1-D1-F8-94-1D-55-A6

Randomクラスとは異なり、RandomNumberGeneratorはシード値を必要としません。 RandomNumberGeneratorでは、インスタンスに関わらずメソッド呼び出し毎に異なる乱数を得ることができます。