m
This commit is contained in:
@@ -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;
|
||||
}
|
||||
}
|
||||
+377
@@ -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()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user