using System; using System.Collections; using System.Runtime.InteropServices; 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: 0x020013EA RID: 5098 [Token(Token = "0x20013EA")] [StructLayout(3)] public class OcspReqGenerator { // Token: 0x060081E5 RID: 33253 RVA: 0x001B9E64 File Offset: 0x001B8064 [Token(Token = "0x60081E5")] [Address(RVA = "0xC20A30", Offset = "0xC1F430", VA = "0x180C20A30")] public void AddRequest(CertificateID certId) { IList list = this.list; OcspReqGenerator.RequestObject requestObject; requestObject.certId = certId; requestObject.extensions = (ulong)0L; throw new NullReferenceException(); } // Token: 0x060081E6 RID: 33254 RVA: 0x001B9E90 File Offset: 0x001B8090 [Token(Token = "0x60081E6")] [Address(RVA = "0xC20990", Offset = "0xC1F390", VA = "0x180C20990")] public void AddRequest(CertificateID certId, X509Extensions singleRequestExtensions) { IList list = this.list; OcspReqGenerator.RequestObject requestObject; requestObject.certId = certId; requestObject.extensions = singleRequestExtensions; throw new NullReferenceException(); } // Token: 0x060081E7 RID: 33255 RVA: 0x001B9EB8 File Offset: 0x001B80B8 [Token(Token = "0x60081E7")] [Address(RVA = "0xC21580", Offset = "0xC1FF80", VA = "0x180C21580")] public void SetRequestorName(X509Name requestorName) { GeneralName generalName = new GeneralName(4, requestorName); this.requestorName = generalName; } // Token: 0x060081E8 RID: 33256 RVA: 0x001B9ED4 File Offset: 0x001B80D4 [Token(Token = "0x60081E8")] [Address(RVA = "0x3C1280", Offset = "0x3BFC80", VA = "0x1803C1280")] public void SetRequestorName(GeneralName requestorName) { this.requestorName = requestorName; } // Token: 0x060081E9 RID: 33257 RVA: 0x001B9EE8 File Offset: 0x001B80E8 [Token(Token = "0x60081E9")] [Address(RVA = "0x3C1260", Offset = "0x3BFC60", VA = "0x1803C1260")] public void SetRequestExtensions(X509Extensions requestExtensions) { this.requestExtensions = requestExtensions; } // Token: 0x060081EA RID: 33258 RVA: 0x001B9EFC File Offset: 0x001B80FC [Token(Token = "0x60081EA")] [Address(RVA = "0xC20AC0", Offset = "0xC1F4C0", VA = "0x180C20AC0")] 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 == -1 || "{il2cpp array field local12->}" != (ulong)111L) && num != 0) { goto IL_140; } GeneralName generalName = this.requestorName; derSequence = new DerSequence(asn1EncodableVector); X509Extensions x509Extensions = this.requestExtensions; tbsRequest = new TbsRequest(generalName, derSequence, x509Extensions); if (tbsRequest == 0) { goto IL_110; } 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(); } Asn1EncodableVector asn1EncodableVector2; if (num2 != chain.Length) { Asn1Encodable[] array2 = new Asn1Encodable[1]; AsymmetricKeyParameter publicKey = chain[num2].GetPublicKey(); Asn1Object asn1Object; X509CertificateStructure instance = X509CertificateStructure.GetInstance(asn1Object); if (instance != 0) { } array2[0] = instance; asn1EncodableVector2.Add(array2); num2++; } DerSequence derSequence2 = new DerSequence(asn1EncodableVector2); IL_110: OcspReq ocspReq; OcspRequest ocspRequest; ocspReq.req = ocspRequest; return ocspReq; IL_140: throw new NullReferenceException(); } // Token: 0x060081EB RID: 33259 RVA: 0x001BA074 File Offset: 0x001B8274 [Token(Token = "0x60081EB")] [Address(RVA = "0xC21550", Offset = "0xC1FF50", VA = "0x180C21550")] public OcspReq Generate() { OcspReq ocspReq; return ocspReq; } // Token: 0x060081EC RID: 33260 RVA: 0x001BA084 File Offset: 0x001B8284 [Token(Token = "0x60081EC")] [Address(RVA = "0xC212A0", Offset = "0xC1FCA0", VA = "0x180C212A0")] public OcspReq Generate(string signingAlgorithm, AsymmetricKeyParameter privateKey, X509Certificate[] chain) { int num = 0; return this.Generate(signingAlgorithm, privateKey, chain, num); } // Token: 0x060081ED RID: 33261 RVA: 0x001BA0A0 File Offset: 0x001B82A0 [Token(Token = "0x60081ED")] [Address(RVA = "0xC212C0", Offset = "0xC1FCC0", VA = "0x180C212C0")] 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: 0x17001518 RID: 5400 // (get) Token: 0x060081EE RID: 33262 RVA: 0x001BA0FC File Offset: 0x001B82FC [Token(Token = "0x17001518")] public IEnumerable SignatureAlgNames { [Token(Token = "0x60081EE")] [Address(RVA = "0xC216A0", Offset = "0xC200A0", VA = "0x180C216A0")] get { return OcspUtilities.AlgNames; } } // Token: 0x060081EF RID: 33263 RVA: 0x001BA110 File Offset: 0x001B8310 [Token(Token = "0x60081EF")] [Address(RVA = "0xC21640", Offset = "0xC20040", VA = "0x180C21640")] public OcspReqGenerator() { IList list = Platform.CreateArrayList(); this.list = list; base..ctor(); } // Token: 0x04005BC7 RID: 23495 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4005BC7")] private IList list; // Token: 0x04005BC8 RID: 23496 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4005BC8")] private GeneralName requestorName; // Token: 0x04005BC9 RID: 23497 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4005BC9")] private X509Extensions requestExtensions; // Token: 0x020013EB RID: 5099 [Token(Token = "0x20013EB")] private class RequestObject { // Token: 0x060081F0 RID: 33264 RVA: 0x001BA134 File Offset: 0x001B8334 [Token(Token = "0x60081F0")] [Address(RVA = "0x3C39C0", Offset = "0x3C23C0", VA = "0x1803C39C0")] public RequestObject(CertificateID certId, X509Extensions extensions) { this.certId = certId; this.extensions = extensions; } // Token: 0x060081F1 RID: 33265 RVA: 0x001BA158 File Offset: 0x001B8358 [Token(Token = "0x60081F1")] [Address(RVA = "0xC24120", Offset = "0xC22B20", VA = "0x180C24120")] public Request ToRequest() { CertID id = this.certId.id; X509Extensions x509Extensions = this.extensions; return new Request(id, x509Extensions); } // Token: 0x04005BCA RID: 23498 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4005BCA")] internal CertificateID certId; // Token: 0x04005BCB RID: 23499 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4005BCB")] internal X509Extensions extensions; } } }