using System.Security.Cryptography;
public static void Main()
var key = "b14ca5898a4e4133bbce2ea2315a1916";
var input = string.Concat("https://myDomain.in/", "Encrypt.aspx?query=", EncryptString(key, string.Format("emailID={0}", "myemail@gmail.com")));
Console.WriteLine("Encrypted Input: " + input);
var decrptedInput = DecryptString(key, input.Substring(input.IndexOf("=") + 1));
Console.WriteLine("Decrypted Input: " + decrptedInput);
public static string EncryptString(string key, string plainInput)
byte[] iv = new byte[16];
using (Aes aes = Aes.Create())
aes.Key = Encoding.UTF8.GetBytes(key);
ICryptoTransform encryptor = aes.CreateEncryptor(aes.Key, aes.IV);
using (MemoryStream memoryStream = new MemoryStream())
using (CryptoStream cryptoStream = new CryptoStream((Stream)memoryStream, encryptor, CryptoStreamMode.Write))
using (StreamWriter streamWriter = new StreamWriter((Stream)cryptoStream))
streamWriter.Write(plainInput);
array = memoryStream.ToArray();
return Convert.ToBase64String(array);
public static string DecryptString(string key, string cipherText)
byte[] iv = new byte[16];
byte[] buffer = Convert.FromBase64String(cipherText);
using (Aes aes = Aes.Create())
aes.Key = Encoding.UTF8.GetBytes(key);
ICryptoTransform decryptor = aes.CreateDecryptor(aes.Key, aes.IV);
using (MemoryStream memoryStream = new MemoryStream(buffer))
using (CryptoStream cryptoStream = new CryptoStream((Stream)memoryStream, decryptor, CryptoStreamMode.Read))
using (StreamReader streamReader = new StreamReader((Stream)cryptoStream))
return streamReader.ReadToEnd();