197 lines
5.5 KiB
C#
197 lines
5.5 KiB
C#
using System;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Pkcs;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Cms
|
|
{
|
|
// Token: 0x02001D3D RID: 7485
|
|
[Token(Token = "0x2001D3D")]
|
|
public abstract class CmsPbeKey : ICipherParameters
|
|
{
|
|
// Token: 0x0600BD6E RID: 48494 RVA: 0x002B1A58 File Offset: 0x002AFC58
|
|
[Token(Token = "0x600BD6E")]
|
|
[Address(RVA = "0x1666C80", Offset = "0x1665A80", VA = "0x181666C80")]
|
|
[Obsolete]
|
|
public CmsPbeKey(string password, byte[] salt, int iterationCount)
|
|
{
|
|
char[] array;
|
|
do
|
|
{
|
|
array = password.ToCharArray();
|
|
base..ctor();
|
|
}
|
|
while (array != 0 && array == 0);
|
|
this.password = array;
|
|
byte[] array2 = Arrays.Clone(salt);
|
|
this.iterationCount = iterationCount;
|
|
this.salt = array2;
|
|
}
|
|
|
|
// Token: 0x0600BD6F RID: 48495 RVA: 0x002B1A9C File Offset: 0x002AFC9C
|
|
[Token(Token = "0x600BD6F")]
|
|
[Address(RVA = "0x1666C30", Offset = "0x1665A30", VA = "0x181666C30")]
|
|
[Obsolete]
|
|
public CmsPbeKey(string password, AlgorithmIdentifier keyDerivationAlgorithm)
|
|
{
|
|
char[] array = password.ToCharArray();
|
|
}
|
|
|
|
// Token: 0x0600BD70 RID: 48496 RVA: 0x002B1AB8 File Offset: 0x002AFCB8
|
|
[Token(Token = "0x600BD70")]
|
|
[Address(RVA = "0x1666D70", Offset = "0x1665B70", VA = "0x181666D70")]
|
|
public CmsPbeKey(char[] password, byte[] salt, int iterationCount)
|
|
{
|
|
byte[] array = Arrays.Clone(salt);
|
|
this.iterationCount = iterationCount;
|
|
this.salt = array;
|
|
}
|
|
|
|
// Token: 0x0600BD71 RID: 48497 RVA: 0x002B1AE8 File Offset: 0x002AFCE8
|
|
[Token(Token = "0x600BD71")]
|
|
[Address(RVA = "0x1666A30", Offset = "0x1665830", VA = "0x181666A30")]
|
|
public CmsPbeKey(char[] password, AlgorithmIdentifier keyDerivationAlgorithm)
|
|
{
|
|
Pbkdf2Params instance;
|
|
do
|
|
{
|
|
base..ctor();
|
|
Asn1Object asn1Object = keyDerivationAlgorithm.ToAsn1Object();
|
|
instance = Pbkdf2Params.GetInstance(keyDerivationAlgorithm.ObjectID.ToAsn1Object());
|
|
}
|
|
while (instance != 0 && instance == 0);
|
|
this.password = instance;
|
|
byte[] array = instance.GetSalt();
|
|
this.salt = array;
|
|
int intValue = instance.IterationCount.IntValue;
|
|
this.iterationCount = intValue;
|
|
}
|
|
|
|
// Token: 0x0600BD72 RID: 48498 RVA: 0x002B1B4C File Offset: 0x002AFD4C
|
|
[Token(Token = "0x600BD72")]
|
|
[Address(RVA = "0x1666940", Offset = "0x1665740", VA = "0x181666940", Slot = "1")]
|
|
protected override void Finalize()
|
|
{
|
|
int num;
|
|
do
|
|
{
|
|
num = 0;
|
|
char[] array = this.password;
|
|
int length = array.Length;
|
|
int num2 = 0;
|
|
Array.Clear(array, num2, length);
|
|
base..ctor();
|
|
}
|
|
while (num != 0);
|
|
}
|
|
|
|
// Token: 0x17001D5A RID: 7514
|
|
// (get) Token: 0x0600BD73 RID: 48499 RVA: 0x002B1B84 File Offset: 0x002AFD84
|
|
[Token(Token = "0x17001D5A")]
|
|
[Obsolete]
|
|
public string Password
|
|
{
|
|
[Token(Token = "0x600BD73")]
|
|
[Address(RVA = "0x1666EB0", Offset = "0x1665CB0", VA = "0x181666EB0")]
|
|
get
|
|
{
|
|
char[] array = this.password;
|
|
string text;
|
|
return text;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001D5B RID: 7515
|
|
// (get) Token: 0x0600BD74 RID: 48500 RVA: 0x002B1B9C File Offset: 0x002AFD9C
|
|
[Token(Token = "0x17001D5B")]
|
|
public byte[] Salt
|
|
{
|
|
[Token(Token = "0x600BD74")]
|
|
[Address(RVA = "0x16669D0", Offset = "0x16657D0", VA = "0x1816669D0")]
|
|
get
|
|
{
|
|
return Arrays.Clone(this.salt);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600BD75 RID: 48501 RVA: 0x002B1BB4 File Offset: 0x002AFDB4
|
|
[Token(Token = "0x600BD75")]
|
|
[Address(RVA = "0x16669D0", Offset = "0x16657D0", VA = "0x1816669D0")]
|
|
[Obsolete]
|
|
public byte[] GetSalt()
|
|
{
|
|
return Arrays.Clone(this.salt);
|
|
}
|
|
|
|
// Token: 0x17001D5C RID: 7516
|
|
// (get) Token: 0x0600BD76 RID: 48502 RVA: 0x002B1BCC File Offset: 0x002AFDCC
|
|
[Token(Token = "0x17001D5C")]
|
|
public int IterationCount
|
|
{
|
|
[Token(Token = "0x600BD76")]
|
|
[Address(RVA = "0x3F7310", Offset = "0x3F6110", VA = "0x1803F7310")]
|
|
get
|
|
{
|
|
return this.iterationCount;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001D5D RID: 7517
|
|
// (get) Token: 0x0600BD77 RID: 48503 RVA: 0x002B1BE0 File Offset: 0x002AFDE0
|
|
[Token(Token = "0x17001D5D")]
|
|
public string Algorithm
|
|
{
|
|
[Token(Token = "0x600BD77")]
|
|
[Address(RVA = "0x1666E50", Offset = "0x1665C50", VA = "0x181666E50")]
|
|
get
|
|
{
|
|
return "PKCS5S2";
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001D5E RID: 7518
|
|
// (get) Token: 0x0600BD78 RID: 48504 RVA: 0x002B1BF4 File Offset: 0x002AFDF4
|
|
[Token(Token = "0x17001D5E")]
|
|
public string Format
|
|
{
|
|
[Token(Token = "0x600BD78")]
|
|
[Address(RVA = "0x1666E80", Offset = "0x1665C80", VA = "0x181666E80")]
|
|
get
|
|
{
|
|
return "RAW";
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600BD79 RID: 48505 RVA: 0x002B1C08 File Offset: 0x002AFE08
|
|
[Token(Token = "0x600BD79")]
|
|
[Address(RVA = "0x43E630", Offset = "0x43D430", VA = "0x18043E630")]
|
|
public byte[] GetEncoded()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0600BD7A RID: 48506
|
|
[Token(Token = "0x600BD7A")]
|
|
[Address(Slot = "4")]
|
|
internal abstract KeyParameter GetEncoded(string algorithmOid);
|
|
|
|
// Token: 0x040078AA RID: 30890
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x40078AA")]
|
|
internal readonly char[] password;
|
|
|
|
// Token: 0x040078AB RID: 30891
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x40078AB")]
|
|
internal readonly byte[] salt;
|
|
|
|
// Token: 0x040078AC RID: 30892
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x40078AC")]
|
|
internal readonly int iterationCount;
|
|
}
|
|
}
|