using System.Security.Cryptography;
public static void Main()
Console.WriteLine("Encrypt");
var encryptData = Cryptography.Crypt(data);
Console.WriteLine(encryptData);
Console.WriteLine("Decrypt");
var result = Cryptography.Decrypt(encryptData);
Console.WriteLine(result);
public static class Cryptography
readonly static string Key;
static TripleDES CreateDES()
MD5 md5 = new MD5CryptoServiceProvider();
TripleDES des = new TripleDESCryptoServiceProvider();
des.Key = md5.ComputeHash(Encoding.Unicode.GetBytes(Key));
des.IV = new byte[des.BlockSize / 8];
public static string Crypt(string PlainText)
TripleDES des = CreateDES();
ICryptoTransform ct = des.CreateEncryptor();
byte[] input = Encoding.Unicode.GetBytes(PlainText);
byte[] output = ct.TransformFinalBlock(input, 0, input.Length);
return Convert.ToBase64String(output);
public static string Decrypt(string CypherText)
byte[] b = Convert.FromBase64String(CypherText);
TripleDES des = CreateDES();
ICryptoTransform ct = des.CreateDecryptor();
byte[] output = ct.TransformFinalBlock(b, 0, b.Length);
return Encoding.Unicode.GetString(output);