using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace System.Security.Cryptography
{
/// Represents the abstract class from which all implementations of cryptographic random number generators derive.
// Token: 0x02000415 RID: 1045
[Token(Token = "0x2000415")]
[ComVisible(true)]
public abstract class RandomNumberGenerator : IDisposable
{
/// Initializes a new instance of .
// Token: 0x0600242D RID: 9261 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x600242D")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
protected 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: 0x0600242E RID: 9262 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x600242E")]
[Address(RVA = "0x1028320", Offset = "0x1027320", VA = "0x181028320")]
public static RandomNumberGenerator Create()
{
return null;
}
/// Creates an instance of the specified implementation of a cryptographic random number generator.
/// The name of the random number generator implementation to use.
/// A new instance of a cryptographic random number generator.
// Token: 0x0600242F RID: 9263 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x600242F")]
[Address(RVA = "0x1028290", Offset = "0x1027290", VA = "0x181028290")]
public static RandomNumberGenerator Create(string rngName)
{
return null;
}
/// When overridden in a derived class, releases all resources used by the current instance of the class.
// Token: 0x06002430 RID: 9264 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002430")]
[Address(RVA = "0x10283C0", Offset = "0x10273C0", VA = "0x1810283C0", Slot = "4")]
public void Dispose()
{
}
/// When overridden in a derived class, releases the unmanaged resources used by the and optionally releases the managed resources.
///
/// to release both managed and unmanaged resources; to release only unmanaged resources.
// Token: 0x06002431 RID: 9265 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002431")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "5")]
protected virtual void Dispose(bool disposing)
{
}
/// 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: 0x06002432 RID: 9266
[Token(Token = "0x6002432")]
[Address(Slot = "6")]
public abstract void GetBytes(byte[] data);
/// Fills the specified byte array with a cryptographically strong random sequence of values.
/// The array to fill with cryptographically strong random bytes.
/// The index of the array to start the fill operation.
/// The number of bytes to fill.
///
/// is .
///
/// or is less than 0
///
/// plus exceeds the length of .
// Token: 0x06002433 RID: 9267 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002433")]
[Address(RVA = "0x1028430", Offset = "0x1027430", VA = "0x181028430", Slot = "7")]
public virtual void GetBytes(byte[] data, int offset, int count)
{
}
/// 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: 0x06002434 RID: 9268 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002434")]
[Address(RVA = "0x1028600", Offset = "0x1027600", VA = "0x181028600", Slot = "8")]
public virtual void GetNonZeroBytes(byte[] data)
{
}
}
}