• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 14,  comments - 4,  trackbacks - 0

            今天幫同學(xué)做課程設(shè)計(jì),寫了一天代碼。
            題目: 編寫一個(gè)加密的即時(shí)通訊程序(難度系數(shù)0.8
            被困擾在加密的算法中,開始想用RSA算法,因?yàn)镽SA加密算法 是另外一個(gè)題目。。可以順便再幫另外一個(gè)同學(xué)寫一下,,結(jié)果搞了半天發(fā)現(xiàn)RSA用來加密即使通訊消息不太合適,,
            至少以我的能力寫不出一個(gè)速度很快的加密解密函數(shù),既然是即使通訊工具,速度慢的和蝸牛似的還通訊個(gè)P,,
            不過其間查了大量資料對(duì)RSA算法的特性有了一定的了解,其主要難度在于大數(shù)的計(jì)算,這個(gè)計(jì)算真不是一般的麻煩,想到這里覺得自己的數(shù)學(xué)功底太弱了
            搜了那么多資料現(xiàn)在還能記起來的比較實(shí)用的一個(gè)公式是:NR mod D = ( ( N mod D )R ) mod D 

            在CSDN某人的博客上看到的,里面還有很多推論地址:http://blog.csdn.net/fireseed/archive/2005/03/23/327444.aspx

            后來選擇了DEC加密算法,代碼來至某博客,。忘記哪里弄來的了。
            代碼如下:


                
            public string JiaMi(string pToEncrypt,string KeyWord)
                
            {
                    DESCryptoServiceProvider des 
            = new DESCryptoServiceProvider();  //把字符串放到byte數(shù)組中

                    
            byte[] inputByteArray = Encoding.Default.GetBytes(pToEncrypt);
                    
            //byte[]  inputByteArray=Encoding.Unicode.GetBytes(pToEncrypt);  

                    des.Key 
            = ASCIIEncoding.ASCII.GetBytes(KeyWord);  //建立加密對(duì)象的密鑰和偏移量
                    des.IV = ASCIIEncoding.ASCII.GetBytes(KeyWord);   //原文使用ASCIIEncoding.ASCII方法的GetBytes方法
                    MemoryStream ms = new MemoryStream();     //使得輸入密碼必須輸入英文文本
                    CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);

                    cs.Write(inputByteArray, 
            0, inputByteArray.Length);
                    cs.FlushFinalBlock();

                    StringBuilder ret 
            = new StringBuilder();
                    
            foreach (byte b in ms.ToArray())
                    
            {
                        ret.AppendFormat(
            "{0:X2}", b);
                    }

                    
            //ret.ToString();
                    return ret.ToString();
                }

            //DEC 解密過程
                public string JieMi(string pToDecrypt,string KeyWord)
                
            {
                    DESCryptoServiceProvider des 
            = new DESCryptoServiceProvider();

                    
            byte[] inputByteArray = new byte[pToDecrypt.Length / 2];
                    
            for (int x = 0; x < pToDecrypt.Length / 2; x++)
                    
            {
                        
            int i = (Convert.ToInt32(pToDecrypt.Substring(x * 22), 16));
                        inputByteArray[x] 
            = (byte)i;
                    }


                    des.Key 
            = ASCIIEncoding.ASCII.GetBytes(KeyWord);  //建立加密對(duì)象的密鑰和偏移量,此值重要,不能修改  
                    des.IV = ASCIIEncoding.ASCII.GetBytes(KeyWord);
                    MemoryStream ms 
            = new MemoryStream();
                    CryptoStream cs 
            = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write);

                    cs.Write(inputByteArray, 
            0, inputByteArray.Length);
                    cs.FlushFinalBlock();

                    StringBuilder ret 
            = new StringBuilder();  //建立StringBuild對(duì)象,CreateDecrypt使用的是流對(duì)象,必須把解密后的文本變成流對(duì)象  

                    
            return System.Text.Encoding.Default.GetString(ms.ToArray());
                }


            //傳進(jìn)來的參數(shù)就是你要加密的那個(gè)字符串和密鑰


            后來還看了MD5加密算法,主要是想搞一個(gè)注冊(cè)登錄,用來加密用戶密碼。
            在查資料的過程中在CSDN某人的博客上看到一條有趣的信息,寫的是某MD5破解網(wǎng)站的廣告,大概的意思就是,他們那個(gè)網(wǎng)站把所有手機(jī)號(hào)碼,生日,以及幾位的數(shù)字和字母的所有組合的MD5碼都計(jì)算出來了,總共有256億條信息好像。。還在不斷的增長當(dāng)中,可怕的信息,。,這樣一來如果得到MD5加密碼,一般的用戶密碼都能找出來了。。
            看來算法一旦公布就算是銅墻鐵壁也有人會(huì)拼死去撞,,真可怕

            搞了半天自己的課程設(shè)計(jì)都沒有寫好,趕緊去搞定~~

            posted on 2011-06-22 17:11 mr_chen 閱讀(462) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 加密解密

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿

            隨筆檔案(14)

            文章分類(8)

            文章檔案(11)

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            色婷婷久久综合中文久久蜜桃av| 久久成人小视频| 国产精品99久久久精品无码 | 久久国产AVJUST麻豆| 久久精品一区二区影院| 国产成人久久777777| 国产午夜精品久久久久九九| 欧美777精品久久久久网| 国产69精品久久久久9999| 99久久er这里只有精品18| 狠狠色综合网站久久久久久久高清 | 久久天天躁夜夜躁狠狠| 国产精品久久毛片完整版| 久久国产精品77777| 国产亚州精品女人久久久久久 | 久久无码国产| 免费国产99久久久香蕉| 91久久九九无码成人网站| 久久久精品国产免大香伊 | 97久久天天综合色天天综合色hd| 久久精品国产亚洲AV无码麻豆| 99久久国产综合精品麻豆| 中文字幕一区二区三区久久网站| 久久精品国产一区二区三区| 久久无码AV中文出轨人妻| 国产精品久久久久影院色| 久久精品综合一区二区三区| 久久综合色老色| 国产综合成人久久大片91| 久久笫一福利免费导航| 99久久婷婷国产综合亚洲| 国产精品女同一区二区久久| 久久久久久久免费视频| 久久精品9988| 香港aa三级久久三级| 亚洲日本va午夜中文字幕久久 | 日本久久久久久久久久| 韩国三级中文字幕hd久久精品 | 国产偷久久久精品专区| 日韩亚洲欧美久久久www综合网| 婷婷国产天堂久久综合五月|