Files
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

235 lines
11 KiB
C#

using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace System.Security.Cryptography
{
/// <summary>Implements password-based key derivation functionality, PBKDF2, by using a pseudo-random number generator based on <see cref="T:System.Security.Cryptography.HMACSHA1" />.</summary>
// Token: 0x02000418 RID: 1048
[Token(Token = "0x2000418")]
[ComVisible(true)]
public class Rfc2898DeriveBytes : DeriveBytes
{
/// <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using the password and salt size to derive the key.</summary>
/// <param name="password">The password used to derive the key.</param>
/// <param name="saltSize">The size of the random salt that you want the class to generate.</param>
/// <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes.</exception>
/// <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
// Token: 0x06002447 RID: 9287 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002447")]
[Address(RVA = "0x1028ED0", Offset = "0x1027ED0", VA = "0x181028ED0")]
public Rfc2898DeriveBytes(string password, int saltSize)
{
}
/// <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using a password, a salt size, and number of iterations to derive the key.</summary>
/// <param name="password">The password used to derive the key.</param>
/// <param name="saltSize">The size of the random salt that you want the class to generate.</param>
/// <param name="iterations">The number of iterations for the operation.</param>
/// <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
/// <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
/// <exception cref="T:System.ArgumentOutOfRangeException">
/// <paramref name="iterations" /> is out of range. This parameter requires a non-negative number.</exception>
// Token: 0x06002448 RID: 9288 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002448")]
[Address(RVA = "0x1028EF0", Offset = "0x1027EF0", VA = "0x181028EF0")]
public Rfc2898DeriveBytes(string password, int saltSize, int iterations)
{
}
/// <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using a password and salt to derive the key.</summary>
/// <param name="password">The password used to derive the key.</param>
/// <param name="salt">The key salt used to derive the key.</param>
/// <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
/// <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
// Token: 0x06002449 RID: 9289 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002449")]
[Address(RVA = "0x10290D0", Offset = "0x10280D0", VA = "0x1810290D0")]
public Rfc2898DeriveBytes(string password, byte[] salt)
{
}
/// <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using a password, a salt, and number of iterations to derive the key.</summary>
/// <param name="password">The password used to derive the key.</param>
/// <param name="salt">The key salt used to derive the key.</param>
/// <param name="iterations">The number of iterations for the operation.</param>
/// <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
/// <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
// Token: 0x0600244A RID: 9290 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x600244A")]
[Address(RVA = "0x1028D70", Offset = "0x1027D70", VA = "0x181028D70")]
public Rfc2898DeriveBytes(string password, byte[] salt, int iterations)
{
}
/// <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using a password, a salt, and number of iterations to derive the key.</summary>
/// <param name="password">The password used to derive the key.</param>
/// <param name="salt">The key salt used to derive the key.</param>
/// <param name="iterations">The number of iterations for the operation.</param>
/// <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
/// <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
// Token: 0x0600244B RID: 9291 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x600244B")]
[Address(RVA = "0x1028C80", Offset = "0x1027C80", VA = "0x181028C80")]
public Rfc2898DeriveBytes(byte[] password, byte[] salt, int iterations)
{
}
/// <summary>Gets or sets the number of iterations for the operation.</summary>
/// <returns>The number of iterations for the operation.</returns>
/// <exception cref="T:System.ArgumentOutOfRangeException">The number of iterations is less than 1.</exception>
// Token: 0x1700052F RID: 1327
// (get) Token: 0x0600244C RID: 9292 RVA: 0x00016FB0 File Offset: 0x000151B0
// (set) Token: 0x0600244D RID: 9293 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x1700052F")]
public int IterationCount
{
[Token(Token = "0x600244C")]
[Address(RVA = "0x4257C0", Offset = "0x4247C0", VA = "0x1804257C0")]
get
{
return 0;
}
[Token(Token = "0x600244D")]
[Address(RVA = "0x10292A0", Offset = "0x10282A0", VA = "0x1810292A0")]
set
{
}
}
/// <summary>Gets or sets the key salt value for the operation.</summary>
/// <returns>The key salt value for the operation.</returns>
/// <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes.</exception>
/// <exception cref="T:System.ArgumentNullException">The salt is <see langword="null" />.</exception>
// Token: 0x17000530 RID: 1328
// (get) Token: 0x0600244E RID: 9294 RVA: 0x00002082 File Offset: 0x00000282
// (set) Token: 0x0600244F RID: 9295 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x17000530")]
public byte[] Salt
{
[Token(Token = "0x600244E")]
[Address(RVA = "0x1029220", Offset = "0x1028220", VA = "0x181029220")]
get
{
return null;
}
[Token(Token = "0x600244F")]
[Address(RVA = "0x1029380", Offset = "0x1028380", VA = "0x181029380")]
set
{
}
}
/// <summary>Returns the pseudo-random key for this object.</summary>
/// <param name="cb">The number of pseudo-random key bytes to generate.</param>
/// <returns>A byte array filled with pseudo-random key bytes.</returns>
/// <exception cref="T:System.ArgumentOutOfRangeException">
/// <paramref name="cb" /> is out of range. This parameter requires a non-negative number.</exception>
// Token: 0x06002450 RID: 9296 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6002450")]
[Address(RVA = "0x1028A80", Offset = "0x1027A80", VA = "0x181028A80", Slot = "5")]
public override byte[] GetBytes(int cb)
{
return null;
}
/// <summary>Resets the state of the operation.</summary>
// Token: 0x06002451 RID: 9297 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002451")]
[Address(RVA = "0x1028C10", Offset = "0x1027C10", VA = "0x181028C10", Slot = "6")]
public override void Reset()
{
}
/// <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class and optionally releases the managed resources.</summary>
/// <param name="disposing">
/// <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
// Token: 0x06002452 RID: 9298 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002452")]
[Address(RVA = "0x10286F0", Offset = "0x10276F0", VA = "0x1810286F0", Slot = "7")]
protected override void Dispose(bool disposing)
{
}
// Token: 0x06002453 RID: 9299 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x6002453")]
[Address(RVA = "0x1028C10", Offset = "0x1027C10", VA = "0x181028C10")]
private void Initialize()
{
}
// Token: 0x06002454 RID: 9300 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6002454")]
[Address(RVA = "0x10287E0", Offset = "0x10277E0", VA = "0x1810287E0")]
private byte[] Func()
{
return null;
}
/// <summary>Derives a cryptographic key from the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> object.</summary>
/// <param name="algname">The algorithm name for which to derive the key.</param>
/// <param name="alghashname">The hash algorithm name to use to derive the key.</param>
/// <param name="keySize">The size of the key, in bits, to derive.</param>
/// <param name="rgbIV">The initialization vector (IV) to use to derive the key.</param>
/// <returns>The derived key.</returns>
/// <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="keySize" /> parameter is incorrect.
/// -or-
/// The cryptographic service provider (CSP) cannot be acquired.
/// -or-
/// The <paramref name="algname" /> parameter is not a valid algorithm name.
/// -or-
/// The <paramref name="alghashname" /> parameter is not a valid hash algorithm name.</exception>
// Token: 0x06002455 RID: 9301 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6002455")]
[Address(RVA = "0x1028650", Offset = "0x1027650", VA = "0x181028650")]
public byte[] CryptDeriveKey(string algname, string alghashname, int keySize, byte[] rgbIV)
{
return null;
}
// Token: 0x04001440 RID: 5184
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4001440")]
private byte[] m_buffer;
// Token: 0x04001441 RID: 5185
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4001441")]
private byte[] m_salt;
// Token: 0x04001442 RID: 5186
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4001442")]
private HMACSHA1 m_hmacsha1;
// Token: 0x04001443 RID: 5187
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4001443")]
private byte[] m_password;
// Token: 0x04001444 RID: 5188
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x4001444")]
private uint m_iterations;
// Token: 0x04001445 RID: 5189
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x4001445")]
private uint m_block;
// Token: 0x04001446 RID: 5190
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x4001446")]
private int m_startIndex;
// Token: 0x04001447 RID: 5191
[global::Cpp2IlInjected.FieldOffset(Offset = "0x3C")]
[Token(Token = "0x4001447")]
private int m_endIndex;
// Token: 0x04001448 RID: 5192
[Token(Token = "0x4001448")]
private const int BlockSize = 20;
}
}