using System; using System.Runtime.InteropServices; 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: 0x0200157B RID: 5499 [Token(Token = "0x200157B")] [StructLayout(3)] public class SimulatedTlsSrpIdentityManager : TlsSrpIdentityManager { // Token: 0x06009216 RID: 37398 RVA: 0x002061AC File Offset: 0x002043AC [Token(Token = "0x6009216")] [Address(RVA = "0x1E8CD60", Offset = "0x1E8B760", VA = "0x181E8CD60")] 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: 0x06009217 RID: 37399 RVA: 0x002061F8 File Offset: 0x002043F8 [Token(Token = "0x6009217")] [Address(RVA = "0x74BD80", Offset = "0x74A780", VA = "0x18074BD80")] public SimulatedTlsSrpIdentityManager(Srp6GroupParameters group, Srp6VerifierGenerator verifierGenerator, IMac mac) { this.mGroup = group; this.mVerifierGenerator = verifierGenerator; this.mMac = mac; } // Token: 0x06009218 RID: 37400 RVA: 0x00206220 File Offset: 0x00204420 [Token(Token = "0x6009218")] [Address(RVA = "0x1E8CAF0", Offset = "0x1E8B4F0", VA = "0x181E8CAF0", 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: 0x04006180 RID: 24960 [Token(Token = "0x4006180")] private static readonly byte[] PREFIX_PASSWORD = Strings.ToByteArray("password"); // Token: 0x04006181 RID: 24961 [Token(Token = "0x4006181")] private static readonly byte[] PREFIX_SALT = Strings.ToByteArray("salt"); // Token: 0x04006182 RID: 24962 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4006182")] protected readonly Srp6GroupParameters mGroup; // Token: 0x04006183 RID: 24963 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4006183")] protected readonly Srp6VerifierGenerator mVerifierGenerator; // Token: 0x04006184 RID: 24964 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4006184")] protected readonly IMac mMac; } }