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: 0x02001E1D RID: 7709
|
|
[Token(Token = "0x2001E1D")]
|
|
public abstract class CmsPbeKey : ICipherParameters
|
|
{
|
|
// Token: 0x0600C13C RID: 49468 RVA: 0x002BA2C0 File Offset: 0x002B84C0
|
|
[Token(Token = "0x600C13C")]
|
|
[Address(RVA = "0x21482F0", Offset = "0x21472F0", VA = "0x1821482F0")]
|
|
[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: 0x0600C13D RID: 49469 RVA: 0x002BA304 File Offset: 0x002B8504
|
|
[Token(Token = "0x600C13D")]
|
|
[Address(RVA = "0x21482A0", Offset = "0x21472A0", VA = "0x1821482A0")]
|
|
[Obsolete]
|
|
public CmsPbeKey(string password, AlgorithmIdentifier keyDerivationAlgorithm)
|
|
{
|
|
char[] array = password.ToCharArray();
|
|
}
|
|
|
|
// Token: 0x0600C13E RID: 49470 RVA: 0x002BA320 File Offset: 0x002B8520
|
|
[Token(Token = "0x600C13E")]
|
|
[Address(RVA = "0x21483E0", Offset = "0x21473E0", VA = "0x1821483E0")]
|
|
public CmsPbeKey(char[] password, byte[] salt, int iterationCount)
|
|
{
|
|
byte[] array = Arrays.Clone(salt);
|
|
this.iterationCount = iterationCount;
|
|
this.salt = array;
|
|
}
|
|
|
|
// Token: 0x0600C13F RID: 49471 RVA: 0x002BA350 File Offset: 0x002B8550
|
|
[Token(Token = "0x600C13F")]
|
|
[Address(RVA = "0x21480A0", Offset = "0x21470A0", VA = "0x1821480A0")]
|
|
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: 0x0600C140 RID: 49472 RVA: 0x002BA3B4 File Offset: 0x002B85B4
|
|
[Token(Token = "0x600C140")]
|
|
[Address(RVA = "0x2147FB0", Offset = "0x2146FB0", VA = "0x182147FB0", 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: 0x17001DF7 RID: 7671
|
|
// (get) Token: 0x0600C141 RID: 49473 RVA: 0x002BA3EC File Offset: 0x002B85EC
|
|
[Token(Token = "0x17001DF7")]
|
|
[Obsolete]
|
|
public string Password
|
|
{
|
|
[Token(Token = "0x600C141")]
|
|
[Address(RVA = "0x2148520", Offset = "0x2147520", VA = "0x182148520")]
|
|
get
|
|
{
|
|
char[] array = this.password;
|
|
string text;
|
|
return text;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001DF8 RID: 7672
|
|
// (get) Token: 0x0600C142 RID: 49474 RVA: 0x002BA404 File Offset: 0x002B8604
|
|
[Token(Token = "0x17001DF8")]
|
|
public byte[] Salt
|
|
{
|
|
[Token(Token = "0x600C142")]
|
|
[Address(RVA = "0x2148040", Offset = "0x2147040", VA = "0x182148040")]
|
|
get
|
|
{
|
|
return Arrays.Clone(this.salt);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C143 RID: 49475 RVA: 0x002BA41C File Offset: 0x002B861C
|
|
[Token(Token = "0x600C143")]
|
|
[Address(RVA = "0x2148040", Offset = "0x2147040", VA = "0x182148040")]
|
|
[Obsolete]
|
|
public byte[] GetSalt()
|
|
{
|
|
return Arrays.Clone(this.salt);
|
|
}
|
|
|
|
// Token: 0x17001DF9 RID: 7673
|
|
// (get) Token: 0x0600C144 RID: 49476 RVA: 0x002BA434 File Offset: 0x002B8634
|
|
[Token(Token = "0x17001DF9")]
|
|
public int IterationCount
|
|
{
|
|
[Token(Token = "0x600C144")]
|
|
[Address(RVA = "0x470B70", Offset = "0x46FB70", VA = "0x180470B70")]
|
|
get
|
|
{
|
|
return this.iterationCount;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001DFA RID: 7674
|
|
// (get) Token: 0x0600C145 RID: 49477 RVA: 0x002BA448 File Offset: 0x002B8648
|
|
[Token(Token = "0x17001DFA")]
|
|
public string Algorithm
|
|
{
|
|
[Token(Token = "0x600C145")]
|
|
[Address(RVA = "0x21484C0", Offset = "0x21474C0", VA = "0x1821484C0")]
|
|
get
|
|
{
|
|
return "PKCS5S2";
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001DFB RID: 7675
|
|
// (get) Token: 0x0600C146 RID: 49478 RVA: 0x002BA45C File Offset: 0x002B865C
|
|
[Token(Token = "0x17001DFB")]
|
|
public string Format
|
|
{
|
|
[Token(Token = "0x600C146")]
|
|
[Address(RVA = "0x21484F0", Offset = "0x21474F0", VA = "0x1821484F0")]
|
|
get
|
|
{
|
|
return "RAW";
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C147 RID: 49479 RVA: 0x002BA470 File Offset: 0x002B8670
|
|
[Token(Token = "0x600C147")]
|
|
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0")]
|
|
public byte[] GetEncoded()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0600C148 RID: 49480
|
|
[Token(Token = "0x600C148")]
|
|
[Address(Slot = "4")]
|
|
internal abstract KeyParameter GetEncoded(string algorithmOid);
|
|
|
|
// Token: 0x04007A63 RID: 31331
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4007A63")]
|
|
internal readonly char[] password;
|
|
|
|
// Token: 0x04007A64 RID: 31332
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4007A64")]
|
|
internal readonly byte[] salt;
|
|
|
|
// Token: 0x04007A65 RID: 31333
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4007A65")]
|
|
internal readonly int iterationCount;
|
|
}
|
|
}
|