知行合一

享受过程 漠视结果

导航

C# des 加密 解密

代码
    public class EncryptDecrypt
    {
        
public static string EncryptString(string mes, string key)
        {
            
byte[] inputBytes = ASCIIEncoding.UTF8.GetBytes(mes);

            MemoryStream outputStream 
= new MemoryStream();
            DESCryptoServiceProvider des 
= new DESCryptoServiceProvider();
            des.Key 
= ASCIIEncoding.ASCII.GetBytes(key);
            des.IV 
= ASCIIEncoding.ASCII.GetBytes(key);
            ICryptoTransform desencrypt 
= des.CreateEncryptor();
            CryptoStream cryptostream 
= new CryptoStream(outputStream, desencrypt, CryptoStreamMode.Write);
            cryptostream.Write(inputBytes, 
0, inputBytes.Length);
            cryptostream.FlushFinalBlock();
            cryptostream.Close();

            
string outputString = Convert.ToBase64String(outputStream.ToArray());
            
return outputString;
        }

        
public static string DecryptString(string mes, string key)
        {
            
byte[] inputBytes = Convert.FromBase64String(mes);

            MemoryStream outputStream 
= new MemoryStream();
            DESCryptoServiceProvider des 
= new DESCryptoServiceProvider();
            des.Key 
= ASCIIEncoding.ASCII.GetBytes(key);
            des.IV 
= ASCIIEncoding.ASCII.GetBytes(key);
            ICryptoTransform desencrypt 
= des.CreateDecryptor();
            CryptoStream cryptostream 
= new CryptoStream(outputStream, desencrypt, CryptoStreamMode.Write);
            cryptostream.Write(inputBytes, 
0, inputBytes.Length);
            cryptostream.FlushFinalBlock();
            cryptostream.Close();

            
string outputString = ASCIIEncoding.UTF8.GetString(outputStream.ToArray());
            
return outputString;
        }
    }

 

posted on 2010-05-17 11:11  项羽  阅读(465)  评论(0编辑  收藏  举报