各种同志们好,想了解下关于c#简单的加密解密-由于自己不太会。NET,遇到了点麻烦,有没有好听同事们留下QQ交流下啊,有偿

解决方案 »

  1.   

    发现一文件代码类似using System;
    using System.Text;
    using System.Globalization;
    using System.Security.Cryptography;
    class DES
    {
    // 创建Key
    public string GenerateKey()
    {
    DESCryptoServiceProvider desCrypto = (DESCryptoServiceProvider)DESCryptoServiceProvider.Create();
    return ASCIIEncoding.ASCII.GetString(desCrypto.Key);
    }
    // 加密字符串
    public string EncryptString(string sInputString, string sKey)
    {
    byte [] data = Encoding.UTF8.GetBytes(sInputString);
    DESCryptoServiceProvider DES = new DESCryptoServiceProvider();
    DES.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
    DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
    ICryptoTransform desencrypt = DES.CreateEncryptor();
    byte [] result = desencrypt.TransformFinalBlock(data, 0, data.Length);
    return BitConverter.ToString(result);
    }
    // 解密字符串
    public string DecryptString(string sInputString, string sKey)
    {
    string [] sInput = sInputString.Split("-".ToCharArray());
    byte [] data = new byte[sInput.Length];
    for(int i = 0; i < sInput.Length; i++)
    {
    data[i] = byte.Parse(sInput[i], NumberStyles.HexNumber);
    }
    DESCryptoServiceProvider DES = new DESCryptoServiceProvider();
    DES.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
    DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
    ICryptoTransform desencrypt = DES.CreateDecryptor();
    byte [] result = desencrypt.TransformFinalBlock(data, 0, data.Length);
    return Encoding.UTF8.GetString(result);
    }
    }
    class Test
    {
    static void Main()
    {
    DES des = new DES();
    string key = des.GenerateKey();
    string s0 = "中国软件 - csdn.net";
    string s1 = des.EncryptString(s0, key);
    string s2 = des.DecryptString(s1, key);
    Console.WriteLine("原串: [{0}]", s0);
    Console.WriteLine("加密: [{0}]", s1);
    Console.WriteLine("解密: [{0}]", s2);
    }
    }
    /* 程序输出:
    原串: [中国软件 - csdn.net]
    加密: [E8-30-D0-F2-2F-66-52-14-45-9A-DC-C5-85-E7-62-9B-AD-B7-82-CF-A8-0A-59-77]
    解密: [中国软件 - csdn.net]
    */
    现在我知道加密的字符窜,怎么把他解密出来啊,
      

  2.   

    public string DecryptString(string sInputString, string sKey)
    解密的函数都有了,怎么解不了???
    需要输入加密的串和密钥做参数