a
This commit is contained in:
+135
@@ -0,0 +1,135 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
|
||||
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
|
||||
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
|
||||
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.Pkix
|
||||
{
|
||||
// Token: 0x0200197C RID: 6524
|
||||
[Token(Token = "0x200197C")]
|
||||
public class PkixCertPathValidator
|
||||
{
|
||||
// Token: 0x06009B23 RID: 39715 RVA: 0x002025FC File Offset: 0x002007FC
|
||||
[Token(Token = "0x6009B23")]
|
||||
[Address(RVA = "0x1CCFD20", Offset = "0x1CCEB20", VA = "0x181CCFD20", Slot = "4")]
|
||||
public virtual PkixCertPathValidatorResult Validate(PkixCertPath certPath, PkixParameters paramsPkix)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
byte[] array;
|
||||
if (array != 0)
|
||||
{
|
||||
if (array == 0)
|
||||
{
|
||||
}
|
||||
int num = 0;
|
||||
TrustAnchor trustAnchor;
|
||||
if (array != 0 && trustAnchor != 0)
|
||||
{
|
||||
int num2 = 0;
|
||||
PkixCertPathValidator.CheckCertificate(trustAnchor.trustedCert);
|
||||
IList[] array2 = new IList[num2];
|
||||
if (num < array2.Length)
|
||||
{
|
||||
break;
|
||||
}
|
||||
HashSet hashSet = new HashSet();
|
||||
IList list = Platform.CreateArrayList();
|
||||
HashSet hashSet2 = new HashSet();
|
||||
string any_POLICY = Rfc3280CertPathUtilities.ANY_POLICY;
|
||||
int num3;
|
||||
ulong num4;
|
||||
PkixPolicyNode pkixPolicyNode = new PkixPolicyNode(list, num3, hashSet, num, hashSet2, any_POLICY, num4 != 0UL);
|
||||
num3 = 0;
|
||||
IList list2 = array2[0];
|
||||
PkixNameConstraintValidator pkixNameConstraintValidator = new PkixNameConstraintValidator();
|
||||
HashSet hashSet3 = new HashSet();
|
||||
pkixNameConstraintValidator.excludedSubtreesDN = hashSet3;
|
||||
HashSet hashSet4 = new HashSet();
|
||||
pkixNameConstraintValidator.excludedSubtreesDNS = hashSet4;
|
||||
HashSet hashSet5 = new HashSet();
|
||||
pkixNameConstraintValidator.excludedSubtreesEmail = hashSet5;
|
||||
HashSet hashSet6 = new HashSet();
|
||||
pkixNameConstraintValidator.excludedSubtreesURI = hashSet6;
|
||||
HashSet hashSet7 = new HashSet();
|
||||
pkixNameConstraintValidator.excludedSubtreesIP = hashSet7;
|
||||
HashSet hashSet8 = new HashSet();
|
||||
if (hashSet7 == 0)
|
||||
{
|
||||
}
|
||||
hashSet7.Clear();
|
||||
PkixPolicyNode pkixPolicyNode2;
|
||||
if (pkixPolicyNode2 == (ulong)1L && pkixPolicyNode2 == 0)
|
||||
{
|
||||
goto IL_1F3;
|
||||
}
|
||||
int num5;
|
||||
if (num5 == 0)
|
||||
{
|
||||
HashSet hashSet9 = new HashSet();
|
||||
}
|
||||
DerObjectIdentifier keyUsage = X509Extensions.KeyUsage;
|
||||
DerObjectIdentifier certificatePolicies = X509Extensions.CertificatePolicies;
|
||||
DerObjectIdentifier policyMappings = X509Extensions.PolicyMappings;
|
||||
DerObjectIdentifier inhibitAnyPolicy = X509Extensions.InhibitAnyPolicy;
|
||||
DerObjectIdentifier issuingDistributionPoint = X509Extensions.IssuingDistributionPoint;
|
||||
DerObjectIdentifier deltaCrlIndicator = X509Extensions.DeltaCrlIndicator;
|
||||
DerObjectIdentifier policyConstraints = X509Extensions.PolicyConstraints;
|
||||
DerObjectIdentifier basicConstraints = X509Extensions.BasicConstraints;
|
||||
DerObjectIdentifier subjectAlternativeName = X509Extensions.SubjectAlternativeName;
|
||||
DerObjectIdentifier nameConstraints = X509Extensions.NameConstraints;
|
||||
AsymmetricKeyParameter asymmetricKeyParameter;
|
||||
AlgorithmIdentifier algorithmIdentifier = PkixCertPathValidatorUtilities.GetAlgorithmIdentifier(asymmetricKeyParameter);
|
||||
int num6;
|
||||
if (num6 == 0)
|
||||
{
|
||||
HashSet hashSet10 = new HashSet();
|
||||
}
|
||||
DerObjectIdentifier keyUsage2 = X509Extensions.KeyUsage;
|
||||
DerObjectIdentifier certificatePolicies2 = X509Extensions.CertificatePolicies;
|
||||
DerObjectIdentifier policyMappings2 = X509Extensions.PolicyMappings;
|
||||
DerObjectIdentifier inhibitAnyPolicy2 = X509Extensions.InhibitAnyPolicy;
|
||||
DerObjectIdentifier issuingDistributionPoint2 = X509Extensions.IssuingDistributionPoint;
|
||||
DerObjectIdentifier deltaCrlIndicator2 = X509Extensions.DeltaCrlIndicator;
|
||||
DerObjectIdentifier policyConstraints2 = X509Extensions.PolicyConstraints;
|
||||
DerObjectIdentifier basicConstraints2 = X509Extensions.BasicConstraints;
|
||||
DerObjectIdentifier subjectAlternativeName2 = X509Extensions.SubjectAlternativeName;
|
||||
DerObjectIdentifier nameConstraints2 = X509Extensions.NameConstraints;
|
||||
DerObjectIdentifier crlDistributionPoints = X509Extensions.CrlDistributionPoints;
|
||||
PkixPolicyNode pkixPolicyNode3;
|
||||
if (pkixPolicyNode3 != 0)
|
||||
{
|
||||
PkixCertPathValidatorResult pkixCertPathValidatorResult;
|
||||
return pkixCertPathValidatorResult;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
IList list3 = Platform.CreateArrayList();
|
||||
throw new ArrayTypeMismatchException();
|
||||
IL_1F3:
|
||||
throw new NullReferenceException();
|
||||
}
|
||||
|
||||
// Token: 0x06009B24 RID: 39716 RVA: 0x00202804 File Offset: 0x00200A04
|
||||
[Token(Token = "0x6009B24")]
|
||||
[Address(RVA = "0x1CCFC60", Offset = "0x1CCEA60", VA = "0x181CCFC60")]
|
||||
internal static void CheckCertificate(X509Certificate cert)
|
||||
{
|
||||
Asn1OctetString asn1OctetString;
|
||||
TbsCertificateStructure instance = TbsCertificateStructure.GetInstance(asn1OctetString.str);
|
||||
}
|
||||
|
||||
// Token: 0x06009B25 RID: 39717 RVA: 0x0020282C File Offset: 0x00200A2C
|
||||
[Token(Token = "0x6009B25")]
|
||||
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
||||
public PkixCertPathValidator()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user