using System; namespace System.Security.Cryptography { /// Represents the abstract class from which all implementations of cryptographic random number generators derive. // Token: 0x02000524 RID: 1316 public abstract class RandomNumberGenerator { /// Creates an instance of the default implementation of a cryptographic random number generator that can be used to generate random data. /// A new instance of a cryptographic random number generator. /// /// /// // Token: 0x0600305C RID: 12380 RVA: 0x0009E0FC File Offset: 0x0009C2FC public static RandomNumberGenerator Create() { return RandomNumberGenerator.Create("System.Security.Cryptography.RandomNumberGenerator"); } /// Creates an instance of the specified implementation of a cryptographic random number generator. /// A new instance of a cryptographic random number generator. /// The name of the random number generator implementation to use. // Token: 0x0600305D RID: 12381 RVA: 0x0009E108 File Offset: 0x0009C308 public static RandomNumberGenerator Create(string rngName) { return (RandomNumberGenerator)CryptoConfig.CreateFromName(rngName); } /// When overridden in a derived class, fills an array of bytes with a cryptographically strong random sequence of values. /// The array to fill with cryptographically strong random bytes. // Token: 0x0600305E RID: 12382 public abstract void GetBytes(byte[] data); /// When overridden in a derived class, fills an array of bytes with a cryptographically strong random sequence of nonzero values. /// The array to fill with cryptographically strong random nonzero bytes. // Token: 0x0600305F RID: 12383 public abstract void GetNonZeroBytes(byte[] data); } }