This commit is contained in:
niko
2026-04-11 22:19:20 +02:00
parent 45b857ff11
commit 8fc35183db
17034 changed files with 2863552 additions and 0 deletions
@@ -0,0 +1,145 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Utilities;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement.Kdf
{
// Token: 0x02001D15 RID: 7445
[Token(Token = "0x2001D15")]
public class ConcatenationKdfGenerator : IDerivationFunction
{
// Token: 0x0600BC8E RID: 48270 RVA: 0x002AE01C File Offset: 0x002AC21C
[Token(Token = "0x600BC8E")]
[Address(RVA = "0x1B35AC0", Offset = "0x1B348C0", VA = "0x181B35AC0")]
public ConcatenationKdfGenerator(IDigest digest)
{
this.mDigest = digest;
}
// Token: 0x0600BC8F RID: 48271 RVA: 0x002AE03C File Offset: 0x002AC23C
[Token(Token = "0x600BC8F")]
[Address(RVA = "0x1B359C0", Offset = "0x1B347C0", VA = "0x181B359C0", Slot = "7")]
public virtual void Init(IDerivationParameters param)
{
/*
An exception occurred when decompiling this method (0600BC8F)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement.Kdf.ConcatenationKdfGenerator::Init(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.IDerivationParameters)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_1F:
stloc:ArgumentException(var_2_29, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("KDF parameters required for ConcatenationKdfGenerator")))
}
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 1660
*/;
}
// Token: 0x17001D32 RID: 7474
// (get) Token: 0x0600BC90 RID: 48272 RVA: 0x002AE074 File Offset: 0x002AC274
[Token(Token = "0x17001D32")]
public virtual IDigest Digest
{
[Token(Token = "0x600BC90")]
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20", Slot = "8")]
get
{
return this.mDigest;
}
}
// Token: 0x0600BC91 RID: 48273 RVA: 0x002AE088 File Offset: 0x002AC288
[Token(Token = "0x600BC91")]
[Address(RVA = "0x1B354D0", Offset = "0x1B342D0", VA = "0x181B354D0", Slot = "9")]
public virtual int GenerateBytes(byte[] outBytes, int outOff, int len)
{
int num = outBytes.Length;
num -= len;
byte[] array = new byte[this.mHLen];
byte[] array2 = new byte[4];
IDigest digest = this.mDigest;
int num2 = 0;
if (len > this.mHLen)
{
int num3 = 0;
Pack.UInt32_To_BE((uint)1, array2);
IDigest digest2 = this.mDigest;
int num4 = 0;
if (num4 < num3)
{
num4 += num4;
num4++;
}
int num5 = 0;
byte[] array3 = this.mShared;
IDigest digest3 = this.mDigest;
int num6 = 0;
if (num6 < num5)
{
num6 += num6;
num6++;
}
int num7 = 0;
byte[] array4 = this.mOtherInfo;
IDigest digest4 = this.mDigest;
int num8 = 0;
if (num8 < num7)
{
num8 += num8;
num8++;
}
int num9 = 0;
IDigest digest5 = this.mDigest;
int num10 = 0;
if (num10 < num9)
{
num10 += num10;
num10++;
}
int num11 = this.mHLen;
}
if (num2 < len)
{
Pack.UInt32_To_BE((uint)1, array2);
IDigest digest6 = this.mDigest;
int length = array2.Length;
byte[] array5 = this.mShared;
IDigest digest7 = this.mDigest;
int length2 = array5.Length;
byte[] array6 = this.mOtherInfo;
IDigest digest8 = this.mDigest;
int num12 = array6.Length;
IDigest digest9 = this.mDigest;
num12 = len - num2;
}
return len;
}
// Token: 0x04007808 RID: 30728
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4007808")]
private readonly IDigest mDigest;
// Token: 0x04007809 RID: 30729
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4007809")]
private byte[] mShared;
// Token: 0x0400780A RID: 30730
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400780A")]
private byte[] mOtherInfo;
// Token: 0x0400780B RID: 30731
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400780B")]
private int mHLen;
}
}
@@ -0,0 +1,95 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement.Kdf
{
// Token: 0x02001D16 RID: 7446
[Token(Token = "0x2001D16")]
public class DHKdfParameters : IDerivationParameters
{
// Token: 0x0600BC92 RID: 48274 RVA: 0x002AE238 File Offset: 0x002AC438
[Token(Token = "0x600BC92")]
[Address(RVA = "0x1B35C80", Offset = "0x1B34A80", VA = "0x181B35C80")]
public DHKdfParameters(DerObjectIdentifier algorithm, int keySize, byte[] z)
{
this.algorithm = algorithm;
this.z = z;
this.keySize = keySize;
this.extraInfo = (ulong)0L;
}
// Token: 0x0600BC93 RID: 48275 RVA: 0x002AE26C File Offset: 0x002AC46C
[Token(Token = "0x600BC93")]
[Address(RVA = "0x1B35CD0", Offset = "0x1B34AD0", VA = "0x181B35CD0")]
public DHKdfParameters(DerObjectIdentifier algorithm, int keySize, byte[] z, byte[] extraInfo)
{
this.algorithm = algorithm;
this.z = z;
this.extraInfo = 0;
this.keySize = keySize;
}
// Token: 0x17001D33 RID: 7475
// (get) Token: 0x0600BC94 RID: 48276 RVA: 0x002AE29C File Offset: 0x002AC49C
[Token(Token = "0x17001D33")]
public DerObjectIdentifier Algorithm
{
[Token(Token = "0x600BC94")]
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
get
{
return this.algorithm;
}
}
// Token: 0x17001D34 RID: 7476
// (get) Token: 0x0600BC95 RID: 48277 RVA: 0x002AE2B0 File Offset: 0x002AC4B0
[Token(Token = "0x17001D34")]
public int KeySize
{
[Token(Token = "0x600BC95")]
[Address(RVA = "0x40B720", Offset = "0x40A520", VA = "0x18040B720")]
get
{
return this.keySize;
}
}
// Token: 0x0600BC96 RID: 48278 RVA: 0x002AE2C4 File Offset: 0x002AC4C4
[Token(Token = "0x600BC96")]
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
public byte[] GetZ()
{
return this.z;
}
// Token: 0x0600BC97 RID: 48279 RVA: 0x002AE2D8 File Offset: 0x002AC4D8
[Token(Token = "0x600BC97")]
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
public byte[] GetExtraInfo()
{
return this.extraInfo;
}
// Token: 0x0400780C RID: 30732
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x400780C")]
private readonly DerObjectIdentifier algorithm;
// Token: 0x0400780D RID: 30733
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400780D")]
private readonly int keySize;
// Token: 0x0400780E RID: 30734
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400780E")]
private readonly byte[] z;
// Token: 0x0400780F RID: 30735
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400780F")]
private readonly byte[] extraInfo;
}
}
@@ -0,0 +1,137 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Utilities;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement.Kdf
{
// Token: 0x02001D17 RID: 7447
[Token(Token = "0x2001D17")]
public class DHKekGenerator : IDerivationFunction
{
// Token: 0x0600BC98 RID: 48280 RVA: 0x002AE2EC File Offset: 0x002AC4EC
[Token(Token = "0x600BC98")]
[Address(RVA = "0x3FFB80", Offset = "0x3FE980", VA = "0x1803FFB80")]
public DHKekGenerator(IDigest digest)
{
this.digest = digest;
}
// Token: 0x0600BC99 RID: 48281 RVA: 0x002AE308 File Offset: 0x002AC508
[Token(Token = "0x600BC99")]
[Address(RVA = "0x1B362F0", Offset = "0x1B350F0", VA = "0x181B362F0", Slot = "7")]
public virtual void Init(IDerivationParameters param)
{
int num;
do
{
num = 0;
}
while (param == 0);
this.algorithm = num;
this.keySize = num;
this.z = num;
this.partyAInfo = num;
}
// Token: 0x17001D35 RID: 7477
// (get) Token: 0x0600BC9A RID: 48282 RVA: 0x002AE340 File Offset: 0x002AC540
[Token(Token = "0x17001D35")]
public virtual IDigest Digest
{
[Token(Token = "0x600BC9A")]
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20", Slot = "8")]
get
{
return this.digest;
}
}
// Token: 0x0600BC9B RID: 48283 RVA: 0x002AE354 File Offset: 0x002AC554
[Token(Token = "0x600BC9B")]
[Address(RVA = "0x1B35D20", Offset = "0x1B34B20", VA = "0x181B35D20", Slot = "9")]
public virtual int GenerateBytes(byte[] outBytes, int outOff, int len)
{
int num = outBytes.Length;
num -= len;
IDigest digest = this.digest;
IDigest digest2 = this.digest;
int num2 = len - 1;
num2 += num;
byte[] array = new byte[num2];
if (num2 <= 0)
{
IDigest digest3 = this.digest;
return len;
}
int num3 = 0;
byte[] array2 = this.z;
IDigest digest4 = this.digest;
if (num3 < digest2)
{
num3 += num3;
num3++;
}
Asn1Encodable[] array3 = new Asn1Encodable[2];
DerObjectIdentifier derObjectIdentifier = this.algorithm;
if (derObjectIdentifier != 0)
{
}
array3[0] = derObjectIdentifier;
uint num4;
DerOctetString derOctetString = new DerOctetString(Pack.UInt32_To_BE(num4));
if (derOctetString != 0)
{
}
array3[1] = derOctetString;
DerSequence derSequence = new DerSequence(array3);
Asn1Encodable[] array4 = new Asn1Encodable[1];
if (derSequence != 0)
{
}
array4[0] = derSequence;
Asn1EncodableVector asn1EncodableVector = new Asn1EncodableVector(array4);
if (this.partyAInfo != (ulong)0L)
{
Asn1Encodable[] array5 = new Asn1Encodable[1];
DerOctetString derOctetString2 = new DerOctetString(this.partyAInfo);
ulong num5;
int num6;
DerTaggedObject derTaggedObject = new DerTaggedObject(num5 != 0UL, num6, derOctetString2);
num6 = 0;
throw new ArrayTypeMismatchException();
}
Asn1Encodable[] array6 = new Asn1Encodable[1];
DerOctetString derOctetString3 = new DerOctetString(Pack.UInt32_To_BE((uint)this.keySize));
ulong num7;
uint num8;
DerTaggedObject derTaggedObject2 = new DerTaggedObject(num7 != 0UL, (int)num8, derOctetString3);
throw new ArrayTypeMismatchException();
}
// Token: 0x04007810 RID: 30736
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4007810")]
private readonly IDigest digest;
// Token: 0x04007811 RID: 30737
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4007811")]
private DerObjectIdentifier algorithm;
// Token: 0x04007812 RID: 30738
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4007812")]
private int keySize;
// Token: 0x04007813 RID: 30739
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4007813")]
private byte[] z;
// Token: 0x04007814 RID: 30740
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4007814")]
private byte[] partyAInfo;
}
}
@@ -0,0 +1,111 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Generators;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Utilities;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement.Kdf
{
// Token: 0x02001D18 RID: 7448
[Token(Token = "0x2001D18")]
public class ECDHKekGenerator : IDerivationFunction
{
// Token: 0x0600BC9C RID: 48284 RVA: 0x002AE4F8 File Offset: 0x002AC6F8
[Token(Token = "0x600BC9C")]
[Address(RVA = "0x1B38490", Offset = "0x1B37290", VA = "0x181B38490")]
public ECDHKekGenerator(IDigest digest)
{
Kdf2BytesGenerator kdf2BytesGenerator = new Kdf2BytesGenerator(digest);
this.kdf = kdf2BytesGenerator;
}
// Token: 0x0600BC9D RID: 48285 RVA: 0x002AE51C File Offset: 0x002AC71C
[Token(Token = "0x600BC9D")]
[Address(RVA = "0x1B383F0", Offset = "0x1B371F0", VA = "0x181B383F0", Slot = "7")]
public virtual void Init(IDerivationParameters param)
{
int num;
do
{
num = 0;
}
while (param == 0);
this.algorithm = num;
this.keySize = num;
this.z = num;
}
// Token: 0x17001D36 RID: 7478
// (get) Token: 0x0600BC9E RID: 48286 RVA: 0x002AE54C File Offset: 0x002AC74C
[Token(Token = "0x17001D36")]
public virtual IDigest Digest
{
[Token(Token = "0x600BC9E")]
[Address(RVA = "0x1B38500", Offset = "0x1B37300", VA = "0x181B38500", Slot = "8")]
get
{
IDerivationFunction derivationFunction = this.kdf;
throw new NullReferenceException();
}
}
// Token: 0x0600BC9F RID: 48287 RVA: 0x002AE568 File Offset: 0x002AC768
[Token(Token = "0x600BC9F")]
[Address(RVA = "0x1B38120", Offset = "0x1B36F20", VA = "0x181B38120", Slot = "9")]
public virtual int GenerateBytes(byte[] outBytes, int outOff, int len)
{
Asn1Encodable[] array = new Asn1Encodable[2];
DerObjectIdentifier derObjectIdentifier = this.algorithm;
DerNull instance = DerNull.Instance;
AlgorithmIdentifier algorithmIdentifier = new AlgorithmIdentifier(derObjectIdentifier, instance);
if (algorithmIdentifier != 0)
{
}
array[0] = algorithmIdentifier;
DerOctetString derOctetString = new DerOctetString(Pack.UInt32_To_BE((uint)this.keySize));
ulong num;
DerTaggedObject derTaggedObject = new DerTaggedObject(num != 0UL, 2, derOctetString);
int num2 = 0;
if (derTaggedObject != 0)
{
}
array[1] = derTaggedObject;
DerSequence derSequence = new DerSequence(array);
IDerivationFunction derivationFunction = this.kdf;
byte[] array2 = this.z;
byte[] derEncoded = derSequence.GetDerEncoded();
KdfParameters kdfParameters = new KdfParameters(array2, derEncoded);
IDerivationFunction derivationFunction2 = this.kdf;
if (num2 < typeof(IDerivationFunction).TypeHandle)
{
num2 += num2;
num2++;
}
IDigest digest = derivationFunction2.Digest;
derivationFunction2 += derivationFunction2;
throw new NullReferenceException();
}
// Token: 0x04007815 RID: 30741
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4007815")]
private readonly IDerivationFunction kdf;
// Token: 0x04007816 RID: 30742
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4007816")]
private DerObjectIdentifier algorithm;
// Token: 0x04007817 RID: 30743
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4007817")]
private int keySize;
// Token: 0x04007818 RID: 30744
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4007818")]
private byte[] z;
}
}