.NET Framework - Random (随机数)

创建时间:
2017-03-31 11:18
最近更新:
2018-08-03 00:16

Resource - MSDN

  1. System.Random 类 - 表示伪随机数生成器,这是一种能够产生满足某些随机性统计要求的数字序列的设备。
  2. System.Security.Cryptography.RNGCryptoServiceProvider 类 - 使用加密服务提供程序 (CSP) 提供的实现来实现加密随机数生成器 (RNG)。
  3. System.Security.Cryptography.RandomNumberGenerator 类 - 表示加密随机数生成器的所有实现从中派生的抽象类

RNGCryptoServiceProvider 示例 (网摘)

/// <summary>
/// 获取不重复的随机数种子
/// system.Security.Cryptography.RNGCryptoServiceProvider 类 采用系统当前的硬件信息、进程信息、线程信息、系统启动时间和当前精确时间作为填充因子,通过更好的算法生成高质量的随机数。
/// </summary>
public static int GetRandomSeed()
{
    byte[] bytes = new byte[4];
    RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
    rng.GetBytes(bytes);
    int result = BitConverter.ToInt32(bytes, 0);
    return result;
}

Resource

  1. 真随机数、伪随机数