首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

关于C# DES 解密的,该怎么解决

2013-11-09 
关于C# DES 解密的 密文是16进制的,key也是16进制的求源码 帮助啊。 网上找的都解密错误。des?解密16进制[解

关于C# DES 解密的
 密文是16进制的,key也是16进制的  求源码 帮助啊。 网上找的都解密错误。 des? 解密 16进制
[解决办法]
其实很多都是对的,你没找到而已。你看下这个可以不
http://download.csdn.net/detail/hu1990728/4520492
[解决办法]
看看介个
[解决办法]
自己调用吧


 private static Byte[] KEY_64
        {

            get
            {

                 return new byte[] { 40, 52, 159, 81, 79, 137, 99, 82 };
                 
            }

        }

        private static Byte[] IV_64
        {

            get
            {
                 
                return new byte[] { 98, 55, 32, 117, 156, 60, 59, 81 };
                

            }

        }
        public static string EncryptCookie(string name)// DES加密  关键字、数据加密
        {

            //#region DES加密算法

            if (name != "")
            {

                DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();

                MemoryStream ms = new MemoryStream();

                CryptoStream cs = new

                    CryptoStream(ms, cryptoProvider.CreateEncryptor(KEY_64, IV_64), CryptoStreamMode.Write);

                StreamWriter sw = new StreamWriter(cs);

                sw.Write(name);

                sw.Flush();

                cs.FlushFinalBlock();

                ms.Flush();



                

                return Convert.ToBase64String(ms.GetBuffer(), 0, Int32.Parse(ms.Length.ToString()));

            }

            else
            {

                return "";

            }

            

        }
    
        public static string DecryptCookie(string temp)// DES解密
        {
            try
            {


                //#region DES 解密算法

                if (temp != "")
                {



                    DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();

                    //从字符串转换为字节组

                    Byte[] buffer = Convert.FromBase64String(temp);

                    MemoryStream ms = new MemoryStream(buffer);

                    CryptoStream cs = new

                        CryptoStream(ms, cryptoProvider.CreateDecryptor(KEY_64, IV_64), CryptoStreamMode.Read);

                    StreamReader sr = new StreamReader(cs);

                    return sr.ReadToEnd();

                }

                else
                {

                    return "";

                }
            }

            catch (Exception ex)
            {

                return ex.Message;
            }

        }

热点排行