using System; using System.Collections; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls { // Token: 0x02001B18 RID: 6936 [Token(Token = "0x2001B18")] public class DefaultTlsDHVerifier : TlsDHVerifier { // Token: 0x0600AC7C RID: 44156 RVA: 0x002582AC File Offset: 0x002564AC [Token(Token = "0x600AC7C")] [Address(RVA = "0x18AE1A0", Offset = "0x18ACFA0", VA = "0x1818AE1A0")] private static void AddDefaultGroup(DHParameters dhParameters) { IList defaultGroups = DefaultTlsDHVerifier.DefaultGroups; throw new NullReferenceException(); } // Token: 0x0600AC7D RID: 44157 RVA: 0x002582C4 File Offset: 0x002564C4 [Token(Token = "0x600AC7D")] [Address(RVA = "0x18AE530", Offset = "0x18AD330", VA = "0x1818AE530")] static DefaultTlsDHVerifier() { DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc7919_ffdhe2048); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc7919_ffdhe3072); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc7919_ffdhe4096); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc7919_ffdhe6144); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc7919_ffdhe8192); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc3526_1536); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc3526_2048); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc3526_3072); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc3526_4096); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc3526_6144); DefaultTlsDHVerifier.AddDefaultGroup(DHStandardGroups.rfc3526_8192); } // Token: 0x0600AC7E RID: 44158 RVA: 0x0025834C File Offset: 0x0025654C [Token(Token = "0x600AC7E")] [Address(RVA = "0x18AE780", Offset = "0x18AD580", VA = "0x1818AE780")] public DefaultTlsDHVerifier() { int defaultMinimumPrimeBits = DefaultTlsDHVerifier.DefaultMinimumPrimeBits; IList defaultGroups = DefaultTlsDHVerifier.DefaultGroups; base..ctor(); this.mGroups = defaultGroups; this.mMinimumPrimeBits = defaultMinimumPrimeBits; } // Token: 0x0600AC7F RID: 44159 RVA: 0x0025837C File Offset: 0x0025657C [Token(Token = "0x600AC7F")] [Address(RVA = "0x18AE6F0", Offset = "0x18AD4F0", VA = "0x1818AE6F0")] public DefaultTlsDHVerifier(int minimumPrimeBits) { IList defaultGroups = DefaultTlsDHVerifier.DefaultGroups; base..ctor(); this.mGroups = defaultGroups; this.mMinimumPrimeBits = minimumPrimeBits; } // Token: 0x0600AC80 RID: 44160 RVA: 0x002583A4 File Offset: 0x002565A4 [Token(Token = "0x600AC80")] [Address(RVA = "0x4F34F0", Offset = "0x4F22F0", VA = "0x1804F34F0")] public DefaultTlsDHVerifier(IList groups, int minimumPrimeBits) { this.mGroups = groups; this.mMinimumPrimeBits = minimumPrimeBits; } // Token: 0x0600AC81 RID: 44161 RVA: 0x002583C8 File Offset: 0x002565C8 [Token(Token = "0x600AC81")] [Address(RVA = "0x18AE150", Offset = "0x18ACF50", VA = "0x1818AE150", Slot = "5")] public virtual bool Accept(DHParameters dhParameters) { bool flag = this.CheckGroup(dhParameters); if (!flag) { return flag; } return ((TlsDHVerifier)this).Accept(dhParameters); } // Token: 0x17001B59 RID: 7001 // (get) Token: 0x0600AC82 RID: 44162 RVA: 0x002583EC File Offset: 0x002565EC [Token(Token = "0x17001B59")] public virtual int MinimumPrimeBits { [Token(Token = "0x600AC82")] [Address(RVA = "0x40B720", Offset = "0x40A520", VA = "0x18040B720", Slot = "6")] get { return this.mMinimumPrimeBits; } } // Token: 0x0600AC83 RID: 44163 RVA: 0x00258400 File Offset: 0x00256600 [Token(Token = "0x600AC83")] [Address(RVA = "0x18AE220", Offset = "0x18AD020", VA = "0x1818AE220", Slot = "7")] protected virtual bool AreGroupsEqual(DHParameters a, DHParameters b) { if (a == b) { return true; } bool flag; if (!flag) { return flag; } return flag; } // Token: 0x0600AC84 RID: 44164 RVA: 0x00258420 File Offset: 0x00256620 [Token(Token = "0x600AC84")] [Address(RVA = "0x18AE2C0", Offset = "0x18AD0C0", VA = "0x1818AE2C0", Slot = "8")] protected virtual bool AreParametersEqual(BigInteger a, BigInteger b) { if (a == b) { return true; } throw new NullReferenceException(); } // Token: 0x0600AC85 RID: 44165 RVA: 0x00258438 File Offset: 0x00256638 [Token(Token = "0x600AC85")] [Address(RVA = "0x18AE300", Offset = "0x18AD100", VA = "0x1818AE300", Slot = "9")] protected virtual bool CheckGroup(DHParameters dhParameters) { int num; do { num = 0; IList list = this.mGroups; int minimumPrimeBits = this.MinimumPrimeBits; while (minimumPrimeBits == 0) { } if (minimumPrimeBits != 0) { } } while (num != 0); if (num != -1) { return true; } throw new NullReferenceException(); } // Token: 0x0600AC86 RID: 44166 RVA: 0x00258474 File Offset: 0x00256674 [Token(Token = "0x600AC86")] [Address(RVA = "0x18AE4E0", Offset = "0x18AD2E0", VA = "0x1818AE4E0", Slot = "10")] protected virtual bool CheckMinimumPrimeBits(DHParameters dhParameters) { bool flag; return dhParameters.p.BitLength >= (flag ? 1 : 0); } // Token: 0x04006E4D RID: 28237 [Token(Token = "0x4006E4D")] public static readonly int DefaultMinimumPrimeBits; // Token: 0x04006E4E RID: 28238 [Token(Token = "0x4006E4E")] protected static readonly IList DefaultGroups = Platform.CreateArrayList(); // Token: 0x04006E4F RID: 28239 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4006E4F")] protected readonly IList mGroups; // Token: 0x04006E50 RID: 28240 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4006E50")] protected readonly int mMinimumPrimeBits; } }