using System; using System.Collections; using System.IO; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Generators; using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using BestHTTP.SecureProtocol.Org.BouncyCastle.Security; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Encoders; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls { // Token: 0x02001B6D RID: 7021 [Token(Token = "0x2001B6D")] public abstract class TlsDHUtilities { // Token: 0x0600AE6D RID: 44653 RVA: 0x0025F5BC File Offset: 0x0025D7BC [Token(Token = "0x600AE6D")] [Address(RVA = "0x1982680", Offset = "0x1981480", VA = "0x181982680")] private static BigInteger FromHex(string hex) { byte[] array = Hex.Decode(hex); return new BigInteger(1, array); } // Token: 0x0600AE6E RID: 44654 RVA: 0x0025F5D8 File Offset: 0x0025D7D8 [Token(Token = "0x600AE6E")] [Address(RVA = "0x1982710", Offset = "0x1981510", VA = "0x181982710")] private static DHParameters FromSafeP(string hexP) { byte[] array = Hex.Decode(hexP); BigInteger bigInteger = new BigInteger(1, array); BigInteger bigInteger2 = bigInteger.ShiftRight(1); BigInteger two = TlsDHUtilities.Two; return new DHParameters(bigInteger, two, bigInteger2); } // Token: 0x0600AE6F RID: 44655 RVA: 0x0025F610 File Offset: 0x0025D810 [Token(Token = "0x600AE6F")] [Address(RVA = "0x1982100", Offset = "0x1980F00", VA = "0x181982100")] public static void AddNegotiatedDheGroupsClientExtension(IDictionary extensions, byte[] dheGroups) { do { int negotiated_ff_dhe_groups = ExtensionType.negotiated_ff_dhe_groups; } while (dheGroups == 0 || dheGroups.Length > 254); byte[] array = TlsUtilities.EncodeUint8ArrayWithUint8Length(dheGroups); } // Token: 0x0600AE70 RID: 44656 RVA: 0x0025F63C File Offset: 0x0025D83C [Token(Token = "0x600AE70")] [Address(RVA = "0x1982250", Offset = "0x1981050", VA = "0x181982250")] public static void AddNegotiatedDheGroupsServerExtension(IDictionary extensions, byte dheGroup) { int negotiated_ff_dhe_groups = ExtensionType.negotiated_ff_dhe_groups; byte[] array = TlsUtilities.EncodeUint8(dheGroup); } // Token: 0x0600AE71 RID: 44657 RVA: 0x0025F65C File Offset: 0x0025D85C [Token(Token = "0x600AE71")] [Address(RVA = "0x1982DC0", Offset = "0x1981BC0", VA = "0x181982DC0")] public static byte[] GetNegotiatedDheGroupsClientExtension(IDictionary extensions) { int negotiated_ff_dhe_groups = ExtensionType.negotiated_ff_dhe_groups; byte[] extensionData = TlsUtilities.GetExtensionData(extensions, negotiated_ff_dhe_groups); if (extensionData == 0) { return extensionData; } byte[] array = TlsUtilities.DecodeUint8ArrayWithUint8Length(extensionData); throw new NullReferenceException(); } // Token: 0x0600AE72 RID: 44658 RVA: 0x0025F68C File Offset: 0x0025D88C [Token(Token = "0x600AE72")] [Address(RVA = "0x1982F00", Offset = "0x1981D00", VA = "0x181982F00")] public static short GetNegotiatedDheGroupsServerExtension(IDictionary extensions) { /* An exception occurred when decompiling this method (0600AE72) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int16 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsDHUtilities::GetNegotiatedDheGroupsServerExtension(System.Collections.IDictionary) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_12: stloc:uint8(var_2_18, call:uint8(TlsUtilities::DecodeUint8, ldloc:uint8[](var_1_0D))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x0600AE73 RID: 44659 RVA: 0x0025F6B4 File Offset: 0x0025D8B4 [Token(Token = "0x600AE73")] [Address(RVA = "0x1982590", Offset = "0x1981390", VA = "0x181982590")] public static byte[] CreateNegotiatedDheGroupsClientExtension(byte[] dheGroups) { while (dheGroups == 0 || dheGroups.Length > 254) { } return TlsUtilities.EncodeUint8ArrayWithUint8Length(dheGroups); } // Token: 0x0600AE74 RID: 44660 RVA: 0x0025F6D8 File Offset: 0x0025D8D8 [Token(Token = "0x600AE74")] [Address(RVA = "0x1982620", Offset = "0x1981420", VA = "0x181982620")] public static byte[] CreateNegotiatedDheGroupsServerExtension(byte dheGroup) { return TlsUtilities.EncodeUint8(dheGroup); } // Token: 0x0600AE75 RID: 44661 RVA: 0x0025F6EC File Offset: 0x0025D8EC [Token(Token = "0x600AE75")] [Address(RVA = "0x1983500", Offset = "0x1982300", VA = "0x181983500")] public static byte[] ReadNegotiatedDheGroupsClientExtension(byte[] extensionData) { return TlsUtilities.DecodeUint8ArrayWithUint8Length(extensionData); } // Token: 0x0600AE76 RID: 44662 RVA: 0x0025F700 File Offset: 0x0025D900 [Token(Token = "0x600AE76")] [Address(RVA = "0x1983590", Offset = "0x1982390", VA = "0x181983590")] public static byte ReadNegotiatedDheGroupsServerExtension(byte[] extensionData) { return TlsUtilities.DecodeUint8(extensionData); } // Token: 0x0600AE77 RID: 44663 RVA: 0x0025F714 File Offset: 0x0025D914 [Token(Token = "0x600AE77")] [Address(RVA = "0x1983010", Offset = "0x1981E10", VA = "0x181983010")] public static DHParameters GetParametersForDHEGroup(short dheGroup) { return TlsDHUtilities.draft_ffdhe8192; } // Token: 0x0600AE78 RID: 44664 RVA: 0x0025F740 File Offset: 0x0025D940 [Token(Token = "0x600AE78")] [Address(RVA = "0x19824D0", Offset = "0x19812D0", VA = "0x1819824D0")] public static bool ContainsDheCipherSuites(int[] cipherSuites) { int num = 0; int length = cipherSuites.Length; if (num < length) { if (!TlsDHUtilities.IsDheCipherSuite(cipherSuites[num])) { num++; } return true; } throw new NullReferenceException(); } // Token: 0x0600AE79 RID: 44665 RVA: 0x0025F774 File Offset: 0x0025D974 [Token(Token = "0x600AE79")] [Address(RVA = "0x1983180", Offset = "0x1981F80", VA = "0x181983180")] public static bool IsDheCipherSuite(int cipherSuite) { /* An exception occurred when decompiling this method (0600AE79) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsDHUtilities::IsDheCipherSuite(System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_66: brtrue(IL_66, cne:bool(ldloc:int32(cipherSuite), ldc.i4:int32(45))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x0600AE7A RID: 44666 RVA: 0x0025F7EC File Offset: 0x0025D9EC [Token(Token = "0x600AE7A")] [Address(RVA = "0x1982370", Offset = "0x1981170", VA = "0x181982370")] public static bool AreCompatibleParameters(DHParameters a, DHParameters b) { BigInteger p = a.p; BigInteger g = a.g; if (a.q == 0 || b.q != 0) { } return true; } // Token: 0x0600AE7B RID: 44667 RVA: 0x0025F824 File Offset: 0x0025DA24 [Token(Token = "0x600AE7B")] [Address(RVA = "0x1982430", Offset = "0x1981230", VA = "0x181982430")] public static byte[] CalculateDHBasicAgreement(DHPublicKeyParameters publicKey, DHPrivateKeyParameters privateKey) { DHBasicAgreement dhbasicAgreement = new DHBasicAgreement(); BigInteger bigInteger = dhbasicAgreement.CalculateAgreement(privateKey); int fieldSize = dhbasicAgreement.GetFieldSize(); byte[] array; return array; } // Token: 0x0600AE7C RID: 44668 RVA: 0x0025F850 File Offset: 0x0025DA50 [Token(Token = "0x600AE7C")] [Address(RVA = "0x1982840", Offset = "0x1981640", VA = "0x181982840")] public static AsymmetricCipherKeyPair GenerateDHKeyPair(SecureRandom random, DHParameters dhParams) { DHBasicKeyPairGenerator dhbasicKeyPairGenerator = new DHBasicKeyPairGenerator(); DHKeyGenerationParameters dhkeyGenerationParameters = new DHKeyGenerationParameters(random, dhParams); AsymmetricCipherKeyPair asymmetricCipherKeyPair = dhbasicKeyPairGenerator.GenerateKeyPair(); return ((IAsymmetricCipherKeyPairGenerator)dhbasicKeyPairGenerator).GenerateKeyPair(); } // Token: 0x0600AE7D RID: 44669 RVA: 0x0025F880 File Offset: 0x0025DA80 [Token(Token = "0x600AE7D")] [Address(RVA = "0x1982900", Offset = "0x1981700", VA = "0x181982900")] public static DHPrivateKeyParameters GenerateEphemeralClientKeyExchange(SecureRandom random, DHParameters dhParams, Stream output) { for (;;) { AsymmetricCipherKeyPair asymmetricCipherKeyPair = TlsDHUtilities.GenerateDHKeyPair(random, dhParams); AsymmetricKeyParameter publicParameter = asymmetricCipherKeyPair.publicParameter; if (publicParameter != 0 && publicParameter != 0) { string text = publicParameter.ToString(); byte[] array; TlsUtilities.WriteOpaque16(array, output); AsymmetricKeyParameter privateParameter = asymmetricCipherKeyPair.privateParameter; if (privateParameter == 0 || privateParameter != 0) { break; } } } throw new NullReferenceException(); } // Token: 0x0600AE7E RID: 44670 RVA: 0x0025F8D8 File Offset: 0x0025DAD8 [Token(Token = "0x600AE7E")] [Address(RVA = "0x1982AE0", Offset = "0x19818E0", VA = "0x181982AE0")] public static DHPrivateKeyParameters GenerateEphemeralServerKeyExchange(SecureRandom random, DHParameters dhParams, Stream output) { for (;;) { AsymmetricCipherKeyPair asymmetricCipherKeyPair = TlsDHUtilities.GenerateDHKeyPair(random, dhParams); AsymmetricKeyParameter publicParameter = asymmetricCipherKeyPair.publicParameter; TlsUtilities.WriteOpaque16(BigIntegers.AsUnsignedByteArray(dhParams.p), output); TlsUtilities.WriteOpaque16(BigIntegers.AsUnsignedByteArray(dhParams.g), output); if ("{il2cpp array field local12->}" == typeof(DHPublicKeyParameters).TypeHandle) { } if (publicParameter != 0 && publicParameter != 0) { string text = publicParameter.ToString(); byte[] array; TlsUtilities.WriteOpaque16(array, output); AsymmetricKeyParameter privateParameter = asymmetricCipherKeyPair.privateParameter; if (privateParameter == 0 || privateParameter != 0) { break; } } } throw new NullReferenceException(); } // Token: 0x0600AE7F RID: 44671 RVA: 0x0025F95C File Offset: 0x0025DB5C [Token(Token = "0x600AE7F")] [Address(RVA = "0x19833D0", Offset = "0x19821D0", VA = "0x1819833D0")] public static BigInteger ReadDHParameter(Stream input) { byte[] array = TlsUtilities.ReadOpaque16(input); return new BigInteger(1, array); } // Token: 0x0600AE80 RID: 44672 RVA: 0x0025F978 File Offset: 0x0025DB78 [Token(Token = "0x600AE80")] [Address(RVA = "0x1983460", Offset = "0x1982260", VA = "0x181983460")] public static DHParameters ReadDHParameters(Stream input) { BigInteger bigInteger = TlsDHUtilities.ReadDHParameter(input); BigInteger bigInteger2 = TlsDHUtilities.ReadDHParameter(input); return new DHParameters(bigInteger, bigInteger2); } // Token: 0x0600AE81 RID: 44673 RVA: 0x0025F99C File Offset: 0x0025DB9C [Token(Token = "0x600AE81")] [Address(RVA = "0x19835F0", Offset = "0x19823F0", VA = "0x1819835F0")] public static DHParameters ReceiveDHParameters(TlsDHVerifier dhVerifier, Stream input) { /* An exception occurred when decompiling this method (0600AE81) ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters.DHParameters BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsDHUtilities::ReceiveDHParameters(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsDHVerifier,System.IO.Stream) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_34: stloc:TlsFatalAlert(var_4_3B, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_5))) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x0600AE82 RID: 44674 RVA: 0x0025F9E8 File Offset: 0x0025DBE8 [Token(Token = "0x600AE82")] [Address(RVA = "0x1983790", Offset = "0x1982590", VA = "0x181983790")] public static void WriteDHParameter(BigInteger x, Stream output) { TlsUtilities.WriteOpaque16(BigIntegers.AsUnsignedByteArray(x), output); } // Token: 0x0600AE83 RID: 44675 RVA: 0x0025FA04 File Offset: 0x0025DC04 [Token(Token = "0x600AE83")] [Address(RVA = "0x1983800", Offset = "0x1982600", VA = "0x181983800")] public static void WriteDHParameters(DHParameters dhParameters, Stream output) { TlsUtilities.WriteOpaque16(BigIntegers.AsUnsignedByteArray(dhParameters.p), output); TlsUtilities.WriteOpaque16(BigIntegers.AsUnsignedByteArray(dhParameters.g), output); } // Token: 0x0600AE84 RID: 44676 RVA: 0x0025FA3C File Offset: 0x0025DC3C [Token(Token = "0x600AE84")] [Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")] protected TlsDHUtilities() { } // Token: 0x04006FFF RID: 28671 [Token(Token = "0x4006FFF")] internal static readonly BigInteger Two = BigInteger.Two; // Token: 0x04007000 RID: 28672 [Token(Token = "0x4007000")] private static readonly string draft_ffdhe2432_p = "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE13098533C8B3FFFFFFFFFFFFFFFF"; // Token: 0x04007001 RID: 28673 [Token(Token = "0x4007001")] internal static readonly DHParameters draft_ffdhe2432 = TlsDHUtilities.FromSafeP(TlsDHUtilities.draft_ffdhe2432_p); // Token: 0x04007002 RID: 28674 [Token(Token = "0x4007002")] private static readonly string draft_ffdhe3072_p = "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B66C62E37FFFFFFFFFFFFFFFF"; // Token: 0x04007003 RID: 28675 [Token(Token = "0x4007003")] internal static readonly DHParameters draft_ffdhe3072 = TlsDHUtilities.FromSafeP(TlsDHUtilities.draft_ffdhe3072_p); // Token: 0x04007004 RID: 28676 [Token(Token = "0x4007004")] private static readonly string draft_ffdhe4096_p = "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E655F6AFFFFFFFFFFFFFFFF"; // Token: 0x04007005 RID: 28677 [Token(Token = "0x4007005")] internal static readonly DHParameters draft_ffdhe4096 = TlsDHUtilities.FromSafeP(TlsDHUtilities.draft_ffdhe4096_p); // Token: 0x04007006 RID: 28678 [Token(Token = "0x4007006")] private static readonly string draft_ffdhe6144_p = "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E0DD9020BFD64B645036C7A4E677D2C38532A3A23BA4442CAF53EA63BB454329B7624C8917BDD64B1C0FD4CB38E8C334C701C3ACDAD0657FCCFEC719B1F5C3E4E46041F388147FB4CFDB477A52471F7A9A96910B855322EDB6340D8A00EF092350511E30ABEC1FFF9E3A26E7FB29F8C183023C3587E38DA0077D9B4763E4E4B94B2BBC194C6651E77CAF992EEAAC0232A281BF6B3A739C1226116820AE8DB5847A67CBEF9C9091B462D538CD72B03746AE77F5E62292C311562A846505DC82DB854338AE49F5235C95B91178CCF2DD5CACEF403EC9D1810C6272B045B3B71F9DC6B80D63FDD4A8E9ADB1E6962A69526D43161C1A41D570D7938DAD4A40E329CD0E40E65FFFFFFFFFFFFFFFF"; // Token: 0x04007007 RID: 28679 [Token(Token = "0x4007007")] internal static readonly DHParameters draft_ffdhe6144 = TlsDHUtilities.FromSafeP(TlsDHUtilities.draft_ffdhe6144_p); // Token: 0x04007008 RID: 28680 [Token(Token = "0x4007008")] private static readonly string draft_ffdhe8192_p = "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E0DD9020BFD64B645036C7A4E677D2C38532A3A23BA4442CAF53EA63BB454329B7624C8917BDD64B1C0FD4CB38E8C334C701C3ACDAD0657FCCFEC719B1F5C3E4E46041F388147FB4CFDB477A52471F7A9A96910B855322EDB6340D8A00EF092350511E30ABEC1FFF9E3A26E7FB29F8C183023C3587E38DA0077D9B4763E4E4B94B2BBC194C6651E77CAF992EEAAC0232A281BF6B3A739C1226116820AE8DB5847A67CBEF9C9091B462D538CD72B03746AE77F5E62292C311562A846505DC82DB854338AE49F5235C95B91178CCF2DD5CACEF403EC9D1810C6272B045B3B71F9DC6B80D63FDD4A8E9ADB1E6962A69526D43161C1A41D570D7938DAD4A40E329CCFF46AAA36AD004CF600C8381E425A31D951AE64FDB23FCEC9509D43687FEB69EDD1CC5E0B8CC3BDF64B10EF86B63142A3AB8829555B2F747C932665CB2C0F1CC01BD70229388839D2AF05E454504AC78B7582822846C0BA35C35F5C59160CC046FD8251541FC68C9C86B022BB7099876A460E7451A8A93109703FEE1C217E6C3826E52C51AA691E0E423CFC99E9E31650C1217B624816CDAD9A95F9D5B8019488D9C0A0A1FE3075A577E23183F81D4A3F2FA4571EFC8CE0BA8A4FE8B6855DFE72B0A66EDED2FBABFBE58A30FAFABE1C5D71A87E2F741EF8C1FE86FEA6BBFDE530677F0D97D11D49F7A8443D0822E506A9F4614E011E2A94838FF88CD68C8BB7C5C6424CFFFFFFFFFFFFFFFF"; // Token: 0x04007009 RID: 28681 [Token(Token = "0x4007009")] internal static readonly DHParameters draft_ffdhe8192 = TlsDHUtilities.FromSafeP(TlsDHUtilities.draft_ffdhe8192_p); } }