Cryptography

using System;
using System.Text;
using System.Security.Cryptography;
using System.IO;
namespace des1
{
 /// <summary>
 /// testDea 的摘要說明。
 /// </summary>
 public class Des3
 {
  public Des3()
  {
  }

  /// <summary>
  /// 加密方法
  /// </summary>
  /// <param name="strData">明文,Unicode 編碼</param>
  /// <param name="bs64key">密碼,base64編碼</param>
  /// <returns>加密結果,base64編碼</returns>
 
  public static string  Encrypt(string  strData,string  bs64key) 
  {     
   TripleDESCryptoServiceProvider  des  =  new  TripleDESCryptoServiceProvider(); 

   des.Mode = CipherMode.ECB ;
   des.Padding =  PaddingMode.PKCS7;
   des.Key  =   Convert.FromBase64String(bs64key);
   byte [] bData = ASCIIEncoding.ASCII.GetBytes(strData);
 
   return Convert.ToBase64String(des.CreateEncryptor().TransformFinalBlock(bData,0,bData.Length));
  }

 

  /// <summary>
  /// 解密方法 
  /// </summary>
  /// <param name="strData">明文,base64編碼</param>
  /// <param name="bs64key">密碼,base64編碼</param>
  /// <returns>解密結果,Unicode 編碼</returns>
  public static string  Decrypt(string strData, string  bs64key)
  { 
   TripleDESCryptoServiceProvider  des  =  new  TripleDESCryptoServiceProvider(); 
  
   des.Mode = CipherMode.ECB;
   des.Padding = PaddingMode.PKCS7;
   des.Key  =  Convert.FromBase64String(bs64key);
   byte[] bData =  Convert.FromBase64String(strData);
   return  ASCIIEncoding.ASCII.GetString(des.CreateDecryptor().TransformFinalBlock(bData, 0,bData.Length));
   
   
  }
 }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章