DES加密  see:
  http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=35935
  http://community.csdn.net/Expert/topic/3109/3109695.xml?temp=.194256

解决方案 »

  1.   

    using System;
    using System.Windows.Forms;
    namespace System.RASClass
    {

    using System.Text;
    using System.Security.Cryptography; //引用加密类命名空间

    class RASCrypt
    {
    private RSACryptoServiceProvider RSAC;

    public RASCrypt()
    {
    RSAC = new RSACryptoServiceProvider();
    }

    public RASCrypt(int KeySize) //KeySize为密钥大小
    {
    try
    {
    RSAC = new RSACryptoServiceProvider(KeySize);
    }
    catch
    {
    RSAC = new RSACryptoServiceProvider(384);
    }
    } public void Clear()
    {
    RSAC.Clear();
    }

    public string Encrypt(string Data) //Data需要加密的数据
    {

    //得到Unicode字符集,用于将数字转化为对应的Unicode字符集
    UnicodeEncoding ByteConverter = new UnicodeEncoding(); //将Data转化为对应的数字
    byte[] dataToEncrypt = ByteConverter.GetBytes(Data);
    byte[] encryptedData;
                
    try
    {    
    //加密
    RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
    RSA.ImportParameters(RSAC.ExportParameters(false));
    encryptedData = RSA.Encrypt(dataToEncrypt, false);
    //返回加密过的string
    return ByteConverter.GetString( encryptedData );
    }
    catch
    {
    return null;
    }

    }
    public string Decrypt(string Data)
    {
    UnicodeEncoding ByteConverter = new UnicodeEncoding();
    byte[] dataToEncrypt = ByteConverter.GetBytes(Data);
    byte[] decryptedData;
            
    try
    {
    RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
    RSA.ImportParameters(RSAC.ExportParameters(true));
    decryptedData = RSA.Decrypt(dataToEncrypt, false);
    return ByteConverter.GetString(decryptedData);

    }
    catch //(CryptographicException e)
    {
    return null;
    }
    }
    }

    }
      

  2.   


    我忘了是哪个正确了,你试一下吧!:)using System;
    namespace System
    {

    using System.Text;
    using System.Security.Cryptography; //引用加密类命名空间

    class Crypto
    {
    private static RSACryptoServiceProvider RSAC = new RSACryptoServiceProvider(384);

    public static string Encrypt(string Data) //Data需要加密的数据
    {

    //得到Unicode字符集,用于将数字转化为对应的Unicode字符集
    UnicodeEncoding ByteConverter = new UnicodeEncoding(); //将Data转化为对应的数字
    byte[] dataToEncrypt = ByteConverter.GetBytes(Data);
    byte[] encryptedData;
                
    try
    {    
    //加密
    RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
    RSA.ImportParameters(RSAC.ExportParameters(false));
    encryptedData = RSA.Encrypt(dataToEncrypt, false);
    //返回加密过的string
    return ByteConverter.GetString( encryptedData );
    }
    catch
    {
    return null;
    }

    }
     public static string Decrypt(string Data)
    {
    UnicodeEncoding ByteConverter = new UnicodeEncoding();
    byte[] dataToEncrypt = ByteConverter.GetBytes(Data);
    byte[] decryptedData;
            
    try
    {
    RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
    RSA.ImportParameters(RSAC.ExportParameters(true));
    decryptedData = RSA.Decrypt(dataToEncrypt, false);
    return ByteConverter.GetString(decryptedData);

    }
    catch //(CryptographicException e)
    {
    return null;
    }
    }
    }

    }
      

  3.   

    这两个帖子解决了我的问题,非常感谢chNET(有神论者) 
    楼上的虽然不是3des的算法,也谢谢你的热心,揭帖了