private string EncryptString(string str) { return (Convert.ToBase64String(Encoding.BigEndianUnicode.GetBytes(Rot17.Encrypt(str))) .ToCharArray() .Select(x => $"{(int) x:X}") .Aggregate(new StringBuilder(), (x, y) => x.Append(y)) .ToString()); }
private string DecryptString(string str) { return (Rot17.Decrypt( (Encoding.BigEndianUnicode.GetString( Convert.FromBase64String( Enumerable.Range(0, str.Length / 2) .Select(i => str.Substring(i * 2, 2)) .Select(x => (char)Convert.ToInt32(x, 16)) .Aggregate(new StringBuilder(), (x, y) => x.Append(y)) .ToString()))))); }