276 lines
8.2 KiB
C#
276 lines
8.2 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.IO;
|
|
using System.Runtime.InteropServices;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Tsp;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
|
|
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.Tsp
|
|
{
|
|
// Token: 0x0200138C RID: 5004
|
|
[Token(Token = "0x200138C")]
|
|
[StructLayout(3)]
|
|
public class TimeStampRequest : X509ExtensionBase
|
|
{
|
|
// Token: 0x06007EBC RID: 32444 RVA: 0x001A8C60 File Offset: 0x001A6E60
|
|
[Token(Token = "0x6007EBC")]
|
|
[Address(RVA = "0x1C6A0A0", Offset = "0x1C68AA0", VA = "0x181C6A0A0")]
|
|
public TimeStampRequest(TimeStampReq req)
|
|
{
|
|
this.req = req;
|
|
X509Extensions x509Extensions = req.extensions;
|
|
this.extensions = x509Extensions;
|
|
}
|
|
|
|
// Token: 0x06007EBD RID: 32445 RVA: 0x001A8C90 File Offset: 0x001A6E90
|
|
[Token(Token = "0x6007EBD")]
|
|
[Address(RVA = "0x1C6A030", Offset = "0x1C68A30", VA = "0x181C6A030")]
|
|
public TimeStampRequest(byte[] req)
|
|
{
|
|
Asn1InputStream asn1InputStream = new Asn1InputStream(req);
|
|
}
|
|
|
|
// Token: 0x06007EBE RID: 32446 RVA: 0x001A8CA4 File Offset: 0x001A6EA4
|
|
[Token(Token = "0x6007EBE")]
|
|
[Address(RVA = "0x1C69FC0", Offset = "0x1C689C0", VA = "0x181C69FC0")]
|
|
public TimeStampRequest(Stream input)
|
|
{
|
|
Asn1InputStream asn1InputStream = new Asn1InputStream(input);
|
|
}
|
|
|
|
// Token: 0x06007EBF RID: 32447 RVA: 0x001A8CB8 File Offset: 0x001A6EB8
|
|
[Token(Token = "0x6007EBF")]
|
|
[Address(RVA = "0x1C69EB0", Offset = "0x1C688B0", VA = "0x181C69EB0")]
|
|
private TimeStampRequest(Asn1InputStream str)
|
|
{
|
|
Asn1Object asn1Object = str.ReadObject();
|
|
TimeStampReq instance = TimeStampReq.GetInstance(asn1Object);
|
|
this.req = instance;
|
|
}
|
|
|
|
// Token: 0x170014B8 RID: 5304
|
|
// (get) Token: 0x06007EC0 RID: 32448 RVA: 0x001A8CFC File Offset: 0x001A6EFC
|
|
[Token(Token = "0x170014B8")]
|
|
public int Version
|
|
{
|
|
[Token(Token = "0x6007EC0")]
|
|
[Address(RVA = "0x1C6A1F0", Offset = "0x1C68BF0", VA = "0x181C6A1F0")]
|
|
get
|
|
{
|
|
return this.req.version.Value.IntValue;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170014B9 RID: 5305
|
|
// (get) Token: 0x06007EC1 RID: 32449 RVA: 0x001A8D24 File Offset: 0x001A6F24
|
|
[Token(Token = "0x170014B9")]
|
|
public string MessageImprintAlgOid
|
|
{
|
|
[Token(Token = "0x6007EC1")]
|
|
[Address(RVA = "0x1C6A120", Offset = "0x1C68B20", VA = "0x181C6A120")]
|
|
get
|
|
{
|
|
Asn1Object asn1Object = this.req.messageImprint.hashAlgorithm.ToAsn1Object();
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06007EC2 RID: 32450 RVA: 0x001A8D4C File Offset: 0x001A6F4C
|
|
[Token(Token = "0x6007EC2")]
|
|
[Address(RVA = "0x1C69900", Offset = "0x1C68300", VA = "0x181C69900")]
|
|
public byte[] GetMessageImprintDigest()
|
|
{
|
|
return this.req.messageImprint.hashedMessage;
|
|
}
|
|
|
|
// Token: 0x170014BA RID: 5306
|
|
// (get) Token: 0x06007EC3 RID: 32451 RVA: 0x001A8D70 File Offset: 0x001A6F70
|
|
[Token(Token = "0x170014BA")]
|
|
public string ReqPolicy
|
|
{
|
|
[Token(Token = "0x6007EC3")]
|
|
[Address(RVA = "0x1C6A1B0", Offset = "0x1C68BB0", VA = "0x181C6A1B0")]
|
|
get
|
|
{
|
|
DerObjectIdentifier tsaPolicy = this.req.tsaPolicy;
|
|
if (tsaPolicy == 0)
|
|
{
|
|
}
|
|
return tsaPolicy.identifier;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170014BB RID: 5307
|
|
// (get) Token: 0x06007EC4 RID: 32452 RVA: 0x001A8D9C File Offset: 0x001A6F9C
|
|
[Token(Token = "0x170014BB")]
|
|
public BigInteger Nonce
|
|
{
|
|
[Token(Token = "0x6007EC4")]
|
|
[Address(RVA = "0x1C6A170", Offset = "0x1C68B70", VA = "0x181C6A170")]
|
|
get
|
|
{
|
|
DerInteger nonce = this.req.nonce;
|
|
if (nonce == 0)
|
|
{
|
|
}
|
|
return nonce.Value;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170014BC RID: 5308
|
|
// (get) Token: 0x06007EC5 RID: 32453 RVA: 0x001A8DC8 File Offset: 0x001A6FC8
|
|
[Token(Token = "0x170014BC")]
|
|
public bool CertReq
|
|
{
|
|
[Token(Token = "0x6007EC5")]
|
|
[Address(RVA = "0x1C6A0E0", Offset = "0x1C68AE0", VA = "0x181C6A0E0")]
|
|
get
|
|
{
|
|
DerBoolean certReq = this.req.certReq;
|
|
if (certReq == 0)
|
|
{
|
|
}
|
|
return certReq.IsTrue;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06007EC6 RID: 32454 RVA: 0x001A8DF4 File Offset: 0x001A6FF4
|
|
[Token(Token = "0x6007EC6")]
|
|
[Address(RVA = "0x1C69930", Offset = "0x1C68330", VA = "0x181C69930")]
|
|
public void Validate(IList algorithms, IList policies, IList extensions)
|
|
{
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
if (this.req.messageImprint.hashAlgorithm.ToAsn1Object() != 0)
|
|
{
|
|
if (policies != 0)
|
|
{
|
|
TimeStampReq timeStampReq = this.req;
|
|
DerObjectIdentifier tsaPolicy = timeStampReq.tsaPolicy;
|
|
if (tsaPolicy != 0 && tsaPolicy.identifier != 0 && timeStampReq == 0)
|
|
{
|
|
goto IL_B3;
|
|
}
|
|
}
|
|
X509Extensions x509Extensions = this.req.extensions;
|
|
if (x509Extensions == 0 || extensions == 0)
|
|
{
|
|
break;
|
|
}
|
|
IEnumerable extensionOids = x509Extensions.ExtensionOids;
|
|
if (extensionOids != 0 && extensionOids == 0)
|
|
{
|
|
goto IL_C4;
|
|
}
|
|
if (extensionOids != 0)
|
|
{
|
|
}
|
|
if (num != -1)
|
|
{
|
|
}
|
|
if (num == 0)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
Asn1Object asn1Object = this.req.messageImprint.hashAlgorithm.ToAsn1Object();
|
|
IDictionary digestLengths = TspUtil.digestLengths;
|
|
IDictionary digestLengths2 = TspUtil.digestLengths;
|
|
int length = this.req.messageImprint.hashedMessage.Length;
|
|
return;
|
|
IL_B3:
|
|
TspValidationException ex = new TspValidationException("request contains unknown policy", 256);
|
|
IL_C4:
|
|
TspValidationException ex2 = new TspValidationException("request contains unknown extension", 8388608);
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06007EC7 RID: 32455 RVA: 0x001A8EE4 File Offset: 0x001A70E4
|
|
[Token(Token = "0x6007EC7")]
|
|
[Address(RVA = "0x53BEA0", Offset = "0x53A8A0", VA = "0x18053BEA0")]
|
|
public byte[] GetEncoded()
|
|
{
|
|
return this.req.GetEncoded();
|
|
}
|
|
|
|
// Token: 0x170014BD RID: 5309
|
|
// (get) Token: 0x06007EC8 RID: 32456 RVA: 0x001A8F04 File Offset: 0x001A7104
|
|
[Token(Token = "0x170014BD")]
|
|
internal X509Extensions Extensions
|
|
{
|
|
[Token(Token = "0x6007EC8")]
|
|
[Address(RVA = "0xA4BA40", Offset = "0xA4A440", VA = "0x180A4BA40")]
|
|
get
|
|
{
|
|
return this.req.extensions;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170014BE RID: 5310
|
|
// (get) Token: 0x06007EC9 RID: 32457 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x170014BE")]
|
|
public virtual bool HasExtensions
|
|
{
|
|
[Token(Token = "0x6007EC9")]
|
|
[Address(RVA = "0x71D270", Offset = "0x71BC70", VA = "0x18071D270", Slot = "13")]
|
|
get
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
}
|
|
|
|
// Token: 0x06007ECA RID: 32458 RVA: 0x001A8F24 File Offset: 0x001A7124
|
|
[Token(Token = "0x6007ECA")]
|
|
[Address(RVA = "0x1C698E0", Offset = "0x1C682E0", VA = "0x181C698E0", Slot = "14")]
|
|
public virtual X509Extension GetExtension(DerObjectIdentifier oid)
|
|
{
|
|
X509Extensions x509Extensions = this.extensions;
|
|
if (x509Extensions == 0)
|
|
{
|
|
}
|
|
return x509Extensions.GetExtension(oid);
|
|
}
|
|
|
|
// Token: 0x06007ECB RID: 32459 RVA: 0x001A8F48 File Offset: 0x001A7148
|
|
[Token(Token = "0x6007ECB")]
|
|
[Address(RVA = "0x1C697B0", Offset = "0x1C681B0", VA = "0x181C697B0", Slot = "15")]
|
|
public virtual IList GetExtensionOids()
|
|
{
|
|
X509Extensions x509Extensions = this.extensions;
|
|
if (x509Extensions != 0)
|
|
{
|
|
IList list = Platform.CreateArrayList(x509Extensions.GetExtensionOids());
|
|
UnmodifiableListProxy unmodifiableListProxy;
|
|
unmodifiableListProxy.l = list;
|
|
}
|
|
return TspUtil.EmptyList;
|
|
}
|
|
|
|
// Token: 0x06007ECC RID: 32460 RVA: 0x001A8F78 File Offset: 0x001A7178
|
|
[Token(Token = "0x6007ECC")]
|
|
[Address(RVA = "0xA4BA40", Offset = "0xA4A440", VA = "0x180A4BA40", Slot = "8")]
|
|
protected override X509Extensions GetX509Extensions()
|
|
{
|
|
return this.req.extensions;
|
|
}
|
|
|
|
// Token: 0x04005A6C RID: 23148
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4005A6C")]
|
|
private TimeStampReq req;
|
|
|
|
// Token: 0x04005A6D RID: 23149
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4005A6D")]
|
|
private X509Extensions extensions;
|
|
}
|
|
}
|