279 lines
10 KiB
C#
279 lines
10 KiB
C#
using System;
|
|
using System.IO;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Pkcs
|
|
{
|
|
// Token: 0x02001E93 RID: 7827
|
|
[Token(Token = "0x2001E93")]
|
|
public class Pbkdf2Params : Asn1Encodable
|
|
{
|
|
// Token: 0x0600C5C2 RID: 50626 RVA: 0x002D24F0 File Offset: 0x002D06F0
|
|
[Token(Token = "0x600C5C2")]
|
|
[Address(RVA = "0x2BC4110", Offset = "0x2BC2F10", VA = "0x182BC4110")]
|
|
public static Pbkdf2Params GetInstance(object obj)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600C5C2)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Pkcs.Pbkdf2Params BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Pkcs.Pbkdf2Params::GetInstance(System.Object)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_26:
|
|
stloc:string(var_6_2C, call:string(Platform::GetTypeName, ldloc:object(obj)))
|
|
stloc:ArgumentException(var_7_44, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string("Unknown object in factory: "), ldloc:string(var_6_2C)), ldstr:string("obj")))
|
|
}
|
|
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
|
--- End of inner exception stack trace ---
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
|
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x0600C5C3 RID: 50627 RVA: 0x002D2544 File Offset: 0x002D0744
|
|
[Token(Token = "0x600C5C3")]
|
|
[Address(RVA = "0x2BC4780", Offset = "0x2BC3580", VA = "0x182BC4780")]
|
|
public Pbkdf2Params(Asn1Sequence seq)
|
|
{
|
|
Asn1SequenceParser parser2;
|
|
for (;;)
|
|
{
|
|
base..ctor();
|
|
Asn1SequenceParser parser = seq.Parser;
|
|
if (parser == 0)
|
|
{
|
|
}
|
|
if (parser != 0)
|
|
{
|
|
this.octStr = parser;
|
|
parser2 = seq.Parser;
|
|
if (parser2 == 0)
|
|
{
|
|
}
|
|
if (parser2 != 0)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
this.iterationCount = parser2;
|
|
Asn1Encodable asn1Encodable;
|
|
if (asn1Encodable > (ulong)2L)
|
|
{
|
|
if (seq.Parser == 0)
|
|
{
|
|
Asn1SequenceParser parser3 = seq.Parser;
|
|
}
|
|
Asn1SequenceParser parser4 = seq.Parser;
|
|
Asn1SequenceParser parser5 = seq.Parser;
|
|
Asn1SequenceParser parser6 = seq.Parser;
|
|
if (parser5 != 0)
|
|
{
|
|
this.keyLength = parser6;
|
|
}
|
|
if (parser6 != 0)
|
|
{
|
|
AlgorithmIdentifier algorithmIdentifier;
|
|
this.prf = algorithmIdentifier;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C5C4 RID: 50628 RVA: 0x002D25DC File Offset: 0x002D07DC
|
|
[Token(Token = "0x600C5C4")]
|
|
[Address(RVA = "0x2BC4AB0", Offset = "0x2BC38B0", VA = "0x182BC4AB0")]
|
|
public Pbkdf2Params(byte[] salt, int iterationCount)
|
|
{
|
|
DerOctetString derOctetString = new DerOctetString(salt);
|
|
this.octStr = derOctetString;
|
|
DerInteger derInteger = new DerInteger(iterationCount);
|
|
this.iterationCount = derInteger;
|
|
}
|
|
|
|
// Token: 0x0600C5C5 RID: 50629 RVA: 0x002D260C File Offset: 0x002D080C
|
|
[Token(Token = "0x600C5C5")]
|
|
[Address(RVA = "0x2BC4A20", Offset = "0x2BC3820", VA = "0x182BC4A20")]
|
|
public Pbkdf2Params(byte[] salt, int iterationCount, int keyLength)
|
|
{
|
|
DerInteger derInteger = new DerInteger(keyLength);
|
|
this.keyLength = derInteger;
|
|
}
|
|
|
|
// Token: 0x0600C5C6 RID: 50630 RVA: 0x002D2628 File Offset: 0x002D0828
|
|
[Token(Token = "0x600C5C6")]
|
|
[Address(RVA = "0x2BC46F0", Offset = "0x2BC34F0", VA = "0x182BC46F0")]
|
|
public Pbkdf2Params(byte[] salt, int iterationCount, int keyLength, AlgorithmIdentifier prf)
|
|
{
|
|
DerInteger derInteger = new DerInteger(keyLength);
|
|
this.keyLength = derInteger;
|
|
this.prf = 0;
|
|
}
|
|
|
|
// Token: 0x0600C5C7 RID: 50631 RVA: 0x002D264C File Offset: 0x002D084C
|
|
[Token(Token = "0x600C5C7")]
|
|
[Address(RVA = "0x2BC46C0", Offset = "0x2BC34C0", VA = "0x182BC46C0")]
|
|
public Pbkdf2Params(byte[] salt, int iterationCount, AlgorithmIdentifier prf)
|
|
{
|
|
this.prf = prf;
|
|
}
|
|
|
|
// Token: 0x0600C5C8 RID: 50632 RVA: 0x002D2660 File Offset: 0x002D0860
|
|
[Token(Token = "0x600C5C8")]
|
|
[Address(RVA = "0x5F5F00", Offset = "0x5F4D00", VA = "0x1805F5F00")]
|
|
public byte[] GetSalt()
|
|
{
|
|
Stream octetStream = ((Asn1OctetStringParser)this.octStr).GetOctetStream();
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x17001EB1 RID: 7857
|
|
// (get) Token: 0x0600C5C9 RID: 50633 RVA: 0x002D2680 File Offset: 0x002D0880
|
|
[Token(Token = "0x17001EB1")]
|
|
public BigInteger IterationCount
|
|
{
|
|
[Token(Token = "0x600C5C9")]
|
|
[Address(RVA = "0x283E1D0", Offset = "0x283CFD0", VA = "0x18283E1D0")]
|
|
get
|
|
{
|
|
return this.iterationCount.Value;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EB2 RID: 7858
|
|
// (get) Token: 0x0600C5CA RID: 50634 RVA: 0x002D26A0 File Offset: 0x002D08A0
|
|
[Token(Token = "0x17001EB2")]
|
|
public BigInteger KeyLength
|
|
{
|
|
[Token(Token = "0x600C5CA")]
|
|
[Address(RVA = "0x27214D0", Offset = "0x27202D0", VA = "0x1827214D0")]
|
|
get
|
|
{
|
|
DerInteger derInteger = this.keyLength;
|
|
if (derInteger == 0)
|
|
{
|
|
}
|
|
return derInteger.Value;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EB3 RID: 7859
|
|
// (get) Token: 0x0600C5CB RID: 50635 RVA: 0x002D26C0 File Offset: 0x002D08C0
|
|
[Token(Token = "0x17001EB3")]
|
|
public bool IsDefaultPrf
|
|
{
|
|
[Token(Token = "0x600C5CB")]
|
|
[Address(RVA = "0x2BC4B50", Offset = "0x2BC3950", VA = "0x182BC4B50")]
|
|
get
|
|
{
|
|
AlgorithmIdentifier algorithmIdentifier = this.prf;
|
|
if (algorithmIdentifier == 0)
|
|
{
|
|
return true;
|
|
}
|
|
Asn1Object asn1Object = algorithmIdentifier.ToAsn1Object();
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EB4 RID: 7860
|
|
// (get) Token: 0x0600C5CC RID: 50636 RVA: 0x002D26E8 File Offset: 0x002D08E8
|
|
[Token(Token = "0x17001EB4")]
|
|
public AlgorithmIdentifier Prf
|
|
{
|
|
[Token(Token = "0x600C5CC")]
|
|
[Address(RVA = "0x2BC4BE0", Offset = "0x2BC39E0", VA = "0x182BC4BE0")]
|
|
get
|
|
{
|
|
AlgorithmIdentifier algorithmIdentifier = this.prf;
|
|
if (algorithmIdentifier == 0)
|
|
{
|
|
}
|
|
return algorithmIdentifier;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C5CD RID: 50637 RVA: 0x002D2704 File Offset: 0x002D0904
|
|
[Token(Token = "0x600C5CD")]
|
|
[Address(RVA = "0x2BC4310", Offset = "0x2BC3110", VA = "0x182BC4310", Slot = "5")]
|
|
public override Asn1Object ToAsn1Object()
|
|
{
|
|
Asn1Encodable[] array = new Asn1Encodable[2];
|
|
Asn1OctetString asn1OctetString = this.octStr;
|
|
if (asn1OctetString != 0)
|
|
{
|
|
}
|
|
array[0] = asn1OctetString;
|
|
DerInteger derInteger = this.iterationCount;
|
|
if (derInteger != 0)
|
|
{
|
|
}
|
|
array[1] = derInteger;
|
|
Asn1EncodableVector asn1EncodableVector = new Asn1EncodableVector(array);
|
|
if (this.keyLength != (ulong)0L)
|
|
{
|
|
Asn1Encodable[] array2 = new Asn1Encodable[1];
|
|
DerInteger derInteger2 = this.keyLength;
|
|
if (derInteger2 != 0)
|
|
{
|
|
}
|
|
array2[0] = derInteger2;
|
|
asn1EncodableVector.Add(array2);
|
|
}
|
|
if (this.prf != 0)
|
|
{
|
|
Asn1Encodable[] array3 = new Asn1Encodable[1];
|
|
AlgorithmIdentifier algorithmIdentifier = this.prf;
|
|
if (algorithmIdentifier != 0)
|
|
{
|
|
}
|
|
array3[0] = algorithmIdentifier;
|
|
asn1EncodableVector.Add(array3);
|
|
}
|
|
DerSequence derSequence = new DerSequence(asn1EncodableVector);
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600C5CE RID: 50638 RVA: 0x002D27B4 File Offset: 0x002D09B4
|
|
// Note: this type is marked as 'beforefieldinit'.
|
|
[Token(Token = "0x600C5CE")]
|
|
[Address(RVA = "0x2BC45E0", Offset = "0x2BC33E0", VA = "0x182BC45E0")]
|
|
static Pbkdf2Params()
|
|
{
|
|
DerObjectIdentifier idHmacWithSha = PkcsObjectIdentifiers.IdHmacWithSha1;
|
|
DerNull instance = DerNull.Instance;
|
|
Pbkdf2Params.algid_hmacWithSHA1 = new AlgorithmIdentifier(idHmacWithSha, instance);
|
|
}
|
|
|
|
// Token: 0x04007D15 RID: 32021
|
|
[Token(Token = "0x4007D15")]
|
|
private static AlgorithmIdentifier algid_hmacWithSHA1;
|
|
|
|
// Token: 0x04007D16 RID: 32022
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4007D16")]
|
|
private readonly Asn1OctetString octStr;
|
|
|
|
// Token: 0x04007D17 RID: 32023
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4007D17")]
|
|
private readonly DerInteger iterationCount;
|
|
|
|
// Token: 0x04007D18 RID: 32024
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4007D18")]
|
|
private readonly DerInteger keyLength;
|
|
|
|
// Token: 0x04007D19 RID: 32025
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4007D19")]
|
|
private readonly AlgorithmIdentifier prf;
|
|
}
|
|
}
|