using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
using System.IO;
?
namespace EncodAndDecode
{
?? ?class Program
?? ?{
?? ? ? ?static string Message = "1234";
?? ? ? ?static RijndaelManaged rm = new RijndaelManaged();
?
?? ? ? ?static void Main(string[] args)
?? ? ? ?{
?? ? ? ? ? ?rm.GenerateKey();
?? ? ? ? ? ?rm.GenerateIV();
?
?? ? ? ? ? ?#region symmetric
?
?? ? ? ? ? ?Console.WriteLine("1234 after crypto :{0}",Encrypto(Message));
?? ? ? ? ? ?Console.WriteLine("after decrypto : {0}",Decrypto(Encrypto(Message)));
?? ? ? ? ? ?#endregion
?
?? ? ? ? ? ?Console.ReadLine();
?? ? ? ?}
?
?? ? ? ?private static string Encrypto(string str)
?? ? ? ?{
?? ? ? ? ? ?MemoryStream ms = new MemoryStream();
?? ? ? ? ? ?CryptoStream cs = new CryptoStream(
?? ? ? ? ? ? ? ?ms, rm.CreateEncryptor(), CryptoStreamMode.Write);
?? ? ? ? ? ?StreamWriter sw = new StreamWriter(cs);
?? ? ? ? ? ?sw.Write(str);
?? ? ? ? ? ?sw.Close();
?? ? ? ? ? ?cs.Close();
?? ? ? ? ? ?return System.Convert.ToBase64String(ms.ToArray());
?? ? ? ?}
?
?? ? ? ?private static string Decrypto(string str)
?? ? ? ?{
?? ? ? ? ? ?byte[] b = Convert.FromBase64String(str);
?? ? ? ? ? ?MemoryStream ms = new MemoryStream(b);
?
?? ? ? ? ? ?CryptoStream cs = new CryptoStream(
?? ? ? ? ? ? ? ?ms, rm.CreateDecryptor(), CryptoStreamMode.Read);
?? ? ? ? ? ?StreamReader sr = new StreamReader(cs);
?? ? ? ? ? ?return sr.ReadToEnd();
?? ? ? ?}
?
?
?? ?}
}