234 lines
7.4 KiB
C#
234 lines
7.4 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using System.Text;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Utilities;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.X509
|
|
{
|
|
// Token: 0x02001329 RID: 4905
|
|
[Token(Token = "0x2001329")]
|
|
[StructLayout(3)]
|
|
public class X509CrlEntry : X509ExtensionBase
|
|
{
|
|
// Token: 0x06007B1E RID: 31518 RVA: 0x00199E74 File Offset: 0x00198074
|
|
[Token(Token = "0x6007B1E")]
|
|
[Address(RVA = "0x533790", Offset = "0x532190", VA = "0x180533790")]
|
|
public X509CrlEntry(CrlEntry c)
|
|
{
|
|
this.c = c;
|
|
X509Name x509Name = this.loadCertificateIssuer();
|
|
this.certificateIssuer = x509Name;
|
|
}
|
|
|
|
// Token: 0x06007B1F RID: 31519 RVA: 0x00199E9C File Offset: 0x0019809C
|
|
[Token(Token = "0x6007B1F")]
|
|
[Address(RVA = "0x5337D0", Offset = "0x5321D0", VA = "0x1805337D0")]
|
|
public X509CrlEntry(CrlEntry c, bool isIndirect, X509Name previousCertificateIssuer)
|
|
{
|
|
this.c = c;
|
|
this.isIndirect = isIndirect;
|
|
this.previousCertificateIssuer = previousCertificateIssuer;
|
|
X509Name x509Name = this.loadCertificateIssuer();
|
|
this.certificateIssuer = x509Name;
|
|
}
|
|
|
|
// Token: 0x06007B20 RID: 31520 RVA: 0x00199ED4 File Offset: 0x001980D4
|
|
[Token(Token = "0x6007B20")]
|
|
[Address(RVA = "0x5338C0", Offset = "0x5322C0", VA = "0x1805338C0")]
|
|
private X509Name loadCertificateIssuer()
|
|
{
|
|
if (this.isIndirect)
|
|
{
|
|
if (this.GetCriticalExtensionOids() != 0)
|
|
{
|
|
Asn1Object asn1Object;
|
|
GeneralName[] names = GeneralNames.GetInstance(asn1Object).GetNames();
|
|
int num = 0;
|
|
int length = names.Length;
|
|
if (num < length)
|
|
{
|
|
GeneralName generalName = names[num];
|
|
if (generalName.tag != 4)
|
|
{
|
|
num++;
|
|
}
|
|
return X509Name.GetInstance(generalName.obj);
|
|
}
|
|
}
|
|
}
|
|
return this.previousCertificateIssuer;
|
|
}
|
|
|
|
// Token: 0x06007B21 RID: 31521 RVA: 0x00199F60 File Offset: 0x00198160
|
|
[Token(Token = "0x6007B21")]
|
|
[Address(RVA = "0x3C1230", Offset = "0x3BFC30", VA = "0x1803C1230")]
|
|
public X509Name GetCertificateIssuer()
|
|
{
|
|
return this.certificateIssuer;
|
|
}
|
|
|
|
// Token: 0x06007B22 RID: 31522 RVA: 0x00199F74 File Offset: 0x00198174
|
|
[Token(Token = "0x6007B22")]
|
|
[Address(RVA = "0x532FB0", Offset = "0x5319B0", VA = "0x180532FB0", Slot = "8")]
|
|
protected override X509Extensions GetX509Extensions()
|
|
{
|
|
return this.c.Extensions;
|
|
}
|
|
|
|
// Token: 0x06007B23 RID: 31523 RVA: 0x00199F94 File Offset: 0x00198194
|
|
[Token(Token = "0x6007B23")]
|
|
[Address(RVA = "0x532F00", Offset = "0x531900", VA = "0x180532F00")]
|
|
public byte[] GetEncoded()
|
|
{
|
|
return this.c.GetDerEncoded();
|
|
}
|
|
|
|
// Token: 0x17001415 RID: 5141
|
|
// (get) Token: 0x06007B24 RID: 31524 RVA: 0x00199FB8 File Offset: 0x001981B8
|
|
[Token(Token = "0x17001415")]
|
|
public BigInteger SerialNumber
|
|
{
|
|
[Token(Token = "0x6007B24")]
|
|
[Address(RVA = "0x533890", Offset = "0x532290", VA = "0x180533890")]
|
|
get
|
|
{
|
|
return this.c.userCertificate.Value;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001416 RID: 5142
|
|
// (get) Token: 0x06007B25 RID: 31525 RVA: 0x00199FDC File Offset: 0x001981DC
|
|
[Token(Token = "0x17001416")]
|
|
public DateTime RevocationDate
|
|
{
|
|
[Token(Token = "0x6007B25")]
|
|
[Address(RVA = "0x533860", Offset = "0x532260", VA = "0x180533860")]
|
|
get
|
|
{
|
|
return this.c.revocationDate.ToDateTime();
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001417 RID: 5143
|
|
// (get) Token: 0x06007B26 RID: 31526 RVA: 0x0019A000 File Offset: 0x00198200
|
|
[Token(Token = "0x17001417")]
|
|
public bool HasExtensions
|
|
{
|
|
[Token(Token = "0x6007B26")]
|
|
[Address(RVA = "0x533830", Offset = "0x532230", VA = "0x180533830")]
|
|
get
|
|
{
|
|
return this.c.Extensions != 0;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06007B27 RID: 31527 RVA: 0x0019A024 File Offset: 0x00198224
|
|
[Token(Token = "0x6007B27")]
|
|
[Address(RVA = "0x532FD0", Offset = "0x5319D0", VA = "0x180532FD0", Slot = "3")]
|
|
public override string ToString()
|
|
{
|
|
StringBuilder stringBuilder;
|
|
string newLine;
|
|
StringBuilder stringBuilder9;
|
|
do
|
|
{
|
|
stringBuilder = new StringBuilder();
|
|
newLine = Platform.NewLine;
|
|
StringBuilder stringBuilder2 = stringBuilder.Append(" userCertificate: ");
|
|
BigInteger value = this.c.userCertificate.Value;
|
|
StringBuilder stringBuilder3 = stringBuilder2.Append(value).Append(newLine);
|
|
StringBuilder stringBuilder4 = stringBuilder.Append(" revocationDate: ");
|
|
DateTime dateTime = this.c.revocationDate.ToDateTime();
|
|
StringBuilder stringBuilder5 = stringBuilder4.Append(dateTime).Append(newLine);
|
|
StringBuilder stringBuilder6 = stringBuilder.Append(" certificateIssuer: ");
|
|
X509Name x509Name = this.certificateIssuer;
|
|
StringBuilder stringBuilder7 = stringBuilder6.Append(x509Name).Append(newLine);
|
|
X509Extensions extensions = this.c.Extensions;
|
|
if (extensions == 0 || extensions.ExtensionOids == 0)
|
|
{
|
|
goto IL_1E1;
|
|
}
|
|
StringBuilder stringBuilder8 = stringBuilder.Append(" crlEntryExtensions:");
|
|
int num = 0;
|
|
stringBuilder9 = stringBuilder8.Append(newLine);
|
|
int num2 = 0;
|
|
if (num2 < num)
|
|
{
|
|
num2 += num2;
|
|
num2++;
|
|
}
|
|
if (stringBuilder9 == 0)
|
|
{
|
|
}
|
|
}
|
|
while (stringBuilder9 == 0);
|
|
X509Extension x509Extension;
|
|
if (x509Extension.value == 0)
|
|
{
|
|
StringBuilder stringBuilder10 = stringBuilder.Append(newLine);
|
|
}
|
|
StringBuilder stringBuilder11 = stringBuilder.Append(" critical(");
|
|
bool critical = x509Extension.critical;
|
|
StringBuilder stringBuilder12 = stringBuilder11.Append(critical).Append(") ");
|
|
StringBuilder stringBuilder13 = stringBuilder.Append(" value = ");
|
|
Asn1Object asn1Object;
|
|
string text = Asn1Dump.DumpAsString(asn1Object);
|
|
StringBuilder stringBuilder14 = stringBuilder13.Append(text);
|
|
StringBuilder stringBuilder15 = stringBuilder13.Append("Certificate issuer: ");
|
|
if (asn1Object == 0)
|
|
{
|
|
}
|
|
if (asn1Object == 0)
|
|
{
|
|
throw new NullReferenceException();
|
|
}
|
|
GeneralNames instance = GeneralNames.GetInstance(asn1Object);
|
|
StringBuilder stringBuilder16 = stringBuilder15.Append(instance);
|
|
CrlReason crlReason = new CrlReason(DerEnumerated.GetInstance(asn1Object));
|
|
StringBuilder stringBuilder17 = stringBuilder.Append(crlReason);
|
|
StringBuilder stringBuilder18 = stringBuilder.Append(newLine);
|
|
StringBuilder stringBuilder19 = stringBuilder.Append(" value = ").Append("*****");
|
|
int num3 = 0;
|
|
StringBuilder stringBuilder20 = stringBuilder19.Append(newLine);
|
|
int num4 = 0;
|
|
if (num4 < num3)
|
|
{
|
|
num4 += num4;
|
|
num4++;
|
|
}
|
|
while (num4 != 0)
|
|
{
|
|
}
|
|
IL_1E1:
|
|
int num5 = stringBuilder.GetHashCode();
|
|
num5 += 19;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0400584E RID: 22606
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400584E")]
|
|
private CrlEntry c;
|
|
|
|
// Token: 0x0400584F RID: 22607
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400584F")]
|
|
private bool isIndirect;
|
|
|
|
// Token: 0x04005850 RID: 22608
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4005850")]
|
|
private X509Name previousCertificateIssuer;
|
|
|
|
// Token: 0x04005851 RID: 22609
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4005851")]
|
|
private X509Name certificateIssuer;
|
|
}
|
|
}
|