using System.Security.Cryptography;
public static void Main() {
byte[] key1 = new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
byte[] key2 = new byte[] { 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
byte[] data = Encoding.ASCII.GetBytes("CSharp Programming");
Console.WriteLine("Original : {0}", Convert.ToBase64String(data));
MemoryStream ms = new MemoryStream();
ICryptoTransform ct = aes.CreateEncryptor();
using (CryptoStream cs = new CryptoStream(ms, ct, CryptoStreamMode.Write)) {
cs.Write(data, 0, data.Length);
byte[] enc = ms.ToArray();
Console.WriteLine("Encrypted: {0}", Convert.ToBase64String(enc));
MemoryStream result = new MemoryStream();
ms = new MemoryStream(enc);
ct = aes.CreateDecryptor();
using (CryptoStream cs = new CryptoStream(ms, ct, CryptoStreamMode.Read)) {
byte[] read = new byte[64];
int c = cs.Read(read, 0, 64);
result.Write(read, 0, c);
Console.WriteLine("Decrypted: {0}", Convert.ToBase64String(result.ToArray()));