publicstringGetLicense() { var bigInteger = (new BigInteger(ushort.MaxValue) << 72) + new BigInteger(UserHash()) + (new BigInteger(ushort.MaxValue) << 56); var n = new BigInteger(PublicKey, 10); var exp = (new BigInteger(StringToBytesConverter.Old(UserName)) | 1).modInverse(new BigInteger(PrivateKey, 10)); return Convert.ToBase64String(bigInteger.modPow(exp, n).getBytes()); }
privateintUserHash() { var num = 0; for (var index = 0; index < UserName.Length; ++index) num = ((num << 7) + UserName[index]) % 65521; for (var index = 0; index < CompanyName.Length; ++index) num = ((num << 7) + CompanyName[index]) % 65521; return num; } } }