using System; using BestHTTP.SecureProtocol.Org.BouncyCastle.Math; using BestHTTP.SecureProtocol.Org.BouncyCastle.Security; using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities; using Cpp2IlInjected; namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Agreement.Srp { // Token: 0x02001D13 RID: 7443 [Token(Token = "0x2001D13")] public class Srp6Utilities { // Token: 0x0600BC7E RID: 48254 RVA: 0x002ADD28 File Offset: 0x002ABF28 [Token(Token = "0x600BC7E")] [Address(RVA = "0x1B48650", Offset = "0x1B47450", VA = "0x181B48650")] public static BigInteger CalculateK(IDigest digest, BigInteger N, BigInteger g) { return Srp6Utilities.HashPaddedPair(digest, N, N, g); } // Token: 0x0600BC7F RID: 48255 RVA: 0x002ADD40 File Offset: 0x002ABF40 [Token(Token = "0x600BC7F")] [Address(RVA = "0x1B48790", Offset = "0x1B47590", VA = "0x181B48790")] public static BigInteger CalculateU(IDigest digest, BigInteger N, BigInteger A, BigInteger B) { return Srp6Utilities.HashPaddedPair(digest, N, A, B); } // Token: 0x0600BC80 RID: 48256 RVA: 0x002ADD58 File Offset: 0x002ABF58 [Token(Token = "0x600BC80")] [Address(RVA = "0x1B487A0", Offset = "0x1B475A0", VA = "0x181B487A0")] public static BigInteger CalculateX(IDigest digest, BigInteger N, byte[] salt, byte[] identity, byte[] password) { byte[] array = new byte[0]; int length = identity.Length; int length2 = salt.Length; int length3 = array.Length; return new BigInteger(1, array); } // Token: 0x0600BC81 RID: 48257 RVA: 0x002ADD94 File Offset: 0x002ABF94 [Token(Token = "0x600BC81")] [Address(RVA = "0x1B48950", Offset = "0x1B47750", VA = "0x181B48950")] public static BigInteger GeneratePrivateValue(IDigest digest, BigInteger N, BigInteger g, SecureRandom random) { int num = 0; int num2 = N.BitLength; num2 -= num; uint num3; num2 = Math.Min((int)num3, num2); BigInteger one = BigInteger.One; int num4 = num2 - 1; BigInteger bigInteger = one.ShiftLeft(num4); BigInteger one2 = BigInteger.One; BigInteger bigInteger2 = N.Subtract(one2); return BigIntegers.CreateRandomInRange(bigInteger, bigInteger2, random); } // Token: 0x0600BC82 RID: 48258 RVA: 0x002ADDEC File Offset: 0x002ABFEC [Token(Token = "0x600BC82")] [Address(RVA = "0x1B48E10", Offset = "0x1B47C10", VA = "0x181B48E10")] public static BigInteger ValidatePublicValue(BigInteger N, BigInteger val) { return val.Mod(N); } // Token: 0x0600BC83 RID: 48259 RVA: 0x002ADE14 File Offset: 0x002AC014 [Token(Token = "0x600BC83")] [Address(RVA = "0x1B48780", Offset = "0x1B47580", VA = "0x181B48780")] public static BigInteger CalculateM1(IDigest digest, BigInteger N, BigInteger A, BigInteger B, BigInteger S) { BigInteger bigInteger; return bigInteger; } // Token: 0x0600BC84 RID: 48260 RVA: 0x002ADE24 File Offset: 0x002AC024 [Token(Token = "0x600BC84")] [Address(RVA = "0x1B48780", Offset = "0x1B47580", VA = "0x181B48780")] public static BigInteger CalculateM2(IDigest digest, BigInteger N, BigInteger A, BigInteger M1, BigInteger S) { BigInteger bigInteger; return bigInteger; } // Token: 0x0600BC85 RID: 48261 RVA: 0x002ADE34 File Offset: 0x002AC034 [Token(Token = "0x600BC85")] [Address(RVA = "0x1B48670", Offset = "0x1B47470", VA = "0x181B48670")] public static BigInteger CalculateKey(IDigest digest, BigInteger N, BigInteger S) { int num = 0; int num2 = N.BitLength; num2 += 7; num += num2; byte[] padded = Srp6Utilities.GetPadded(S, num); int length = padded.Length; byte[] array = new byte[padded]; return new BigInteger(1, array); } // Token: 0x0600BC86 RID: 48262 RVA: 0x002ADE7C File Offset: 0x002AC07C [Token(Token = "0x600BC86")] [Address(RVA = "0x1B48C60", Offset = "0x1B47A60", VA = "0x181B48C60")] private static BigInteger HashPaddedTriplet(IDigest digest, BigInteger N, BigInteger n1, BigInteger n2, BigInteger n3) { int num = 0; int num2 = N.BitLength; num2 += 7; num2 += num; byte[] padded = Srp6Utilities.GetPadded(n1, num2); byte[] padded2 = Srp6Utilities.GetPadded(n2, num2); int length = padded.Length; int length2 = padded2.Length; byte[] array2; byte[] array = new byte[array2.Length]; return new BigInteger(1, array); } // Token: 0x0600BC87 RID: 48263 RVA: 0x002ADEDC File Offset: 0x002AC0DC [Token(Token = "0x600BC87")] [Address(RVA = "0x1B48B00", Offset = "0x1B47900", VA = "0x181B48B00")] private static BigInteger HashPaddedPair(IDigest digest, BigInteger N, BigInteger n1, BigInteger n2) { int num = 0; int num2 = N.BitLength; num2 += 7; num2 += num; byte[] padded = Srp6Utilities.GetPadded(n1, num2); byte[] padded2 = Srp6Utilities.GetPadded(n2, num2); int length = padded.Length; byte[] array = new byte[padded2.Length]; return new BigInteger(1, array); } // Token: 0x0600BC88 RID: 48264 RVA: 0x002ADF30 File Offset: 0x002AC130 [Token(Token = "0x600BC88")] [Address(RVA = "0x1B48A60", Offset = "0x1B47860", VA = "0x181B48A60")] private static byte[] GetPadded(BigInteger n, int length) { byte[] array = BigIntegers.AsUnsignedByteArray(n); if (array.Length < length) { byte[] array2 = new byte[length]; int length2 = array.Length; int num = 0; Array.Copy(array, num, array2, length, length2); } return array; } // Token: 0x0600BC89 RID: 48265 RVA: 0x002ADF70 File Offset: 0x002AC170 [Token(Token = "0x600BC89")] [Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")] public Srp6Utilities() { } } }