<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計(jì)應(yīng)用 > 數(shù)據(jù)加密中的DES加密算法詳解

          數(shù)據(jù)加密中的DES加密算法詳解

          作者: 時(shí)間:2012-10-23 來源:網(wǎng)絡(luò) 收藏

          [0].ToCharArray());

          本文引用地址:http://www.ex-cimer.com/article/202130.htm

          // 方式一:調(diào)用默認(rèn)的DES實(shí)現(xiàn)方法

          DES des = DES.Create();

          // 方式二:直接使用DES_CSP()實(shí)現(xiàn)DES的實(shí)體

          //DES_CSP DES = new DES_CSP();
          // 初始化DES加密的密鑰和一個(gè)隨機(jī)的、8比特的初始化向量(IV)
          Byte[] key = {0x01, 0x23, 0x45, 0x67, 0x89, 0xab,
          0xcd, 0xef};
          Byte[] IV = {0x12, 0x34, 0x56, 0x78, 0x90, 0xab,
          0xcd, 0xef};
          des.Key = key;
          des.IV = IV;
          // 建立加密流
          SymmetricStreamEncryptor sse = des.CreateEncryptor();
          // 使用CryptoMemoryStream方法獲取加密過程的輸出
          CryptoMemoryStream cms = new CryptoMemoryStream();
          // 將SymmetricStreamEncryptor流中的加密數(shù)據(jù)輸出到
          CryptoMemoryStream中
          sse.SetSink(cms);
          // 加密完畢,將結(jié)果輸出到控制臺
          sse.Write(inputByteArray);
          sse.CloseStream();
          // 獲取加密數(shù)據(jù)
          byte[] encryptedData = cms.Data;
          // 輸出加密后結(jié)果
          Console.WriteLine(加密結(jié)果:);
          for (int i = 0; i encryptedData.Length; i++) {
          Console.Write({0:X2} ,encryptedData[i]);
          }
          Console.WriteLine();
          //上面演示了如何進(jìn)行加密,下面演示如何進(jìn)行解密
          SymmetricStreamDecryptor ssd = des.CreateDecryptor();
          cms = new CryptoMemoryStream();
          ssd.SetSink(cms);
          ssd.Write(encryptedData);
          ssd.CloseStream();
          byte[] decryptedData = cms.Data;
          char[] decryptedCharArray = utf8Encoding.GetChars(decryptedData);
          Console.WriteLine(解密后數(shù)據(jù):);
          Console.Write(decryptedCharArray);
          Console.WriteLine(); }
          }
          編譯:
          D:“csharpcsc des_demo.cs
          Microsoft (R) C# Compiler Version 7.00.8905 [NGWS runtime
          2000.14.1812.10]
          Copyright (C) Microsoft Corp 2000. All rights reserved.
          運(yùn)行實(shí)例:
          D:“csharpdes_demo.exe 使用C#編寫DES加密程序的framework
          加密結(jié)果:
          3D 22 64 C6 57 D1 C4 C3 CF 77 CE 2F D0 E1 78 2A 4D ED 7A A8
          83 F9 0E 14 E1 BA 38
          7B 06 41 8D B5 E9 3F 00 0D C3 28 D1 F9 6D 17 4B 6E A7 41 68
          40
          解密后數(shù)據(jù)

          使用C#編寫DES加密程序的

          DES算法具有極高的安全性,到目前為止,除了用窮舉搜索法對DES算法進(jìn)行攻擊外,還沒有發(fā)現(xiàn)更有效的辦法。通過窮盡搜索空間,可獲得總共256(大約7.2×1016)個(gè)可能的密鑰。如果每秒能檢測一百萬個(gè)的話,需要2000年完成檢測??梢?這是很難實(shí)現(xiàn)的。當(dāng)然,隨著科學(xué)技術(shù)的發(fā)展,當(dāng)出現(xiàn)超高速計(jì)算機(jī)后,可以考慮把DES密鑰的長度再增長一些,以此來達(dá)到更高的保密程度。隨著信息化和數(shù)字化社會的發(fā)展,隨著計(jì)算機(jī)和Inte rnet的普及,密碼學(xué)必將在國家安全、經(jīng)濟(jì)交流、網(wǎng)絡(luò)安全及人民生活等方面發(fā)揮更大作用。

          參考文獻(xiàn)

          [1]葉忠杰:計(jì)算機(jī)網(wǎng)絡(luò)安全技術(shù)(第二版).科學(xué)出版社

          王寶會王大印等:新世紀(jì)計(jì)算機(jī)信息安全教程.電子工業(yè)出版社

          張基溫:信息系統(tǒng)安全原理.中國水利水電出版社

          顧巧論蔡振山賈春福:計(jì)算機(jī)網(wǎng)絡(luò)安全.科學(xué)出版社


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();