当前位置:编程学习 > C#/ASP.NET >>

加密解密,有兴趣的朋友进来帮忙看看



//解密方法
//string mCode = @"153|14|14|6|4|1|1|1|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|
                            15|515|6|559|1112|501|2637|642|7971|3226|3591|3664|4029|3372|3518|
3372|3518|3372|3591|3226|7898|8117|7241|7095|7898|7606|8117|8409|8482";
public static string CodeReturn(string mCode)
        {
            string[] strArray = mCode.Split(new char[] { '|' });
            string str = "";
            long mlength = strArray.Length / 2;
            if (mlength == 0)
            {
                return "";
            }
            long[] numArray = CreatArray(mlength);
            if (mlength == 0)
            {
                return "";
            }
            for (int i = 0; i < mlength; i++)
            {
                Int16 tt = (Int16)(numArray[i] * Convert.ToInt16(strArray[i]));
                Int16 tt2 = Convert.ToInt16(strArray[(int)((IntPtr)(i + mlength))]);

                long num3 = ((tt + tt2) - 14) / 73;
                ASCIIEncoding encoding = new ASCIIEncoding();
                byte[] bytes = new byte[] { (byte)num3 };
                string str2 = encoding.GetString(bytes);
                str = str + str2;
            }
            return str;
        }

//我写的加密,未完成
        public static string GetKey(string strURL)
        {
            //int a=b*x+
            string str = string.Empty;
            ASCIIEncoding encoding = new ASCIIEncoding();
            byte[] bytes = encoding.GetBytes(strURL);
            long[] numArray = CreatArray(bytes.Length);
            for (int i = 0; i < bytes.Length; i++)
            {
                long num3 = bytes[i] * 73;
                num3 = num3 + 14;
                num3 = num3 - numArray[i];
            }

            return str;
        }
        public static long[] CreatArray(long mlength)
        {
            long[] numArray = new long[mlength];
            numArray[0] = 52;
            if (mlength > 1)
            {
                numArray[1] = 543;
            }
            for (long i = 2; i < mlength; i++)
            {
                numArray[(int)((IntPtr)i)] = numArray[(int)((IntPtr)(i - 1))] + numArray[(int)((IntPtr)(i - 2))];
            }
            return numArray;
        }



第一个是解密方法,我想写一个加密方法,对应加密。
GetKey 第二个方法是我写的,没写完,求大神指点! 解密 加密 encoding string byte --------------------编程问答-------------------- 牛人啊,啥时候俺也能达到啊 --------------------编程问答-------------------- 又是一堆代码呀 --------------------编程问答-------------------- 不要沉啊。。 --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 如果是单向加密的话我能做 --------------------编程问答-------------------- 如果是单向加密的话我 --------------------编程问答-------------------- 现在成熟的加密算法那么多 为什么要自己写呢? --------------------编程问答--------------------
引用 7 楼 jack280649233 的回复:
现在成熟的加密算法那么多 为什么要自己写呢?

+1024 的确是这样.都以为自己很厉害

aspnetpager就是一个例子 多好 一直在用.有的人 不知道是为了显示自己的功力强还是怎么的

打开源码 修改几下 就当自己写的了.. 太逗了 --------------------编程问答-------------------- --------------------编程问答-------------------- 很多现成的加密类,直接拿过来用,不明白为什么要自己写,牛人 --------------------编程问答-------------------- 你整理下,你写的加密的算法,在纸上画出来。算法整理好了,解密方法也就出来了 
补充:.NET技术 ,  .NET技术前瞻
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,