using System; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement.Srp; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Macs; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls { // Token: 0x02001C38 RID: 7224 [Token(Token = "0x2001C38")] public class SimulatedTlsSrpIdentityManager : TlsSrpIdentityManager { // Token: 0x0600B1BE RID: 45502 RVA: 0x00266878 File Offset: 0x00264A78 [Token(Token = "0x600B1BE")] [Address(RVA = "0x499110", Offset = "0x498110", VA = "0x180499110")] public static SimulatedTlsSrpIdentityManager GetRfc5054Default(Srp6GroupParameters group, byte[] seedKey) { Srp6VerifierGenerator srp6VerifierGenerator = new Srp6VerifierGenerator(); IDigest digest; HMac hmac = new HMac(digest); KeyParameter keyParameter = new KeyParameter(seedKey); IDigest underlyingDigest = hmac.GetUnderlyingDigest(); SimulatedTlsSrpIdentityManager simulatedTlsSrpIdentityManager; simulatedTlsSrpIdentityManager.mGroup = group; simulatedTlsSrpIdentityManager.mVerifierGenerator = srp6VerifierGenerator; simulatedTlsSrpIdentityManager.mMac = hmac; return simulatedTlsSrpIdentityManager; } // Token: 0x0600B1BF RID: 45503 RVA: 0x002668C4 File Offset: 0x00264AC4 [Token(Token = "0x600B1BF")] [Address(RVA = "0x466000", Offset = "0x465000", VA = "0x180466000")] public SimulatedTlsSrpIdentityManager(Srp6GroupParameters group, Srp6VerifierGenerator verifierGenerator, IMac mac) { this.mGroup = group; this.mVerifierGenerator = verifierGenerator; this.mMac = mac; } // Token: 0x0600B1C0 RID: 45504 RVA: 0x002668EC File Offset: 0x00264AEC [Token(Token = "0x600B1C0")] [Address(RVA = "0x498EA0", Offset = "0x497EA0", VA = "0x180498EA0", Slot = "5")] public virtual TlsSrpLoginParameters GetLoginParameters(byte[] identity) { IMac mac = this.mMac; int length = SimulatedTlsSrpIdentityManager.PREFIX_SALT.Length; IMac mac2 = this.mMac; int length2 = identity.Length; IMac mac3 = this.mMac; byte[] array = new byte[length2]; IMac mac4 = this.mMac; byte[] prefix_PASSWORD = SimulatedTlsSrpIdentityManager.PREFIX_PASSWORD; IMac mac5 = this.mMac; int length3 = prefix_PASSWORD.Length; IMac mac6 = this.mMac; int length4 = identity.Length; IMac mac7 = this.mMac; byte[] array2 = new byte[length4]; IMac mac8 = this.mMac; Srp6VerifierGenerator srp6VerifierGenerator = this.mVerifierGenerator; TlsSrpLoginParameters tlsSrpLoginParameters; return tlsSrpLoginParameters; } // Token: 0x0400717C RID: 29052 [Token(Token = "0x400717C")] private static readonly byte[] PREFIX_PASSWORD = Strings.ToByteArray("password"); // Token: 0x0400717D RID: 29053 [Token(Token = "0x400717D")] private static readonly byte[] PREFIX_SALT = Strings.ToByteArray("salt"); // Token: 0x0400717E RID: 29054 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400717E")] protected readonly Srp6GroupParameters mGroup; // Token: 0x0400717F RID: 29055 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400717F")] protected readonly Srp6VerifierGenerator mVerifierGenerator; // Token: 0x04007180 RID: 29056 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4007180")] protected readonly IMac mMac; } }