中國人民銀行成都分行 張文軍
由于歷史的原因,各企業都存在一些以前開發的業務處理系統,這些業務系統沒有考慮數據在局域網和廣域網傳輸時的機密性和完整性。要解決這些系統數據的安全傳輸問題,可以采用將應用系統逐個改造,增加加密處理過程的方法來實現,但這種方法需要投入大量的人力和物力;也可以采用主機加裝硬件加密裝置的方法實現,但這種方法需要增加大量的投資,并且擴展性差。因此,利用IPSec技術,在網絡層實現加密傳輸,適應已有的各種應用系統,保護已有的投資,成為我們的首選。
技術解析
IPSec協議是由IETF制定的一種基于IP協議的安全標準,用于保證IP數據包傳輸時的安全性。IPSec協議由安全協議(包括AH協議和ESP協議)、密鑰管理協議(如IKE)以及認證和加密算法組成。
IPSec支持傳輸模式和隧道模式。傳輸模式主要為上層協議提供保護,即對IP包的載荷進行保護,通常用于兩個主機之間的端對端通信。隧道模式提供對所有IP包的保護,即將整個IP包(含包頭和載荷)封裝,作為新的IP包的載荷進行傳送。
其中,封裝安全載荷是插入IP數據包內的一個協議頭,以便為IP提供機密性、數據源驗證、抗重播以及數據完整性等安全服務。驗證頭(AH)則用于為IP提供數據完整性、數據原始身份驗證和一些可選的、有限的抗重播服務。IKE 是IPSec的自動密鑰管理協議,它建立在Internet安全關聯和密鑰管理協議(ISAKMP)定義的框架上,定義出自己獨一無二的驗證加密材料生成技術,以及協商共享策略。
具體實現
目前,大部分單位的計算機都使用Windows 2000/XP操作系統,因此,我們通過在Windows主機上實現IPSec來確保數據加密傳輸和認證。我們采用NDIS技術在網絡層與數據鏈路層插入自己編寫的模塊的方式實現IPSec。NDIS是一種網絡接口規范,它將網絡硬件抽象為網絡驅動程序。它將用來管理硬件的底層驅動程序抽象為上層驅動程序,也維護著狀態信息和網絡驅動程序的參數。
我們實現的IPSec系統包括管理模塊、IKE密鑰交換模塊和IPSec驅動模塊。其中:管理模塊實現對安全關聯數據庫(SAD)和安全策略數據庫(SPD)的管理,也可以通過IKE模塊發起密鑰交換;IKE密鑰交換模塊完成安全關聯(SA)建立、協商、修改和刪除等工作;IPSec驅動模塊完成安全策略查詢(是否對IP包進行IPSec處理),IP數據包的加/解密,數據包封裝/拆封等工作。
利用IPSec技術,在網絡層實現IP數據包的加密傳輸和認證,有效地彌補了應用系統安全傳輸機制的不足,既提高了系統的安全性,又延長了應用系統的生命周期。