• <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

            今天幫同學做課程設計,寫了一天代碼。
            題目: 編寫一個加密的即時通訊程序(難度系數0.8
            被困擾在加密的算法中,開始想用RSA算法,因為RSA加密算法 是另外一個題目。。可以順便再幫另外一個同學寫一下,,結果搞了半天發現RSA用來加密即使通訊消息不太合適,,
            至少以我的能力寫不出一個速度很快的加密解密函數,既然是即使通訊工具,速度慢的和蝸牛似的還通訊個P,,
            不過其間查了大量資料對RSA算法的特性有了一定的了解,其主要難度在于大數的計算,這個計算真不是一般的麻煩,想到這里覺得自己的數學功底太弱了
            搜了那么多資料現在還能記起來的比較實用的一個公式是: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數組中

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

                    des.Key 
            = ASCIIEncoding.ASCII.GetBytes(KeyWord);  //建立加密對象的密鑰和偏移量
                    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);  //建立加密對象的密鑰和偏移量,此值重要,不能修改  
                    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對象,CreateDecrypt使用的是流對象,必須把解密后的文本變成流對象  

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


            //傳進來的參數就是你要加密的那個字符串和密鑰


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

            搞了半天自己的課程設計都沒有寫好,趕緊去搞定~~

            posted on 2011-06-22 17:11 mr_chen 閱讀(470) 評論(0)  編輯 收藏 引用 所屬分類: 加密解密
            <2025年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            常用鏈接

            留言簿

            隨筆檔案(14)

            文章分類(8)

            文章檔案(11)

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久综合亚洲鲁鲁五月天| 97热久久免费频精品99| 久久久久人妻一区精品| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 久久久久久亚洲精品不卡| 久久久久久久久66精品片| 国产成人久久激情91| 狠狠色丁香久久婷婷综合_中 | 久久AV高清无码| 国产999精品久久久久久| 国产亚洲美女精品久久久2020| 99久久精品国产麻豆| 亚洲午夜无码久久久久小说| 久久久婷婷五月亚洲97号色| 久久国产成人亚洲精品影院| 久久久久久亚洲AV无码专区| 三级片免费观看久久| 免费观看成人久久网免费观看| 亚洲欧美另类日本久久国产真实乱对白| 久久99久久99精品免视看动漫| 亚洲国产天堂久久综合网站| 久久棈精品久久久久久噜噜| 香蕉久久夜色精品国产尤物| 久久91精品综合国产首页| 国产91久久精品一区二区| 一本色道久久99一综合| 色妞色综合久久夜夜| 亚洲AV伊人久久青青草原| 国产三级观看久久| 青青草国产精品久久| 久久久久中文字幕| 99久久精品国产麻豆| 国产精品久久久久久久久鸭| 午夜精品久久久久久毛片| 精品国产青草久久久久福利| 婷婷国产天堂久久综合五月| 亚洲国产精品成人久久蜜臀 | 久久99国产精品久久久| 精品久久久久久久久午夜福利| 久久人人爽人人爽人人片AV东京热 | 国产精品美女久久久久久2018|