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;
        }
    }

 

你可能感兴趣的:(des)