【正文】
對于在兩個網絡節(jié)點間的某一次通信鏈路 , 鏈路加密能為網上傳輸的數據提供安全保證。而且這種不安全性是互聯網存在基礎 —— TCP/IP 協議所固有的,包括一些基于 TCP/IP 的服務;另一方面,互聯網給眾多的商家?guī)砹藷o限的商機,互聯網把全世界連在了一起,走向互聯網就意味著走向了世界,這對于無數商家無疑是夢寐以求的好事,特別是對于中小企業(yè)。其實加密技術也不是什么新生事物,只不過應用在當今電子商務、電腦網絡中還是近幾年的歷史。 但我們必需清楚地認識到,這一切一切的安全問題我們不可一下全部找到解決方案,況且有的是根本無法找到徹底的解決方案,如病毒程序,因為任何反病毒程序都只 能在新病毒發(fā)現之后才能開發(fā)出來,目前還沒有哪能一家反病毒軟件開發(fā)商敢承諾他們的軟件能查殺所有已知的和未知的病毒,所以我們不能有等網絡安全了再上網的念頭,因為或許網絡不能有這么一日,就象“矛”與“盾”,網絡與病毒、黑客永遠是一對共存體。 Network munications 目 錄 論文總頁數: 23 頁 1 引言 ...................................................................................................................... 1 2 網絡數據加密技術 ................................................................................................. 1 鏈路加密 ..................................................................................................... 1 節(jié)點加密 ..................................................................................................... 2 端到端加密 .................................................................................................. 2 3 系統(tǒng)的總體分析 ..................................................................................................... 3 網際協議分析 .............................................................................................. 3 套接字結構分析 ........................................................................................... 4 Linux 下 IPv4 的實現 ..................................................................................... 6 DES 算法介紹 ............................................................................................... 8 4 系統(tǒng)的設計與實現 ............................................................................................... 12 系統(tǒng)的總體設計 ......................................................................................... 12 模塊部分的設計與實現 .............................................................................. 13 DES 算法實現 ............................................................................................. 15 對內核函數的修改 ..................................................................................... 17 5 網絡層加密系統(tǒng)的測試 ........................................................................................ 18 結 論 ................................................................................................................. 21 參考文獻 ................................................................................................................. 21 致 謝 ................................................................................................................. 22 聲 明 ................................................................................................................. 23 第 1 頁 共 23 頁 1 引言 隨著網絡技術的發(fā)展,網絡安全也就成為當今網絡社會的焦點中的焦點,幾乎沒有人不在談論網絡上的安全問題,病毒、黑客程序、郵件炸彈、遠程偵聽等這一切都無不讓人膽戰(zhàn)心驚。 Encrypt。 Linux kernel。最后,通過測試驗證了系統(tǒng)設計的正確性。在此基礎上設計和實現了一個位于 IP 層的端到端加密的系統(tǒng),整個系統(tǒng)嵌入到 Linux 內核中,可以通過內核模塊對其進行操作,來實現其功能。接著分析了網際協議、DES 加密算法和 Linux 下的網際協議的實現和套接字結構。本文修改 Linux 操作系統(tǒng)內核的網絡協議,以實現對網絡通信數據的加密。 畢 業(yè) 設 計 ( 論文 ) Linux 下的網絡層加密解密的實現 論 文 作 者 姓 名 : 申 請 學 位 專 業(yè) : 申 請 學 位 類 別 : 指導教師姓名(職稱): 論 文 提 交 日 期 : Linux 下的網絡層加密解密的實現 摘 要 隨著網絡技術在各行各業(yè)中的廣泛應用,網絡安全逐漸成為一個重要的問題。 Linux 是一個優(yōu)秀的、開源的操作系統(tǒng),非常適合作為一些新技術的測試平臺。先介紹了網絡數據加密的發(fā)展和現狀。然后,實現了DES 算法,對內核進行了修改,添加了一些功能性內核模塊。該系統(tǒng)的主要特點是針對 IP 地址判斷是否進行加密操作。 關鍵字: 網絡層; Linux 內核;端到端;加密;模塊;網絡通信 The Implementation of Encryption and Decryption at Net Layer based on Linux Abstract With the abroad use of work technology in various trades, work security is being an important issue. Linux is an excellent Opensource Operating System and is very suitable for the test of some new technology. In this paper, the work protocol stack of the Linux operating system kernel is changed to encrypt work munication data. Firstly, introduces the development and actuality of the work data encryption. Secondly, analyses the iner protocol, the DES encryption algorithm, and the implementation of inter protocol and the socket structure in the linux kernel. Whereafter, realizes the DES algorithm, changes the kernel, and adds some functional kernel modules. And then, an IP endtoend encryption system is designed and implemented, and it is embeded in the linux kernel, we can achieve its function through kernel module. Lastly, a test is given to testify the correctness of the design. Key Words: Net layer。 Endtoend。 Module。病毒、黑客的猖獗使身處今日網絡社會的人們感覺到談網色變,無所適從。 現代的網絡加密技術就是適應了網絡安全的需要而應運產生的,它為我們進行一般的電子商務活動提供了安全保障,如在網絡中進行文件傳輸、電子郵件往來和進行合同文本的簽署等。 當今網絡社會選擇加密已是我 們別無選擇,其一是我們知道在互聯網上進行文件傳輸、電子郵件商務往來存在許多不安全因素,特別是對于一些大公司和一些機密文件在網絡上傳輸。為了解決這一對矛盾、為了能在安全的基礎上大開這通向世界之門,我們只好選擇了數據加密和基于加密技術的數字簽名。對于鏈路加密 (又稱在線加密 ), 所有消息在被傳輸之前進行加密 , 在每一個節(jié)點對接收到的消息進行解密 , 然后先使用下一個鏈路的密鑰對消息進行加密 , 再進行傳輸。 由于在每一個中間傳輸節(jié)點消息均被解密后重新進行加密 , 因此 , 包括路由信息在內的鏈路上的所有數據均以密文形式出現。由于填充技術的使用以及填充字 符在不需要傳輸數據的情況下就可以進行加密 ,這使得消息的頻率和長度特性得以掩蓋 , 從而可以防止對 第 2 頁 共 23 頁 通信業(yè)務進行分析。鏈路加密通常用在點對點的同步或異步線路上 , 它要求先對在鏈路兩端的加密設備進行同步 , 然后使用一種鏈模式對鏈路上傳輸的數據進行加密。 在線路 /信號經常不通的海外或衛(wèi)星網絡中 ,鏈路上的加密設備需要頻繁地進行同步 , 帶來的后果是數據丟失或重傳。 在一個網絡節(jié)點 , 鏈路加密僅在通信鏈路上提供安全性 , 消息以明文形式存在 , 因此所有節(jié)點在物理上必須是安全的 , 否則就會泄漏明文內容。 在傳統(tǒng)的加密算法中 , 用于解密消息的密鑰與用于加密的密鑰是相同的 ,該密鑰必須被秘密保存 , 并按一 定規(guī)則進行變化。而網絡節(jié)點地理分布的廣闊性使得這一過程變得復雜 , 同時增加了密鑰連續(xù)分配時的費用。因為要對所有傳輸的數據進行加密,所以加密過程對用戶是透明的。 節(jié)點加密要求報頭和路由信息以明文形式傳輸 , 以便中間節(jié)點能得到如何處理消息的信息。 端到端加密 端到端加密允許數據在從源點到終點的傳輸過程中始終以密文形式存在。 端到端加密系統(tǒng)的價格便宜些 , 并且與鏈路加密和節(jié)點加密相比更可靠 ,更 第 3 頁 共 23 頁 容易設計、實現和維護。此外 ,從用戶對安全需求的直覺上講 , 端到端加密更自然些。 端到端加密系統(tǒng)通常不允許對消息的目的地址進行加密 , 這是因為每一個消息所經過的節(jié)點都要用此地址來確定 如何傳輸消息。 3 系統(tǒng)的總體分析 網際協議分析 網絡層是 TCP/IP 協議棧的核心組件,網際協議( Inter Protocol)是網絡層的最重要協議。 IP 的首要任務是:隱藏各種數據傳輸層之間的差異,并且為不同的網絡技術提供一種統(tǒng)一的表示。 IP 的開發(fā)思路是,即使有一些傳輸故障存在,仍能維持兩個之間的通信。 IP 的頭字段如圖 1: ? 4 位版本號:表示 IP 的版本,現有 IPv4 和 IPv6; 圖 1 IP首部 第 4 頁 共 23 頁 ? 4 位首部長:表示 IP 首部長,值域為 5— 15