This commit is contained in:
niko
2026-04-12 16:51:38 +02:00
parent 1b6f6d81d0
commit c12fbe3fc6
17828 changed files with 2994770 additions and 0 deletions
@@ -0,0 +1,325 @@
using System;
using System.Collections;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509.Store;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AA0 RID: 6816
[Token(Token = "0x2001AA0")]
public class BasicOcspResp : X509ExtensionBase
{
// Token: 0x0600A147 RID: 41287 RVA: 0x0021956C File Offset: 0x0021776C
[Token(Token = "0x600A147")]
[Address(RVA = "0xCF0490", Offset = "0xCEF490", VA = "0x180CF0490")]
public BasicOcspResp(BasicOcspResponse resp)
{
this.resp = resp;
ResponseData tbsResponseData = resp.tbsResponseData;
this.data = tbsResponseData;
}
// Token: 0x0600A148 RID: 41288 RVA: 0x0021959C File Offset: 0x0021779C
[Token(Token = "0x600A148")]
[Address(RVA = "0xCF0100", Offset = "0xCEF100", VA = "0x180CF0100")]
public byte[] GetTbsResponseData()
{
return this.data.GetDerEncoded();
}
// Token: 0x170019A7 RID: 6567
// (get) Token: 0x0600A149 RID: 41289 RVA: 0x002195BC File Offset: 0x002177BC
[Token(Token = "0x170019A7")]
public int Version
{
[Token(Token = "0x600A149")]
[Address(RVA = "0xCF0830", Offset = "0xCEF830", VA = "0x180CF0830")]
get
{
int intValue = this.data.version.Value.IntValue;
return intValue + 1;
}
}
// Token: 0x170019A8 RID: 6568
// (get) Token: 0x0600A14A RID: 41290 RVA: 0x002195EC File Offset: 0x002177EC
[Token(Token = "0x170019A8")]
public RespID ResponderId
{
[Token(Token = "0x600A14A")]
[Address(RVA = "0xCF0500", Offset = "0xCEF500", VA = "0x180CF0500")]
get
{
ResponderID responderID = this.data.responderID;
RespID respID;
respID.id = responderID;
return respID;
}
}
// Token: 0x170019A9 RID: 6569
// (get) Token: 0x0600A14B RID: 41291 RVA: 0x00219614 File Offset: 0x00217814
[Token(Token = "0x170019A9")]
public DateTime ProducedAt
{
[Token(Token = "0x600A14B")]
[Address(RVA = "0xCF04D0", Offset = "0xCEF4D0", VA = "0x180CF04D0")]
get
{
return this.data.producedAt.ToDateTime();
}
}
// Token: 0x170019AA RID: 6570
// (get) Token: 0x0600A14C RID: 41292 RVA: 0x00219638 File Offset: 0x00217838
[Token(Token = "0x170019AA")]
public SingleResp[] Responses
{
[Token(Token = "0x600A14C")]
[Address(RVA = "0xCF0570", Offset = "0xCEF570", VA = "0x180CF0570")]
get
{
Asn1Sequence responses = this.data.responses;
Asn1Encodable asn1Encodable;
SingleResp[] array = new SingleResp[asn1Encodable];
int num = 0;
if (num != array.Length)
{
Asn1SequenceParser parser = responses.Parser;
SingleResp singleResp;
SingleResponse singleResponse;
singleResp.resp = singleResponse;
num++;
array[0] = singleResp;
}
return array;
}
}
// Token: 0x170019AB RID: 6571
// (get) Token: 0x0600A14D RID: 41293 RVA: 0x00219688 File Offset: 0x00217888
[Token(Token = "0x170019AB")]
public X509Extensions ResponseExtensions
{
[Token(Token = "0x600A14D")]
[Address(RVA = "0x67F830", Offset = "0x67E830", VA = "0x18067F830")]
get
{
return this.data.responseExtensions;
}
}
// Token: 0x0600A14E RID: 41294 RVA: 0x002196A8 File Offset: 0x002178A8
[Token(Token = "0x600A14E")]
[Address(RVA = "0x67F830", Offset = "0x67E830", VA = "0x18067F830", Slot = "8")]
protected override X509Extensions GetX509Extensions()
{
return this.data.responseExtensions;
}
// Token: 0x170019AC RID: 6572
// (get) Token: 0x0600A14F RID: 41295 RVA: 0x002196C8 File Offset: 0x002178C8
[Token(Token = "0x170019AC")]
public string SignatureAlgName
{
[Token(Token = "0x600A14F")]
[Address(RVA = "0xCF06B0", Offset = "0xCEF6B0", VA = "0x180CF06B0")]
get
{
Asn1Object asn1Object = this.resp.signatureAlgorithm.ToAsn1Object();
IDictionary oids = OcspUtilities.oids;
IDictionary oids2 = OcspUtilities.oids;
throw new NullReferenceException();
}
}
// Token: 0x170019AD RID: 6573
// (get) Token: 0x0600A150 RID: 41296 RVA: 0x002196F8 File Offset: 0x002178F8
[Token(Token = "0x170019AD")]
public string SignatureAlgOid
{
[Token(Token = "0x600A150")]
[Address(RVA = "0x41ABE0", Offset = "0x419BE0", VA = "0x18041ABE0")]
get
{
Asn1Object asn1Object = this.resp.signatureAlgorithm.ToAsn1Object();
throw new NullReferenceException();
}
}
// Token: 0x0600A151 RID: 41297 RVA: 0x0021971C File Offset: 0x0021791C
[Token(Token = "0x600A151")]
[Address(RVA = "0xCF00A0", Offset = "0xCEF0A0", VA = "0x180CF00A0")]
[Obsolete]
public RespData GetResponseData()
{
ResponseData responseData = this.data;
RespData respData;
respData.data = responseData;
return respData;
}
// Token: 0x0600A152 RID: 41298 RVA: 0x00219738 File Offset: 0x00217938
[Token(Token = "0x600A152")]
[Address(RVA = "0x419790", Offset = "0x418790", VA = "0x180419790")]
public byte[] GetSignature()
{
return this.resp.GetSignatureOctets();
}
// Token: 0x0600A153 RID: 41299 RVA: 0x00219758 File Offset: 0x00217958
[Token(Token = "0x600A153")]
[Address(RVA = "0xCEFAB0", Offset = "0xCEEAB0", VA = "0x180CEFAB0")]
private IList GetCertList()
{
IList list;
for (;;)
{
int num = 0;
list = Platform.CreateArrayList();
Asn1Sequence certs = this.resp.certs;
if (certs == 0)
{
break;
}
IEnumerator enumerator = certs.GetEnumerator();
if (enumerator != 0)
{
if (enumerator == 0)
{
}
if (enumerator == 0)
{
goto IL_61;
}
byte[] array;
if (new X509CertificateParser().ReadCertificate(array) != 0)
{
}
if (num == 0)
{
break;
}
}
}
return list;
IL_61:
throw new NullReferenceException();
}
// Token: 0x0600A154 RID: 41300 RVA: 0x002197CC File Offset: 0x002179CC
[Token(Token = "0x600A154")]
[Address(RVA = "0xCEFE20", Offset = "0xCEEE20", VA = "0x180CEFE20")]
public X509Certificate[] GetCerts()
{
X509Certificate[] array;
int num;
do
{
IList certList = this.GetCertList();
array = new X509Certificate[certList];
num = 0;
if (num < certList)
{
num += num;
num++;
}
if (num >= array)
{
return array;
}
uint num2;
if (num < (int)num2)
{
num += num;
num++;
}
if (num == 0)
{
break;
}
ulong num3;
num3 += num3;
num3 += num3;
}
while (num == 0 || num == 0);
num++;
array[0] = num;
return array;
}
// Token: 0x0600A155 RID: 41301 RVA: 0x00219838 File Offset: 0x00217A38
[Token(Token = "0x600A155")]
[Address(RVA = "0xCEFD40", Offset = "0xCEED40", VA = "0x180CEFD40")]
public IX509Store GetCertificates(string type)
{
string text = "Certificate/" + type;
X509CollectionStoreParameters x509CollectionStoreParameters = new X509CollectionStoreParameters(this.GetCertList());
return X509StoreFactory.Create(text, x509CollectionStoreParameters);
}
// Token: 0x0600A156 RID: 41302 RVA: 0x00219874 File Offset: 0x00217A74
[Token(Token = "0x600A156")]
[Address(RVA = "0xCF01A0", Offset = "0xCEF1A0", VA = "0x180CF01A0")]
public bool Verify(AsymmetricKeyParameter publicKey)
{
Asn1Object asn1Object = this.resp.signatureAlgorithm.ToAsn1Object();
IDictionary oids = OcspUtilities.oids;
IDictionary oids2 = OcspUtilities.oids;
int length = this.data.GetDerEncoded().Length;
byte[] signatureOctets = this.resp.GetSignatureOctets();
int num = 0;
string text;
OcspException ex = new OcspException(text, num);
throw new NullReferenceException();
}
// Token: 0x0600A157 RID: 41303 RVA: 0x00219900 File Offset: 0x00217B00
[Token(Token = "0x600A157")]
[Address(RVA = "0x423720", Offset = "0x422720", VA = "0x180423720")]
public byte[] GetEncoded()
{
return this.resp.GetEncoded();
}
// Token: 0x0600A158 RID: 41304 RVA: 0x00219920 File Offset: 0x00217B20
[Token(Token = "0x600A158")]
[Address(RVA = "0xCEF9F0", Offset = "0xCEE9F0", VA = "0x180CEF9F0", Slot = "0")]
public override bool Equals(object obj)
{
if (obj != this)
{
if (obj != 0 && obj != 0)
{
Asn1Object asn1Object = this.resp.ToAsn1Object();
}
}
return true;
}
// Token: 0x0600A159 RID: 41305 RVA: 0x00219950 File Offset: 0x00217B50
[Token(Token = "0x600A159")]
[Address(RVA = "0x40F2B0", Offset = "0x40E2B0", VA = "0x18040F2B0", Slot = "2")]
public override int GetHashCode()
{
Asn1Object asn1Object = this.resp.ToAsn1Object();
throw new NullReferenceException();
}
// Token: 0x04006BB5 RID: 27573
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BB5")]
private readonly BasicOcspResponse resp;
// Token: 0x04006BB6 RID: 27574
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006BB6")]
private readonly ResponseData data;
}
}
@@ -0,0 +1,377 @@
using System;
using System.Collections;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Security;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AA1 RID: 6817
[Token(Token = "0x2001AA1")]
public class BasicOcspRespGenerator
{
// Token: 0x0600A15A RID: 41306 RVA: 0x00219970 File Offset: 0x00217B70
[Token(Token = "0x600A15A")]
[Address(RVA = "0xCEF890", Offset = "0xCEE890", VA = "0x180CEF890")]
public BasicOcspRespGenerator(RespID responderID)
{
IList list = Platform.CreateArrayList();
this.list = list;
base..ctor();
this.responderID = responderID;
}
// Token: 0x0600A15B RID: 41307 RVA: 0x0021999C File Offset: 0x00217B9C
[Token(Token = "0x600A15B")]
[Address(RVA = "0xCEF900", Offset = "0xCEE900", VA = "0x180CEF900")]
public BasicOcspRespGenerator(AsymmetricKeyParameter publicKey)
{
IList list = Platform.CreateArrayList();
this.list = list;
base..ctor();
RespID respID = new RespID(publicKey);
this.responderID = respID;
}
// Token: 0x0600A15C RID: 41308 RVA: 0x002199CC File Offset: 0x00217BCC
[Token(Token = "0x600A15C")]
[Address(RVA = "0xCEEC60", Offset = "0xCEDC60", VA = "0x180CEEC60")]
public void AddResponse(CertificateID certID, CertificateStatus certStatus)
{
IList list = this.list;
DateTime utcNow = DateTime.UtcNow;
int num;
BasicOcspRespGenerator.ResponseObject responseObject = new BasicOcspRespGenerator.ResponseObject(certID, certStatus, utcNow, num);
num = 0;
throw new NullReferenceException();
}
// Token: 0x0600A15D RID: 41309 RVA: 0x002199FC File Offset: 0x00217BFC
[Token(Token = "0x600A15D")]
[Address(RVA = "0xCEE9E0", Offset = "0xCED9E0", VA = "0x180CEE9E0")]
public void AddResponse(CertificateID certID, CertificateStatus certStatus, X509Extensions singleExtensions)
{
IList list = this.list;
DateTime utcNow = DateTime.UtcNow;
BasicOcspRespGenerator.ResponseObject responseObject = new BasicOcspRespGenerator.ResponseObject(certID, certStatus, utcNow, singleExtensions);
throw new NullReferenceException();
}
// Token: 0x0600A15E RID: 41310 RVA: 0x00219A28 File Offset: 0x00217C28
[Token(Token = "0x600A15E")]
[Address(RVA = "0xCEEAC0", Offset = "0xCEDAC0", VA = "0x180CEEAC0")]
public void AddResponse(CertificateID certID, CertificateStatus certStatus, DateTime nextUpdate, X509Extensions singleExtensions)
{
IList list = this.list;
DateTime utcNow = DateTime.UtcNow;
throw new NullReferenceException();
}
// Token: 0x0600A15F RID: 41311 RVA: 0x00219A4C File Offset: 0x00217C4C
[Token(Token = "0x600A15F")]
[Address(RVA = "0xCEEBA0", Offset = "0xCEDBA0", VA = "0x180CEEBA0")]
public void AddResponse(CertificateID certID, CertificateStatus certStatus, DateTime thisUpdate, DateTime nextUpdate, X509Extensions singleExtensions)
{
IList list = this.list;
throw new NullReferenceException();
}
// Token: 0x0600A160 RID: 41312 RVA: 0x00219A68 File Offset: 0x00217C68
[Token(Token = "0x600A160")]
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
public void SetResponseExtensions(X509Extensions responseExtensions)
{
this.responseExtensions = responseExtensions;
}
// Token: 0x0600A161 RID: 41313 RVA: 0x00219A7C File Offset: 0x00217C7C
[Token(Token = "0x600A161")]
[Address(RVA = "0xCEED40", Offset = "0xCEDD40", VA = "0x180CEED40")]
private BasicOcspResp GenerateResponse(ISignatureFactory signatureCalculator, X509Certificate[] chain, DateTime producedAt)
{
Asn1EncodableVector asn1EncodableVector;
byte[] derEncoded;
for (;;)
{
IList list = this.list;
if (asn1EncodableVector != 0)
{
break;
}
int num = 0;
ArrayTypeMismatchException ex;
if (ex != 0)
{
}
if (num != 0)
{
goto IL_127;
}
DerGeneralizedTime derGeneralizedTime = new DerGeneralizedTime(producedAt);
DerSequence derSequence = new DerSequence(asn1EncodableVector);
ResponseData responseData;
derEncoded = responseData.GetDerEncoded();
if (derEncoded != 0 && derEncoded != 0)
{
goto Block_4;
}
}
if (asn1EncodableVector == 0)
{
}
if (asn1EncodableVector != 0)
{
Asn1Encodable[] array = new Asn1Encodable[1];
throw new ArrayTypeMismatchException();
}
throw new NullReferenceException();
Block_4:
DerBitString derBitString = new DerBitString(derEncoded);
ISet noParams = OcspUtilities.noParams;
int num2 = 0;
if (chain != 0 && chain.Length != num2)
{
int num3 = 0;
Asn1EncodableVector asn1EncodableVector2;
if (num3 != chain.Length)
{
Asn1Encodable[] array2 = new Asn1Encodable[1];
AsymmetricKeyParameter publicKey = chain[num3].GetPublicKey();
Asn1Object asn1Object;
X509CertificateStructure instance = X509CertificateStructure.GetInstance(asn1Object);
if (instance != 0)
{
}
array2[0] = instance;
asn1EncodableVector2.Add(array2);
num3++;
}
DerSequence derSequence2 = new DerSequence(asn1EncodableVector2);
}
BasicOcspResp basicOcspResp;
BasicOcspResponse basicOcspResponse;
basicOcspResp.resp = basicOcspResponse;
ResponseData tbsResponseData = basicOcspResponse.tbsResponseData;
basicOcspResp.data = tbsResponseData;
return basicOcspResp;
IL_127:
throw new IndexOutOfRangeException();
}
// Token: 0x0600A162 RID: 41314 RVA: 0x00219BD4 File Offset: 0x00217DD4
[Token(Token = "0x600A162")]
[Address(RVA = "0xCEF630", Offset = "0xCEE630", VA = "0x180CEF630")]
public BasicOcspResp Generate(string signingAlgorithm, AsymmetricKeyParameter privateKey, X509Certificate[] chain, DateTime thisUpdate)
{
/*
An exception occurred when decompiling this method (0600A162)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.BasicOcspResp BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.BasicOcspRespGenerator::Generate(System.String,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.AsymmetricKeyParameter,BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Certificate[],System.DateTime)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_12:
stloc:ArgumentException(var_5_1C, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("no signing algorithm specified")))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x0600A163 RID: 41315 RVA: 0x00219C00 File Offset: 0x00217E00
[Token(Token = "0x600A163")]
[Address(RVA = "0xCEF7B0", Offset = "0xCEE7B0", VA = "0x180CEF7B0")]
public BasicOcspResp Generate(string signingAlgorithm, AsymmetricKeyParameter privateKey, X509Certificate[] chain, DateTime producedAt, SecureRandom random)
{
/*
An exception occurred when decompiling this method (0600A163)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.BasicOcspResp BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.BasicOcspRespGenerator::Generate(System.String,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.AsymmetricKeyParameter,BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Certificate[],System.DateTime,BestHTTP.SecureProtocol.Org.BouncyCastle.Security.SecureRandom)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_06:
stloc:ArgumentException(var_4_10, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("no signing algorithm specified")))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x0600A164 RID: 41316 RVA: 0x00219C20 File Offset: 0x00217E20
[Token(Token = "0x600A164")]
[Address(RVA = "0xCEF710", Offset = "0xCEE710", VA = "0x180CEF710")]
public BasicOcspResp Generate(ISignatureFactory signatureCalculatorFactory, X509Certificate[] chain, DateTime producedAt)
{
/*
An exception occurred when decompiling this method (0600A164)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.BasicOcspResp BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.BasicOcspRespGenerator::Generate(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.ISignatureFactory,BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Certificate[],System.DateTime)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_0E:
stloc:ArgumentException(var_1_18, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("no signature calculator specified")))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x170019AE RID: 6574
// (get) Token: 0x0600A165 RID: 41317 RVA: 0x00219C48 File Offset: 0x00217E48
[Token(Token = "0x170019AE")]
public IEnumerable SignatureAlgNames
{
[Token(Token = "0x600A165")]
[Address(RVA = "0xCEF9A0", Offset = "0xCEE9A0", VA = "0x180CEF9A0")]
get
{
return OcspUtilities.AlgNames;
}
}
// Token: 0x04006BB7 RID: 27575
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BB7")]
private readonly IList list;
// Token: 0x04006BB8 RID: 27576
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006BB8")]
private X509Extensions responseExtensions;
// Token: 0x04006BB9 RID: 27577
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006BB9")]
private RespID responderID;
// Token: 0x02001AA2 RID: 6818
[Token(Token = "0x2001AA2")]
private class ResponseObject
{
// Token: 0x0600A166 RID: 41318 RVA: 0x00219C5C File Offset: 0x00217E5C
[Token(Token = "0x600A166")]
[Address(RVA = "0xD062B0", Offset = "0xD052B0", VA = "0x180D062B0")]
public ResponseObject(CertificateID certId, CertificateStatus certStatus, DateTime thisUpdate, X509Extensions extensions)
{
DerGeneralizedTime derGeneralizedTime = new DerGeneralizedTime(thisUpdate);
}
// Token: 0x0600A167 RID: 41319 RVA: 0x00219C74 File Offset: 0x00217E74
[Token(Token = "0x600A167")]
[Address(RVA = "0xD06350", Offset = "0xD05350", VA = "0x180D06350")]
public ResponseObject(CertificateID certId, CertificateStatus certStatus, DateTime thisUpdate, DateTime nextUpdate, X509Extensions extensions)
{
DerGeneralizedTime derGeneralizedTime = new DerGeneralizedTime(thisUpdate);
}
// Token: 0x0600A168 RID: 41320 RVA: 0x00219C88 File Offset: 0x00217E88
[Token(Token = "0x600A168")]
[Address(RVA = "0xD05FF0", Offset = "0xD04FF0", VA = "0x180D05FF0")]
private ResponseObject(CertificateID certId, CertificateStatus certStatus, DerGeneralizedTime thisUpdate, DerGeneralizedTime nextUpdate, X509Extensions extensions)
{
do
{
base..ctor();
this.certId = certId;
if (certStatus == 0)
{
goto IL_5B;
}
if (certStatus != 0)
{
goto IL_4A;
}
}
while (certStatus == 0);
BigInteger bigInteger;
CrlReason crlReason = new CrlReason(bigInteger.IntValue);
byte[] bytes = crlReason.bytes;
DateTime dateTime;
CertStatus certStatus2 = new CertStatus(new RevokedInfo(new DerGeneralizedTime(dateTime), crlReason));
IL_4A:
DerNull instance = DerNull.Instance;
CertStatus certStatus3 = new CertStatus(2, instance);
IL_5B:
CertStatus certStatus4 = new CertStatus();
this.certStatus = certStatus4;
this.nextUpdate = 0;
this.extensions = 0;
this.thisUpdate = thisUpdate;
}
// Token: 0x0600A169 RID: 41321 RVA: 0x00219D20 File Offset: 0x00217F20
[Token(Token = "0x600A169")]
[Address(RVA = "0xD05F40", Offset = "0xD04F40", VA = "0x180D05F40")]
public SingleResponse ToResponse()
{
CertID id = this.certId.id;
DerGeneralizedTime derGeneralizedTime = this.thisUpdate;
DerGeneralizedTime derGeneralizedTime2 = this.nextUpdate;
CertStatus certStatus = this.certStatus;
X509Extensions x509Extensions = this.extensions;
return new SingleResponse(id, certStatus, derGeneralizedTime, derGeneralizedTime2, x509Extensions);
}
// Token: 0x04006BBA RID: 27578
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BBA")]
internal CertificateID certId;
// Token: 0x04006BBB RID: 27579
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006BBB")]
internal CertStatus certStatus;
// Token: 0x04006BBC RID: 27580
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006BBC")]
internal DerGeneralizedTime thisUpdate;
// Token: 0x04006BBD RID: 27581
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4006BBD")]
internal DerGeneralizedTime nextUpdate;
// Token: 0x04006BBE RID: 27582
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4006BBE")]
internal X509Extensions extensions;
}
}
}
@@ -0,0 +1,186 @@
using System;
using System.IO;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AA3 RID: 6819
[Token(Token = "0x2001AA3")]
public class CertificateID
{
// Token: 0x0600A16A RID: 41322 RVA: 0x00219D68 File Offset: 0x00217F68
[Token(Token = "0x600A16A")]
[Address(RVA = "0xCF0D90", Offset = "0xCEFD90", VA = "0x180CF0D90")]
public CertificateID(CertID id)
{
/*
An exception occurred when decompiling this method (0600A16A)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.CertificateID::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp.CertID)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_12:
stloc:ArgumentNullException(var_0_1C, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("id")))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x0600A16B RID: 41323 RVA: 0x00219D94 File Offset: 0x00217F94
[Token(Token = "0x600A16B")]
[Address(RVA = "0xCF0E10", Offset = "0xCEFE10", VA = "0x180CF0E10")]
public CertificateID(string hashAlgorithm, X509Certificate issuerCert, BigInteger serialNumber)
{
DerObjectIdentifier derObjectIdentifier = new DerObjectIdentifier(hashAlgorithm);
DerNull instance = DerNull.Instance;
AlgorithmIdentifier algorithmIdentifier = new AlgorithmIdentifier(derObjectIdentifier, instance);
DerInteger derInteger = new DerInteger(serialNumber);
CertID certID = CertificateID.CreateCertID(algorithmIdentifier, issuerCert, derInteger);
this.id = certID;
}
// Token: 0x170019AF RID: 6575
// (get) Token: 0x0600A16C RID: 41324 RVA: 0x00219DD8 File Offset: 0x00217FD8
[Token(Token = "0x170019AF")]
public string HashAlgOid
{
[Token(Token = "0x600A16C")]
[Address(RVA = "0xCF0F20", Offset = "0xCEFF20", VA = "0x180CF0F20")]
get
{
Asn1Object asn1Object = this.id.hashAlgorithm.ToAsn1Object();
throw new NullReferenceException();
}
}
// Token: 0x0600A16D RID: 41325 RVA: 0x00219DFC File Offset: 0x00217FFC
[Token(Token = "0x600A16D")]
[Address(RVA = "0xCF0D00", Offset = "0xCEFD00", VA = "0x180CF0D00")]
public byte[] GetIssuerNameHash()
{
Stream octetStream = ((Asn1OctetStringParser)this.id.issuerNameHash).GetOctetStream();
throw new NullReferenceException();
}
// Token: 0x0600A16E RID: 41326 RVA: 0x00219E20 File Offset: 0x00218020
[Token(Token = "0x600A16E")]
[Address(RVA = "0xCF0CC0", Offset = "0xCEFCC0", VA = "0x180CF0CC0")]
public byte[] GetIssuerKeyHash()
{
Stream octetStream = ((Asn1OctetStringParser)this.id.issuerKeyHash).GetOctetStream();
throw new NullReferenceException();
}
// Token: 0x170019B0 RID: 6576
// (get) Token: 0x0600A16F RID: 41327 RVA: 0x00219E44 File Offset: 0x00218044
[Token(Token = "0x170019B0")]
public BigInteger SerialNumber
{
[Token(Token = "0x600A16F")]
[Address(RVA = "0x5F1F00", Offset = "0x5F0F00", VA = "0x1805F1F00")]
get
{
return this.id.serialNumber.Value;
}
}
// Token: 0x0600A170 RID: 41328 RVA: 0x00219E68 File Offset: 0x00218068
[Token(Token = "0x600A170")]
[Address(RVA = "0xCF0D40", Offset = "0xCEFD40", VA = "0x180CF0D40")]
public bool MatchesIssuer(X509Certificate issuerCert)
{
CertID certID = this.id;
DerInteger serialNumber = certID.serialNumber;
Asn1Object asn1Object = CertificateID.CreateCertID(certID.hashAlgorithm, issuerCert, serialNumber).ToAsn1Object();
throw new NullReferenceException();
}
// Token: 0x0600A171 RID: 41329 RVA: 0x00219E9C File Offset: 0x0021809C
[Token(Token = "0x600A171")]
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
public CertID ToAsn1Object()
{
return this.id;
}
// Token: 0x0600A172 RID: 41330 RVA: 0x00219EB0 File Offset: 0x002180B0
[Token(Token = "0x600A172")]
[Address(RVA = "0xCF0B70", Offset = "0xCEFB70", VA = "0x180CF0B70", Slot = "0")]
public override bool Equals(object obj)
{
if (obj != this)
{
if (obj != 0 && obj != 0)
{
CertID certID = this.id;
Asn1Object asn1Object = certID.ToAsn1Object();
Asn1Object asn1Object2 = certID.ToAsn1Object();
return asn1Object.Asn1Equals(asn1Object2);
}
}
return true;
}
// Token: 0x0600A173 RID: 41331 RVA: 0x00219EF4 File Offset: 0x002180F4
[Token(Token = "0x600A173")]
[Address(RVA = "0xCF0C80", Offset = "0xCEFC80", VA = "0x180CF0C80", Slot = "2")]
public override int GetHashCode()
{
return this.id.ToAsn1Object().Asn1GetHashCode();
}
// Token: 0x0600A174 RID: 41332 RVA: 0x00219F18 File Offset: 0x00218118
[Token(Token = "0x600A174")]
[Address(RVA = "0xCF0A80", Offset = "0xCEFA80", VA = "0x180CF0A80")]
public static CertificateID DeriveCertificateID(CertificateID original, BigInteger newSerialNumber)
{
CertID certID = original.id;
Asn1OctetString issuerNameHash = certID.issuerNameHash;
AlgorithmIdentifier hashAlgorithm = certID.hashAlgorithm;
Asn1OctetString issuerKeyHash = certID.issuerKeyHash;
DerInteger derInteger = new DerInteger(newSerialNumber);
return new CertificateID(new CertID(hashAlgorithm, issuerNameHash, issuerKeyHash, derInteger));
}
// Token: 0x0600A175 RID: 41333 RVA: 0x00219F60 File Offset: 0x00218160
[Token(Token = "0x600A175")]
[Address(RVA = "0xCF0870", Offset = "0xCEF870", VA = "0x180CF0870")]
private static CertID CreateCertID(AlgorithmIdentifier hashAlg, X509Certificate issuerCert, DerInteger serialNumber)
{
Asn1Object asn1Object = hashAlg.ToAsn1Object();
byte[] encoded = PrincipalUtilities.GetSubjectX509Principal(issuerCert).GetEncoded();
SubjectPublicKeyInfo subjectPublicKeyInfo;
byte[] octets = subjectPublicKeyInfo.keyData.GetOctets();
byte[] array;
DerOctetString derOctetString = new DerOctetString(array);
byte[] array2;
DerOctetString derOctetString2 = new DerOctetString(array2);
return new CertID(hashAlg, derOctetString, derOctetString2, serialNumber);
}
// Token: 0x04006BBF RID: 27583
[Token(Token = "0x4006BBF")]
public const string HashSha1 = "1.3.14.3.2.26";
// Token: 0x04006BC0 RID: 27584
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BC0")]
private readonly CertID id;
}
}
@@ -0,0 +1,30 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AA4 RID: 6820
[Token(Token = "0x2001AA4")]
public abstract class CertificateStatus
{
// Token: 0x0600A176 RID: 41334 RVA: 0x00219FE8 File Offset: 0x002181E8
[Token(Token = "0x600A176")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
protected CertificateStatus()
{
}
// Token: 0x0600A177 RID: 41335 RVA: 0x0000220F File Offset: 0x0000040F
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x600A177")]
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0")]
static CertificateStatus()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04006BC1 RID: 27585
[Token(Token = "0x4006BC1")]
public static readonly CertificateStatus Good;
}
}
@@ -0,0 +1,73 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AAA RID: 6826
[Token(Token = "0x2001AAA")]
public class OCSPRespGenerator
{
// Token: 0x0600A1A3 RID: 41379 RVA: 0x0021A934 File Offset: 0x00218B34
[Token(Token = "0x600A1A3")]
[Address(RVA = "0xD008D0", Offset = "0xCFF8D0", VA = "0x180D008D0")]
public OcspResp Generate(int status, object response)
{
while (response != 0)
{
if (response == 0)
{
OcspException ex = new OcspException("unknown response object");
throw new NullReferenceException();
}
if (response != 0)
{
byte[] array;
DerOctetString derOctetString = new DerOctetString(array);
ResponseBytes responseBytes = new ResponseBytes(OcspObjectIdentifiers.PkixOcspBasic, derOctetString);
OcspResponseStatus ocspResponseStatus = new OcspResponseStatus(status);
OcspResponse ocspResponse = new OcspResponse(status);
break;
}
}
int num;
OcspResponse ocspResponse2 = new OcspResponse(new OcspResponseStatus(status), num);
num = 0;
OcspResp ocspResp;
ocspResp.resp = ocspResponse2;
return ocspResp;
}
// Token: 0x0600A1A4 RID: 41380 RVA: 0x0021A9B8 File Offset: 0x00218BB8
[Token(Token = "0x600A1A4")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public OCSPRespGenerator()
{
}
// Token: 0x04006BC9 RID: 27593
[Token(Token = "0x4006BC9")]
public const int Successful = 0;
// Token: 0x04006BCA RID: 27594
[Token(Token = "0x4006BCA")]
public const int MalformedRequest = 1;
// Token: 0x04006BCB RID: 27595
[Token(Token = "0x4006BCB")]
public const int InternalError = 2;
// Token: 0x04006BCC RID: 27596
[Token(Token = "0x4006BCC")]
public const int TryLater = 3;
// Token: 0x04006BCD RID: 27597
[Token(Token = "0x4006BCD")]
public const int SigRequired = 5;
// Token: 0x04006BCE RID: 27598
[Token(Token = "0x4006BCE")]
public const int Unauthorized = 6;
}
}
@@ -0,0 +1,18 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AAB RID: 6827
[Token(Token = "0x2001AAB")]
[Obsolete]
public abstract class OcscpRespStatus : OcspRespStatus
{
// Token: 0x0600A1A5 RID: 41381 RVA: 0x0021A9CC File Offset: 0x00218BCC
[Token(Token = "0x600A1A5")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
protected OcscpRespStatus()
{
}
}
}
@@ -0,0 +1,34 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AA5 RID: 6821
[Token(Token = "0x2001AA5")]
[Serializable]
public class OcspException : Exception
{
// Token: 0x0600A178 RID: 41336 RVA: 0x00219FFC File Offset: 0x002181FC
[Token(Token = "0x600A178")]
[Address(RVA = "0xD00B40", Offset = "0xCFFB40", VA = "0x180D00B40")]
public OcspException()
{
}
// Token: 0x0600A179 RID: 41337 RVA: 0x0021A010 File Offset: 0x00218210
[Token(Token = "0x600A179")]
[Address(RVA = "0xD00BA0", Offset = "0xCFFBA0", VA = "0x180D00BA0")]
public OcspException(string message)
: base(message)
{
}
// Token: 0x0600A17A RID: 41338 RVA: 0x0021A024 File Offset: 0x00218224
[Token(Token = "0x600A17A")]
[Address(RVA = "0xD00C10", Offset = "0xCFFC10", VA = "0x180D00C10")]
public OcspException(string message, Exception e)
: base(message, e)
{
}
}
}
@@ -0,0 +1,311 @@
using System;
using System.Collections;
using System.IO;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509.Store;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AA6 RID: 6822
[Token(Token = "0x2001AA6")]
public class OcspReq : X509ExtensionBase
{
// Token: 0x0600A17B RID: 41339 RVA: 0x0021A03C File Offset: 0x0021823C
[Token(Token = "0x600A17B")]
[Address(RVA = "0x681CA0", Offset = "0x680CA0", VA = "0x180681CA0")]
public OcspReq(OcspRequest req)
{
this.req = req;
}
// Token: 0x0600A17C RID: 41340 RVA: 0x0021A058 File Offset: 0x00218258
[Token(Token = "0x600A17C")]
[Address(RVA = "0xD02520", Offset = "0xD01520", VA = "0x180D02520")]
public OcspReq(byte[] req)
{
Asn1InputStream asn1InputStream = new Asn1InputStream(req);
}
// Token: 0x0600A17D RID: 41341 RVA: 0x0021A06C File Offset: 0x0021826C
[Token(Token = "0x600A17D")]
[Address(RVA = "0xD024B0", Offset = "0xD014B0", VA = "0x180D024B0")]
public OcspReq(Stream inStr)
{
Asn1InputStream asn1InputStream = new Asn1InputStream(inStr);
}
// Token: 0x0600A17E RID: 41342 RVA: 0x0021A080 File Offset: 0x00218280
[Token(Token = "0x600A17E")]
[Address(RVA = "0xD02590", Offset = "0xD01590", VA = "0x180D02590")]
private OcspReq(Asn1InputStream aIn)
{
OcspRequest instance = OcspRequest.GetInstance(aIn.ReadObject());
this.req = instance;
}
// Token: 0x0600A17F RID: 41343 RVA: 0x0021A0BC File Offset: 0x002182BC
[Token(Token = "0x600A17F")]
[Address(RVA = "0xD02140", Offset = "0xD01140", VA = "0x180D02140")]
public byte[] GetTbsRequest()
{
return this.req.tbsRequest.GetEncoded();
}
// Token: 0x170019B1 RID: 6577
// (get) Token: 0x0600A180 RID: 41344 RVA: 0x0021A0E8 File Offset: 0x002182E8
[Token(Token = "0x170019B1")]
public int Version
{
[Token(Token = "0x600A180")]
[Address(RVA = "0x423EF0", Offset = "0x422EF0", VA = "0x180423EF0")]
get
{
int intValue = this.req.tbsRequest.version.Value.IntValue;
return intValue + 1;
}
}
// Token: 0x170019B2 RID: 6578
// (get) Token: 0x0600A181 RID: 41345 RVA: 0x0021A11C File Offset: 0x0021831C
[Token(Token = "0x170019B2")]
public GeneralName RequestorName
{
[Token(Token = "0x600A181")]
[Address(RVA = "0xD026F0", Offset = "0xD016F0", VA = "0x180D026F0")]
get
{
return GeneralName.GetInstance(this.req.tbsRequest.requestorName);
}
}
// Token: 0x0600A182 RID: 41346 RVA: 0x0021A144 File Offset: 0x00218344
[Token(Token = "0x600A182")]
[Address(RVA = "0xD01FC0", Offset = "0xD00FC0", VA = "0x180D01FC0")]
public Req[] GetRequestList()
{
Asn1Sequence requestList = this.req.tbsRequest.requestList;
Asn1Encodable asn1Encodable;
Req[] array = new Req[asn1Encodable];
int num = 0;
if (num != array.Length)
{
Asn1SequenceParser parser = requestList.Parser;
Req req;
Request request;
req.req = request;
num++;
array[0] = req;
}
return array;
}
// Token: 0x170019B3 RID: 6579
// (get) Token: 0x0600A183 RID: 41347 RVA: 0x0021A19C File Offset: 0x0021839C
[Token(Token = "0x170019B3")]
public X509Extensions RequestExtensions
{
[Token(Token = "0x600A183")]
[Address(RVA = "0xD021F0", Offset = "0xD011F0", VA = "0x180D021F0")]
get
{
return X509Extensions.GetInstance(this.req.tbsRequest.requestExtensions);
}
}
// Token: 0x0600A184 RID: 41348 RVA: 0x0021A1C4 File Offset: 0x002183C4
[Token(Token = "0x600A184")]
[Address(RVA = "0xD021F0", Offset = "0xD011F0", VA = "0x180D021F0", Slot = "8")]
protected override X509Extensions GetX509Extensions()
{
return X509Extensions.GetInstance(this.req.tbsRequest.requestExtensions);
}
// Token: 0x170019B4 RID: 6580
// (get) Token: 0x0600A185 RID: 41349 RVA: 0x0021A1EC File Offset: 0x002183EC
[Token(Token = "0x170019B4")]
public string SignatureAlgOid
{
[Token(Token = "0x600A185")]
[Address(RVA = "0xD02720", Offset = "0xD01720", VA = "0x180D02720")]
get
{
Signature optionalSignature = this.req.optionalSignature;
if (optionalSignature != 0)
{
Asn1Object asn1Object = optionalSignature.signatureAlgorithm.ToAsn1Object();
}
throw new NullReferenceException();
}
}
// Token: 0x0600A186 RID: 41350 RVA: 0x0021A21C File Offset: 0x0021841C
[Token(Token = "0x600A186")]
[Address(RVA = "0xD02100", Offset = "0xD01100", VA = "0x180D02100")]
public byte[] GetSignature()
{
Signature optionalSignature = this.req.optionalSignature;
if (optionalSignature != 0)
{
return optionalSignature.GetSignatureOctets();
}
throw new NullReferenceException();
}
// Token: 0x0600A187 RID: 41351 RVA: 0x0021A248 File Offset: 0x00218448
[Token(Token = "0x600A187")]
[Address(RVA = "0xD019A0", Offset = "0xD009A0", VA = "0x180D019A0")]
private IList GetCertList()
{
IList list;
for (;;)
{
int num = 0;
list = Platform.CreateArrayList();
Asn1Sequence certs = this.req.optionalSignature.certs;
if (certs == 0)
{
break;
}
IEnumerator enumerator = certs.GetEnumerator();
if (enumerator != 0)
{
if (enumerator == 0)
{
}
if (enumerator == 0)
{
goto IL_66;
}
byte[] array;
if (new X509CertificateParser().ReadCertificate(array) != 0)
{
}
if (num == 0)
{
break;
}
}
}
return list;
IL_66:
throw new NullReferenceException();
}
// Token: 0x0600A188 RID: 41352 RVA: 0x0021A2C0 File Offset: 0x002184C0
[Token(Token = "0x600A188")]
[Address(RVA = "0xD01D20", Offset = "0xD00D20", VA = "0x180D01D20")]
public X509Certificate[] GetCerts()
{
while (this.req.optionalSignature > (ulong)0L)
{
IList certList = this.GetCertList();
X509Certificate[] array = new X509Certificate[certList];
int num = 0;
if (num < certList)
{
num += num;
num++;
}
if (num < array)
{
uint num2;
if (num < (int)num2)
{
num += num;
num++;
}
if (num != 0)
{
ulong num3;
num3 += num3;
num3 += num3;
if (num == 0 || num == 0)
{
continue;
}
}
num++;
array[0] = num;
}
return array;
}
throw new NullReferenceException();
}
// Token: 0x0600A189 RID: 41353 RVA: 0x0021A33C File Offset: 0x0021853C
[Token(Token = "0x600A189")]
[Address(RVA = "0xD01C10", Offset = "0xD00C10", VA = "0x180D01C10")]
public IX509Store GetCertificates(string type)
{
if (this.req.optionalSignature > (ulong)0L)
{
string text = "Certificate/" + type;
X509CollectionStoreParameters x509CollectionStoreParameters = new X509CollectionStoreParameters(this.GetCertList());
return X509StoreFactory.Create(text, x509CollectionStoreParameters);
}
throw new NullReferenceException();
}
// Token: 0x170019B5 RID: 6581
// (get) Token: 0x0600A18A RID: 41354 RVA: 0x0021A380 File Offset: 0x00218580
[Token(Token = "0x170019B5")]
public bool IsSigned
{
[Token(Token = "0x600A18A")]
[Address(RVA = "0xD026D0", Offset = "0xD016D0", VA = "0x180D026D0")]
get
{
OcspRequest ocspRequest = this.req;
throw new NullReferenceException();
}
}
// Token: 0x0600A18B RID: 41355 RVA: 0x0021A39C File Offset: 0x0021859C
[Token(Token = "0x600A18B")]
[Address(RVA = "0xD02260", Offset = "0xD01260", VA = "0x180D02260")]
public bool Verify(AsymmetricKeyParameter publicKey)
{
/*
An exception occurred when decompiling this method (0600A18B)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.OcspReq::Verify(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.AsymmetricKeyParameter)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_B7:
stloc:OcspException(var_9_C1, newobj:OcspException(OcspException::.ctor, ldstr:string("attempt to Verify signature on unsigned object")))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x0600A18C RID: 41356 RVA: 0x0021A46C File Offset: 0x0021866C
[Token(Token = "0x600A18C")]
[Address(RVA = "0x423720", Offset = "0x422720", VA = "0x180423720")]
public byte[] GetEncoded()
{
return this.req.GetEncoded();
}
// Token: 0x04006BC2 RID: 27586
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BC2")]
private OcspRequest req;
}
}
@@ -0,0 +1,253 @@
using System;
using System.Collections;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Security;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AA7 RID: 6823
[Token(Token = "0x2001AA7")]
public class OcspReqGenerator
{
// Token: 0x0600A18D RID: 41357 RVA: 0x0021A48C File Offset: 0x0021868C
[Token(Token = "0x600A18D")]
[Address(RVA = "0xD00D30", Offset = "0xCFFD30", VA = "0x180D00D30")]
public void AddRequest(CertificateID certId)
{
IList list = this.list;
OcspReqGenerator.RequestObject requestObject;
requestObject.certId = certId;
requestObject.extensions = (ulong)0L;
throw new NullReferenceException();
}
// Token: 0x0600A18E RID: 41358 RVA: 0x0021A4B8 File Offset: 0x002186B8
[Token(Token = "0x600A18E")]
[Address(RVA = "0xD00C90", Offset = "0xCFFC90", VA = "0x180D00C90")]
public void AddRequest(CertificateID certId, X509Extensions singleRequestExtensions)
{
IList list = this.list;
OcspReqGenerator.RequestObject requestObject;
requestObject.certId = certId;
requestObject.extensions = singleRequestExtensions;
throw new NullReferenceException();
}
// Token: 0x0600A18F RID: 41359 RVA: 0x0021A4E0 File Offset: 0x002186E0
[Token(Token = "0x600A18F")]
[Address(RVA = "0xD01830", Offset = "0xD00830", VA = "0x180D01830")]
public void SetRequestorName(X509Name requestorName)
{
GeneralName generalName = new GeneralName(4, requestorName);
this.requestorName = generalName;
}
// Token: 0x0600A190 RID: 41360 RVA: 0x0021A4FC File Offset: 0x002186FC
[Token(Token = "0x600A190")]
[Address(RVA = "0x4157F0", Offset = "0x4147F0", VA = "0x1804157F0")]
public void SetRequestorName(GeneralName requestorName)
{
this.requestorName = requestorName;
}
// Token: 0x0600A191 RID: 41361 RVA: 0x0021A510 File Offset: 0x00218710
[Token(Token = "0x600A191")]
[Address(RVA = "0x415810", Offset = "0x414810", VA = "0x180415810")]
public void SetRequestExtensions(X509Extensions requestExtensions)
{
this.requestExtensions = requestExtensions;
}
// Token: 0x0600A192 RID: 41362 RVA: 0x0021A524 File Offset: 0x00218724
[Token(Token = "0x600A192")]
[Address(RVA = "0xD00DC0", Offset = "0xCFFDC0", VA = "0x180D00DC0")]
private OcspReq GenerateRequest(DerObjectIdentifier signingAlgorithm, AsymmetricKeyParameter privateKey, X509Certificate[] chain, SecureRandom random)
{
Asn1EncodableVector asn1EncodableVector;
int num2;
DerSequence derSequence;
TbsRequest tbsRequest;
for (;;)
{
int num = 0;
IList list = this.list;
if (asn1EncodableVector != 0)
{
break;
}
num2 = 0;
ArrayTypeMismatchException ex;
if (ex != 0)
{
}
if (num != 0)
{
goto IL_132;
}
GeneralName generalName = this.requestorName;
derSequence = new DerSequence(asn1EncodableVector);
X509Extensions x509Extensions = this.requestExtensions;
tbsRequest = new TbsRequest(generalName, derSequence, x509Extensions);
if (tbsRequest == 0)
{
goto IL_102;
}
if (this.requestorName != (ulong)0L)
{
goto Block_4;
}
}
if (asn1EncodableVector == 0)
{
}
if (asn1EncodableVector != 0)
{
Asn1Encodable[] array = new Asn1Encodable[1];
throw new ArrayTypeMismatchException();
}
throw new NullReferenceException();
Block_4:
DerInteger version = tbsRequest.version;
if (derSequence == 0)
{
}
int length = tbsRequest.GetEncoded().Length;
if (chain == 0 || chain.Length == 0)
{
throw new NullReferenceException();
}
if (num2 != chain.Length)
{
Asn1Encodable[] array2 = new Asn1Encodable[1];
AsymmetricKeyParameter publicKey = chain[num2].GetPublicKey();
Asn1Object asn1Object;
X509CertificateStructure instance = X509CertificateStructure.GetInstance(asn1Object);
throw new ArrayTypeMismatchException();
}
Asn1EncodableVector asn1EncodableVector2;
DerSequence derSequence2 = new DerSequence(asn1EncodableVector2);
IL_102:
OcspReq ocspReq;
OcspRequest ocspRequest;
ocspReq.req = ocspRequest;
return ocspReq;
IL_132:
throw new NullReferenceException();
}
// Token: 0x0600A193 RID: 41363 RVA: 0x0021A688 File Offset: 0x00218888
[Token(Token = "0x600A193")]
[Address(RVA = "0xD01800", Offset = "0xD00800", VA = "0x180D01800")]
public OcspReq Generate()
{
OcspReq ocspReq;
return ocspReq;
}
// Token: 0x0600A194 RID: 41364 RVA: 0x0021A698 File Offset: 0x00218898
[Token(Token = "0x600A194")]
[Address(RVA = "0xD01550", Offset = "0xD00550", VA = "0x180D01550")]
public OcspReq Generate(string signingAlgorithm, AsymmetricKeyParameter privateKey, X509Certificate[] chain)
{
int num = 0;
return this.Generate(signingAlgorithm, privateKey, chain, num);
}
// Token: 0x0600A195 RID: 41365 RVA: 0x0021A6B4 File Offset: 0x002188B4
[Token(Token = "0x600A195")]
[Address(RVA = "0xD01570", Offset = "0xD00570", VA = "0x180D01570")]
public OcspReq Generate(string signingAlgorithm, AsymmetricKeyParameter privateKey, X509Certificate[] chain, SecureRandom random)
{
if (signingAlgorithm != 0)
{
string text = Platform.ToUpperInvariant(signingAlgorithm);
IDictionary algorithms = OcspUtilities.algorithms;
DerObjectIdentifier derObjectIdentifier = new DerObjectIdentifier(text);
IDictionary algorithms2 = OcspUtilities.algorithms;
IDictionary algorithms3 = OcspUtilities.algorithms;
OcspReq ocspReq;
return ocspReq;
}
ArgumentException ex = new ArgumentException("no signing algorithm specified");
throw new NullReferenceException();
}
// Token: 0x170019B6 RID: 6582
// (get) Token: 0x0600A196 RID: 41366 RVA: 0x0021A710 File Offset: 0x00218910
[Token(Token = "0x170019B6")]
public IEnumerable SignatureAlgNames
{
[Token(Token = "0x600A196")]
[Address(RVA = "0xD01950", Offset = "0xD00950", VA = "0x180D01950")]
get
{
return OcspUtilities.AlgNames;
}
}
// Token: 0x0600A197 RID: 41367 RVA: 0x0021A724 File Offset: 0x00218924
[Token(Token = "0x600A197")]
[Address(RVA = "0xD018F0", Offset = "0xD008F0", VA = "0x180D018F0")]
public OcspReqGenerator()
{
IList list = Platform.CreateArrayList();
this.list = list;
base..ctor();
}
// Token: 0x04006BC3 RID: 27587
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BC3")]
private IList list;
// Token: 0x04006BC4 RID: 27588
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006BC4")]
private GeneralName requestorName;
// Token: 0x04006BC5 RID: 27589
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4006BC5")]
private X509Extensions requestExtensions;
// Token: 0x02001AA8 RID: 6824
[Token(Token = "0x2001AA8")]
private class RequestObject
{
// Token: 0x0600A198 RID: 41368 RVA: 0x0021A748 File Offset: 0x00218948
[Token(Token = "0x600A198")]
[Address(RVA = "0x417DD0", Offset = "0x416DD0", VA = "0x180417DD0")]
public RequestObject(CertificateID certId, X509Extensions extensions)
{
this.certId = certId;
this.extensions = extensions;
}
// Token: 0x0600A199 RID: 41369 RVA: 0x0021A76C File Offset: 0x0021896C
[Token(Token = "0x600A199")]
[Address(RVA = "0xD05A10", Offset = "0xD04A10", VA = "0x180D05A10")]
public Request ToRequest()
{
CertID id = this.certId.id;
X509Extensions x509Extensions = this.extensions;
return new Request(id, x509Extensions);
}
// Token: 0x04006BC6 RID: 27590
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BC6")]
internal CertificateID certId;
// Token: 0x04006BC7 RID: 27591
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4006BC7")]
internal X509Extensions extensions;
}
}
}
@@ -0,0 +1,117 @@
using System;
using System.IO;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AA9 RID: 6825
[Token(Token = "0x2001AA9")]
public class OcspResp
{
// Token: 0x0600A19A RID: 41370 RVA: 0x0021A79C File Offset: 0x0021899C
[Token(Token = "0x600A19A")]
[Address(RVA = "0x493D90", Offset = "0x492D90", VA = "0x180493D90")]
public OcspResp(OcspResponse resp)
{
this.resp = resp;
}
// Token: 0x0600A19B RID: 41371 RVA: 0x0021A7B8 File Offset: 0x002189B8
[Token(Token = "0x600A19B")]
[Address(RVA = "0xD02AC0", Offset = "0xD01AC0", VA = "0x180D02AC0")]
public OcspResp(byte[] resp)
{
Asn1InputStream asn1InputStream = new Asn1InputStream(resp);
}
// Token: 0x0600A19C RID: 41372 RVA: 0x0021A7CC File Offset: 0x002189CC
[Token(Token = "0x600A19C")]
[Address(RVA = "0xD02B30", Offset = "0xD01B30", VA = "0x180D02B30")]
public OcspResp(Stream inStr)
{
Asn1InputStream asn1InputStream = new Asn1InputStream(inStr);
}
// Token: 0x0600A19D RID: 41373 RVA: 0x0021A7E0 File Offset: 0x002189E0
[Token(Token = "0x600A19D")]
[Address(RVA = "0xD029E0", Offset = "0xD019E0", VA = "0x180D029E0")]
private OcspResp(Asn1InputStream aIn)
{
OcspResponse instance = OcspResponse.GetInstance(aIn.ReadObject());
this.resp = instance;
}
// Token: 0x170019B7 RID: 6583
// (get) Token: 0x0600A19E RID: 41374 RVA: 0x0021A81C File Offset: 0x00218A1C
[Token(Token = "0x170019B7")]
public int Status
{
[Token(Token = "0x600A19E")]
[Address(RVA = "0xD02BA0", Offset = "0xD01BA0", VA = "0x180D02BA0")]
get
{
return this.resp.responseStatus.Value.IntValue;
}
}
// Token: 0x0600A19F RID: 41375 RVA: 0x0021A844 File Offset: 0x00218A44
[Token(Token = "0x600A19F")]
[Address(RVA = "0xD02830", Offset = "0xD01830", VA = "0x180D02830")]
public object GetResponseObject()
{
ResponseBytes responseBytes = this.resp.responseBytes;
if (responseBytes != 0)
{
DerObjectIdentifier responseType = responseBytes.responseType;
Asn1OctetString response = responseBytes.response;
Stream octetStream = responseBytes.response.GetOctetStream();
Asn1Object asn1Object;
BasicOcspResponse instance = BasicOcspResponse.GetInstance(asn1Object);
BasicOcspResp basicOcspResp;
basicOcspResp.resp = instance;
ResponseData tbsResponseData = instance.tbsResponseData;
basicOcspResp.data = tbsResponseData;
}
throw new NullReferenceException();
}
// Token: 0x0600A1A0 RID: 41376 RVA: 0x0021A8C4 File Offset: 0x00218AC4
[Token(Token = "0x600A1A0")]
[Address(RVA = "0x423720", Offset = "0x422720", VA = "0x180423720")]
public byte[] GetEncoded()
{
return this.resp.GetEncoded();
}
// Token: 0x0600A1A1 RID: 41377 RVA: 0x0021A8E4 File Offset: 0x00218AE4
[Token(Token = "0x600A1A1")]
[Address(RVA = "0xD02770", Offset = "0xD01770", VA = "0x180D02770", Slot = "0")]
public override bool Equals(object obj)
{
if (obj != this)
{
if (obj != 0 && obj != 0)
{
Asn1Object asn1Object = this.resp.ToAsn1Object();
}
}
return true;
}
// Token: 0x0600A1A2 RID: 41378 RVA: 0x0021A914 File Offset: 0x00218B14
[Token(Token = "0x600A1A2")]
[Address(RVA = "0x40F2B0", Offset = "0x40E2B0", VA = "0x18040F2B0", Slot = "2")]
public override int GetHashCode()
{
Asn1Object asn1Object = this.resp.ToAsn1Object();
throw new NullReferenceException();
}
// Token: 0x04006BC8 RID: 27592
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BC8")]
private OcspResponse resp;
}
}
@@ -0,0 +1,41 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AAC RID: 6828
[Token(Token = "0x2001AAC")]
public abstract class OcspRespStatus
{
// Token: 0x0600A1A6 RID: 41382 RVA: 0x0021A9E0 File Offset: 0x00218BE0
[Token(Token = "0x600A1A6")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
protected OcspRespStatus()
{
}
// Token: 0x04006BCF RID: 27599
[Token(Token = "0x4006BCF")]
public const int Successful = 0;
// Token: 0x04006BD0 RID: 27600
[Token(Token = "0x4006BD0")]
public const int MalformedRequest = 1;
// Token: 0x04006BD1 RID: 27601
[Token(Token = "0x4006BD1")]
public const int InternalError = 2;
// Token: 0x04006BD2 RID: 27602
[Token(Token = "0x4006BD2")]
public const int TryLater = 3;
// Token: 0x04006BD3 RID: 27603
[Token(Token = "0x4006BD3")]
public const int SigRequired = 5;
// Token: 0x04006BD4 RID: 27604
[Token(Token = "0x4006BD4")]
public const int Unauthorized = 6;
}
}
@@ -0,0 +1,194 @@
using System;
using System.Collections;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.CryptoPro;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Nist;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Pkcs;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.TeleTrust;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X9;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AAD RID: 6829
[Token(Token = "0x2001AAD")]
internal class OcspUtilities
{
// Token: 0x0600A1A7 RID: 41383 RVA: 0x0021A9F4 File Offset: 0x00218BF4
[Token(Token = "0x600A1A7")]
[Address(RVA = "0xD02F90", Offset = "0xD01F90", VA = "0x180D02F90")]
static OcspUtilities()
{
IDictionary dictionary = Platform.CreateHashtable();
OcspUtilities.algorithms = dictionary;
OcspUtilities.oids = Platform.CreateHashtable();
OcspUtilities.noParams = new HashSet();
IDictionary dictionary2 = OcspUtilities.algorithms;
DerObjectIdentifier md2WithRsaEncryption = PkcsObjectIdentifiers.MD2WithRsaEncryption;
IDictionary dictionary3 = OcspUtilities.algorithms;
DerObjectIdentifier md2WithRsaEncryption2 = PkcsObjectIdentifiers.MD2WithRsaEncryption;
IDictionary dictionary4 = OcspUtilities.algorithms;
DerObjectIdentifier md5WithRsaEncryption = PkcsObjectIdentifiers.MD5WithRsaEncryption;
IDictionary dictionary5 = OcspUtilities.algorithms;
DerObjectIdentifier md5WithRsaEncryption2 = PkcsObjectIdentifiers.MD5WithRsaEncryption;
IDictionary dictionary6 = OcspUtilities.algorithms;
DerObjectIdentifier sha1WithRsaEncryption = PkcsObjectIdentifiers.Sha1WithRsaEncryption;
IDictionary dictionary7 = OcspUtilities.algorithms;
DerObjectIdentifier sha1WithRsaEncryption2 = PkcsObjectIdentifiers.Sha1WithRsaEncryption;
IDictionary dictionary8 = OcspUtilities.algorithms;
DerObjectIdentifier sha224WithRsaEncryption = PkcsObjectIdentifiers.Sha224WithRsaEncryption;
IDictionary dictionary9 = OcspUtilities.algorithms;
DerObjectIdentifier sha224WithRsaEncryption2 = PkcsObjectIdentifiers.Sha224WithRsaEncryption;
IDictionary dictionary10 = OcspUtilities.algorithms;
DerObjectIdentifier sha256WithRsaEncryption = PkcsObjectIdentifiers.Sha256WithRsaEncryption;
IDictionary dictionary11 = OcspUtilities.algorithms;
DerObjectIdentifier sha256WithRsaEncryption2 = PkcsObjectIdentifiers.Sha256WithRsaEncryption;
IDictionary dictionary12 = OcspUtilities.algorithms;
DerObjectIdentifier sha384WithRsaEncryption = PkcsObjectIdentifiers.Sha384WithRsaEncryption;
IDictionary dictionary13 = OcspUtilities.algorithms;
DerObjectIdentifier sha384WithRsaEncryption2 = PkcsObjectIdentifiers.Sha384WithRsaEncryption;
IDictionary dictionary14 = OcspUtilities.algorithms;
DerObjectIdentifier sha512WithRsaEncryption = PkcsObjectIdentifiers.Sha512WithRsaEncryption;
IDictionary dictionary15 = OcspUtilities.algorithms;
DerObjectIdentifier sha512WithRsaEncryption2 = PkcsObjectIdentifiers.Sha512WithRsaEncryption;
IDictionary dictionary16 = OcspUtilities.algorithms;
DerObjectIdentifier rsaSignatureWithRipeMD = TeleTrusTObjectIdentifiers.RsaSignatureWithRipeMD160;
IDictionary dictionary17 = OcspUtilities.algorithms;
DerObjectIdentifier rsaSignatureWithRipeMD2 = TeleTrusTObjectIdentifiers.RsaSignatureWithRipeMD160;
IDictionary dictionary18 = OcspUtilities.algorithms;
DerObjectIdentifier rsaSignatureWithRipeMD3 = TeleTrusTObjectIdentifiers.RsaSignatureWithRipeMD128;
IDictionary dictionary19 = OcspUtilities.algorithms;
DerObjectIdentifier rsaSignatureWithRipeMD4 = TeleTrusTObjectIdentifiers.RsaSignatureWithRipeMD128;
IDictionary dictionary20 = OcspUtilities.algorithms;
DerObjectIdentifier rsaSignatureWithRipeMD5 = TeleTrusTObjectIdentifiers.RsaSignatureWithRipeMD256;
IDictionary dictionary21 = OcspUtilities.algorithms;
DerObjectIdentifier rsaSignatureWithRipeMD6 = TeleTrusTObjectIdentifiers.RsaSignatureWithRipeMD256;
IDictionary dictionary22 = OcspUtilities.algorithms;
DerObjectIdentifier idDsaWithSha = X9ObjectIdentifiers.IdDsaWithSha1;
IDictionary dictionary23 = OcspUtilities.algorithms;
DerObjectIdentifier idDsaWithSha2 = X9ObjectIdentifiers.IdDsaWithSha1;
IDictionary dictionary24 = OcspUtilities.algorithms;
DerObjectIdentifier dsaWithSha = NistObjectIdentifiers.DsaWithSha224;
IDictionary dictionary25 = OcspUtilities.algorithms;
DerObjectIdentifier dsaWithSha2 = NistObjectIdentifiers.DsaWithSha256;
IDictionary dictionary26 = OcspUtilities.algorithms;
DerObjectIdentifier ecdsaWithSha = X9ObjectIdentifiers.ECDsaWithSha1;
IDictionary dictionary27 = OcspUtilities.algorithms;
DerObjectIdentifier ecdsaWithSha2 = X9ObjectIdentifiers.ECDsaWithSha1;
IDictionary dictionary28 = OcspUtilities.algorithms;
DerObjectIdentifier ecdsaWithSha3 = X9ObjectIdentifiers.ECDsaWithSha224;
IDictionary dictionary29 = OcspUtilities.algorithms;
DerObjectIdentifier ecdsaWithSha4 = X9ObjectIdentifiers.ECDsaWithSha256;
IDictionary dictionary30 = OcspUtilities.algorithms;
DerObjectIdentifier ecdsaWithSha5 = X9ObjectIdentifiers.ECDsaWithSha384;
IDictionary dictionary31 = OcspUtilities.algorithms;
DerObjectIdentifier ecdsaWithSha6 = X9ObjectIdentifiers.ECDsaWithSha512;
IDictionary dictionary32 = OcspUtilities.algorithms;
DerObjectIdentifier gostR3411x94WithGostR3410x = CryptoProObjectIdentifiers.GostR3411x94WithGostR3410x94;
IDictionary dictionary33 = OcspUtilities.algorithms;
DerObjectIdentifier gostR3411x94WithGostR3410x2 = CryptoProObjectIdentifiers.GostR3411x94WithGostR3410x94;
IDictionary dictionary34 = OcspUtilities.oids;
IDictionary dictionary35 = OcspUtilities.oids;
IDictionary dictionary36 = OcspUtilities.oids;
IDictionary dictionary37 = OcspUtilities.oids;
IDictionary dictionary38 = OcspUtilities.oids;
IDictionary dictionary39 = OcspUtilities.oids;
IDictionary dictionary40 = OcspUtilities.oids;
IDictionary dictionary41 = OcspUtilities.oids;
IDictionary dictionary42 = OcspUtilities.oids;
IDictionary dictionary43 = OcspUtilities.oids;
IDictionary dictionary44 = OcspUtilities.oids;
IDictionary dictionary45 = OcspUtilities.oids;
IDictionary dictionary46 = OcspUtilities.oids;
IDictionary dictionary47 = OcspUtilities.oids;
IDictionary dictionary48 = OcspUtilities.oids;
IDictionary dictionary49 = OcspUtilities.oids;
IDictionary dictionary50 = OcspUtilities.oids;
IDictionary dictionary51 = OcspUtilities.oids;
IDictionary dictionary52 = OcspUtilities.oids;
IDictionary dictionary53 = OcspUtilities.oids;
IDictionary dictionary54 = OcspUtilities.oids;
IDictionary dictionary55 = OcspUtilities.oids;
ISet set = OcspUtilities.noParams;
ISet set2 = OcspUtilities.noParams;
ISet set3 = OcspUtilities.noParams;
ISet set4 = OcspUtilities.noParams;
ISet set5 = OcspUtilities.noParams;
ISet set6 = OcspUtilities.noParams;
ISet set7 = OcspUtilities.noParams;
ISet set8 = OcspUtilities.noParams;
throw new NullReferenceException();
}
// Token: 0x0600A1A8 RID: 41384 RVA: 0x0021ACBC File Offset: 0x00218EBC
[Token(Token = "0x600A1A8")]
[Address(RVA = "0xD02CF0", Offset = "0xD01CF0", VA = "0x180D02CF0")]
internal static DerObjectIdentifier GetAlgorithmOid(string algorithmName)
{
string text = Platform.ToUpperInvariant(algorithmName);
IDictionary dictionary = OcspUtilities.algorithms;
if (text == 0)
{
return new DerObjectIdentifier(text);
}
IDictionary dictionary2 = OcspUtilities.algorithms;
IDictionary dictionary3 = OcspUtilities.algorithms;
throw new NullReferenceException();
}
// Token: 0x0600A1A9 RID: 41385 RVA: 0x0021ACF8 File Offset: 0x00218EF8
[Token(Token = "0x600A1A9")]
[Address(RVA = "0xD02BE0", Offset = "0xD01BE0", VA = "0x180D02BE0")]
internal static string GetAlgorithmName(DerObjectIdentifier oid)
{
IDictionary dictionary = OcspUtilities.oids;
return oid.identifier;
}
// Token: 0x0600A1AA RID: 41386 RVA: 0x0021AD20 File Offset: 0x00218F20
[Token(Token = "0x600A1AA")]
[Address(RVA = "0xD02E70", Offset = "0xD01E70", VA = "0x180D02E70")]
internal static AlgorithmIdentifier GetSigAlgID(DerObjectIdentifier sigOid)
{
ISet set = OcspUtilities.noParams;
DerNull instance = DerNull.Instance;
return new AlgorithmIdentifier(sigOid, instance);
}
// Token: 0x170019B8 RID: 6584
// (get) Token: 0x0600A1AB RID: 41387 RVA: 0x0021AD50 File Offset: 0x00218F50
[Token(Token = "0x170019B8")]
internal static IEnumerable AlgNames
{
[Token(Token = "0x600A1AB")]
[Address(RVA = "0xD04280", Offset = "0xD03280", VA = "0x180D04280")]
get
{
IDictionary dictionary = OcspUtilities.algorithms;
throw new NullReferenceException();
}
}
// Token: 0x0600A1AC RID: 41388 RVA: 0x0021AD68 File Offset: 0x00218F68
[Token(Token = "0x600A1AC")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public OcspUtilities()
{
}
// Token: 0x04006BD5 RID: 27605
[Token(Token = "0x4006BD5")]
private static readonly IDictionary algorithms;
// Token: 0x04006BD6 RID: 27606
[Token(Token = "0x4006BD6")]
private static readonly IDictionary oids;
// Token: 0x04006BD7 RID: 27607
[Token(Token = "0x4006BD7")]
private static readonly ISet noParams;
}
}
@@ -0,0 +1,55 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AAE RID: 6830
[Token(Token = "0x2001AAE")]
public class Req : X509ExtensionBase
{
// Token: 0x0600A1AD RID: 41389 RVA: 0x0021AD7C File Offset: 0x00218F7C
[Token(Token = "0x600A1AD")]
[Address(RVA = "0x681CA0", Offset = "0x680CA0", VA = "0x180681CA0")]
public Req(Request req)
{
this.req = req;
}
// Token: 0x0600A1AE RID: 41390 RVA: 0x0021AD98 File Offset: 0x00218F98
[Token(Token = "0x600A1AE")]
[Address(RVA = "0xD059A0", Offset = "0xD049A0", VA = "0x180D059A0")]
public CertificateID GetCertID()
{
return new CertificateID(this.req.reqCert);
}
// Token: 0x170019B9 RID: 6585
// (get) Token: 0x0600A1AF RID: 41391 RVA: 0x0021ADBC File Offset: 0x00218FBC
[Token(Token = "0x170019B9")]
public X509Extensions SingleRequestExtensions
{
[Token(Token = "0x600A1AF")]
[Address(RVA = "0x423ED0", Offset = "0x422ED0", VA = "0x180423ED0")]
get
{
return this.req.singleRequestExtensions;
}
}
// Token: 0x0600A1B0 RID: 41392 RVA: 0x0021ADDC File Offset: 0x00218FDC
[Token(Token = "0x600A1B0")]
[Address(RVA = "0x423ED0", Offset = "0x422ED0", VA = "0x180423ED0", Slot = "8")]
protected override X509Extensions GetX509Extensions()
{
return this.req.singleRequestExtensions;
}
// Token: 0x04006BD8 RID: 27608
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BD8")]
private Request req;
}
}
@@ -0,0 +1,107 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AAF RID: 6831
[Token(Token = "0x2001AAF")]
public class RespData : X509ExtensionBase
{
// Token: 0x0600A1B1 RID: 41393 RVA: 0x0021ADFC File Offset: 0x00218FFC
[Token(Token = "0x600A1B1")]
[Address(RVA = "0x681CA0", Offset = "0x680CA0", VA = "0x180681CA0")]
public RespData(ResponseData data)
{
this.data = data;
}
// Token: 0x170019BA RID: 6586
// (get) Token: 0x0600A1B2 RID: 41394 RVA: 0x0021AE18 File Offset: 0x00219018
[Token(Token = "0x170019BA")]
public int Version
{
[Token(Token = "0x600A1B2")]
[Address(RVA = "0xD05C70", Offset = "0xD04C70", VA = "0x180D05C70")]
get
{
int intValue = this.data.version.Value.IntValue;
return intValue + 1;
}
}
// Token: 0x0600A1B3 RID: 41395 RVA: 0x0021AE48 File Offset: 0x00219048
[Token(Token = "0x600A1B3")]
[Address(RVA = "0xD05A90", Offset = "0xD04A90", VA = "0x180D05A90")]
public RespID GetResponderId()
{
ResponderID responderID = this.data.responderID;
RespID respID;
respID.id = responderID;
return respID;
}
// Token: 0x170019BB RID: 6587
// (get) Token: 0x0600A1B4 RID: 41396 RVA: 0x0021AE70 File Offset: 0x00219070
[Token(Token = "0x170019BB")]
public DateTime ProducedAt
{
[Token(Token = "0x600A1B4")]
[Address(RVA = "0xD05C40", Offset = "0xD04C40", VA = "0x180D05C40")]
get
{
return this.data.producedAt.ToDateTime();
}
}
// Token: 0x0600A1B5 RID: 41397 RVA: 0x0021AE94 File Offset: 0x00219094
[Token(Token = "0x600A1B5")]
[Address(RVA = "0xD05B00", Offset = "0xD04B00", VA = "0x180D05B00")]
public SingleResp[] GetResponses()
{
Asn1Sequence responses = this.data.responses;
Asn1Encodable asn1Encodable;
SingleResp[] array = new SingleResp[asn1Encodable];
int num = 0;
if (num != array.Length)
{
Asn1SequenceParser parser = responses.Parser;
SingleResp singleResp;
SingleResponse singleResponse;
singleResp.resp = singleResponse;
num++;
array[0] = singleResp;
}
return array;
}
// Token: 0x170019BC RID: 6588
// (get) Token: 0x0600A1B6 RID: 41398 RVA: 0x0021AEE4 File Offset: 0x002190E4
[Token(Token = "0x170019BC")]
public X509Extensions ResponseExtensions
{
[Token(Token = "0x600A1B6")]
[Address(RVA = "0x5EF710", Offset = "0x5EE710", VA = "0x1805EF710")]
get
{
return this.data.responseExtensions;
}
}
// Token: 0x0600A1B7 RID: 41399 RVA: 0x0021AF04 File Offset: 0x00219104
[Token(Token = "0x600A1B7")]
[Address(RVA = "0x5EF710", Offset = "0x5EE710", VA = "0x1805EF710", Slot = "8")]
protected override X509Extensions GetX509Extensions()
{
return this.data.responseExtensions;
}
// Token: 0x04006BD9 RID: 27609
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BD9")]
internal readonly ResponseData data;
}
}
@@ -0,0 +1,81 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Security;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AB0 RID: 6832
[Token(Token = "0x2001AB0")]
public class RespID
{
// Token: 0x0600A1B8 RID: 41400 RVA: 0x0021AF24 File Offset: 0x00219124
[Token(Token = "0x600A1B8")]
[Address(RVA = "0x493D90", Offset = "0x492D90", VA = "0x180493D90")]
public RespID(ResponderID id)
{
this.id = id;
}
// Token: 0x0600A1B9 RID: 41401 RVA: 0x0021AF40 File Offset: 0x00219140
[Token(Token = "0x600A1B9")]
[Address(RVA = "0xD05ED0", Offset = "0xD04ED0", VA = "0x180D05ED0")]
public RespID(X509Name name)
{
ResponderID responderID = new ResponderID(name);
this.id = responderID;
}
// Token: 0x0600A1BA RID: 41402 RVA: 0x0021AF64 File Offset: 0x00219164
[Token(Token = "0x600A1BA")]
[Address(RVA = "0xD05D70", Offset = "0xD04D70", VA = "0x180D05D70")]
public RespID(AsymmetricKeyParameter publicKey)
{
byte[] octets = SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(publicKey).keyData.GetOctets();
DerOctetString derOctetString = new DerOctetString(DigestUtilities.CalculateDigest("SHA1", octets));
ResponderID responderID = new ResponderID(derOctetString);
this.id = responderID;
}
// Token: 0x0600A1BB RID: 41403 RVA: 0x0021AFC8 File Offset: 0x002191C8
[Token(Token = "0x600A1BB")]
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
public ResponderID ToAsn1Object()
{
return this.id;
}
// Token: 0x0600A1BC RID: 41404 RVA: 0x0021AFDC File Offset: 0x002191DC
[Token(Token = "0x600A1BC")]
[Address(RVA = "0xD05CB0", Offset = "0xD04CB0", VA = "0x180D05CB0", Slot = "0")]
public override bool Equals(object obj)
{
if (obj != this)
{
if (obj != 0 && obj != 0)
{
Asn1Object asn1Object = this.id.ToAsn1Object();
}
}
return true;
}
// Token: 0x0600A1BD RID: 41405 RVA: 0x0021B00C File Offset: 0x0021920C
[Token(Token = "0x600A1BD")]
[Address(RVA = "0x40F2B0", Offset = "0x40E2B0", VA = "0x18040F2B0", Slot = "2")]
public override int GetHashCode()
{
Asn1Object asn1Object = this.id.ToAsn1Object();
throw new NullReferenceException();
}
// Token: 0x04006BDA RID: 27610
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BDA")]
internal readonly ResponderID id;
}
}
@@ -0,0 +1,98 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AB1 RID: 6833
[Token(Token = "0x2001AB1")]
public class RevokedStatus : CertificateStatus
{
// Token: 0x0600A1BE RID: 41406 RVA: 0x0021B02C File Offset: 0x0021922C
[Token(Token = "0x600A1BE")]
[Address(RVA = "0xD064F0", Offset = "0xD054F0", VA = "0x180D064F0")]
public RevokedStatus(RevokedInfo info)
{
this.info = info;
}
// Token: 0x0600A1BF RID: 41407 RVA: 0x0021B048 File Offset: 0x00219248
[Token(Token = "0x600A1BF")]
[Address(RVA = "0xD06410", Offset = "0xD05410", VA = "0x180D06410")]
public RevokedStatus(DateTime revocationDate, int reason)
{
DerGeneralizedTime derGeneralizedTime = new DerGeneralizedTime(revocationDate);
CrlReason crlReason = new CrlReason(reason);
RevokedInfo revokedInfo = new RevokedInfo(derGeneralizedTime, crlReason);
this.info = revokedInfo;
}
// Token: 0x170019BD RID: 6589
// (get) Token: 0x0600A1C0 RID: 41408 RVA: 0x0021B078 File Offset: 0x00219278
[Token(Token = "0x170019BD")]
public DateTime RevocationTime
{
[Token(Token = "0x600A1C0")]
[Address(RVA = "0xD065F0", Offset = "0xD055F0", VA = "0x180D065F0")]
get
{
return this.info.revocationTime.ToDateTime();
}
}
// Token: 0x170019BE RID: 6590
// (get) Token: 0x0600A1C1 RID: 41409 RVA: 0x0021B09C File Offset: 0x0021929C
[Token(Token = "0x170019BE")]
public bool HasRevocationReason
{
[Token(Token = "0x600A1C1")]
[Address(RVA = "0xD026D0", Offset = "0xD016D0", VA = "0x180D026D0")]
get
{
RevokedInfo revokedInfo = this.info;
throw new NullReferenceException();
}
}
// Token: 0x170019BF RID: 6591
// (get) Token: 0x0600A1C2 RID: 41410 RVA: 0x0021B0B8 File Offset: 0x002192B8
[Token(Token = "0x170019BF")]
public int RevocationReason
{
[Token(Token = "0x600A1C2")]
[Address(RVA = "0xD06560", Offset = "0xD05560", VA = "0x180D06560")]
get
{
/*
An exception occurred when decompiling this method (0600A1C2)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp.RevokedStatus::get_RevocationReason()
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_22:
stloc:InvalidOperationException(var_1_2C, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("attempt to get a reason where none is available")))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x04006BDB RID: 27611
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BDB")]
internal readonly RevokedInfo info;
}
}
@@ -0,0 +1,107 @@
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Date;
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AB2 RID: 6834
[Token(Token = "0x2001AB2")]
public class SingleResp : X509ExtensionBase
{
// Token: 0x0600A1C3 RID: 41411 RVA: 0x0021B0F4 File Offset: 0x002192F4
[Token(Token = "0x600A1C3")]
[Address(RVA = "0x681CA0", Offset = "0x680CA0", VA = "0x180681CA0")]
public SingleResp(SingleResponse resp)
{
this.resp = resp;
}
// Token: 0x0600A1C4 RID: 41412 RVA: 0x0021B110 File Offset: 0x00219310
[Token(Token = "0x600A1C4")]
[Address(RVA = "0xD06620", Offset = "0xD05620", VA = "0x180D06620")]
public CertificateID GetCertID()
{
return new CertificateID(this.resp.certID);
}
// Token: 0x0600A1C5 RID: 41413 RVA: 0x0021B134 File Offset: 0x00219334
[Token(Token = "0x600A1C5")]
[Address(RVA = "0xD06690", Offset = "0xD05690", VA = "0x180D06690")]
public object GetCertStatus()
{
CertStatus certStatus = this.resp.certStatus;
int tagNo = certStatus.tagNo;
if (tagNo != 0)
{
if (tagNo != 1)
{
UnknownStatus unknownStatus = new UnknownStatus();
}
RevokedInfo instance = RevokedInfo.GetInstance(certStatus.value);
RevokedStatus revokedStatus;
revokedStatus.info = instance;
}
throw new NullReferenceException();
}
// Token: 0x170019C0 RID: 6592
// (get) Token: 0x0600A1C6 RID: 41414 RVA: 0x0021B180 File Offset: 0x00219380
[Token(Token = "0x170019C0")]
public DateTime ThisUpdate
{
[Token(Token = "0x600A1C6")]
[Address(RVA = "0xD06850", Offset = "0xD05850", VA = "0x180D06850")]
get
{
return this.resp.thisUpdate.ToDateTime();
}
}
// Token: 0x170019C1 RID: 6593
// (get) Token: 0x0600A1C7 RID: 41415 RVA: 0x0021B1A4 File Offset: 0x002193A4
[Token(Token = "0x170019C1")]
public DateTimeObject NextUpdate
{
[Token(Token = "0x600A1C7")]
[Address(RVA = "0xD067C0", Offset = "0xD057C0", VA = "0x180D067C0")]
get
{
DerGeneralizedTime nextUpdate = this.resp.nextUpdate;
if (nextUpdate == 0)
{
}
return new DateTimeObject(nextUpdate.ToDateTime());
}
}
// Token: 0x170019C2 RID: 6594
// (get) Token: 0x0600A1C8 RID: 41416 RVA: 0x0021B1D4 File Offset: 0x002193D4
[Token(Token = "0x170019C2")]
public X509Extensions SingleExtensions
{
[Token(Token = "0x600A1C8")]
[Address(RVA = "0x94AD80", Offset = "0x949D80", VA = "0x18094AD80")]
get
{
return this.resp.singleExtensions;
}
}
// Token: 0x0600A1C9 RID: 41417 RVA: 0x0021B1F4 File Offset: 0x002193F4
[Token(Token = "0x600A1C9")]
[Address(RVA = "0x94AD80", Offset = "0x949D80", VA = "0x18094AD80", Slot = "8")]
protected override X509Extensions GetX509Extensions()
{
return this.resp.singleExtensions;
}
// Token: 0x04006BDC RID: 27612
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4006BDC")]
internal readonly SingleResponse resp;
}
}
@@ -0,0 +1,17 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Ocsp
{
// Token: 0x02001AB3 RID: 6835
[Token(Token = "0x2001AB3")]
public class UnknownStatus : CertificateStatus
{
// Token: 0x0600A1CA RID: 41418 RVA: 0x0021B214 File Offset: 0x00219414
[Token(Token = "0x600A1CA")]
[Address(RVA = "0xD06880", Offset = "0xD05880", VA = "0x180D06880")]
public UnknownStatus()
{
}
}
}