導航:首頁 > 源碼編譯 > ipsec加密演算法

ipsec加密演算法

發布時間:2023-06-05 02:02:05

㈠ IPSec是什麼它是否是一種新的加密形式

ipsec是Internet 協議安全性,是一種開放標準的框架結構,通過使用加密的安全服務以確保在 Internet 協議 (IP) 網路上進行保密而安全的通訊。
IPSec 是安全聯網的長期方向。它通過端對端的安全性來提供主動的保護以防止專用網路與 Internet 的攻擊。在通信中,只有發送方和接收方才是唯一必須了解 IPSec 保護的計算機。在 Windows XP 和 Windows Server 2003 家族中,IPSec 提供了一種能力,以保護工作組、區域網計算機、域客戶端和伺服器、分支機構(物理上為遠程機構)、Extranet 以及漫遊客戶端之間的通信。
IPSec 基於端對端的安全模式,在源 IP 和目標 IP 地址之間建立信任和安全性。
不是新的加密形式。 詳細如下;
IPSec 是安全聯網的長期方向。它通過端對端的安全性來提供主動的保護以防止專用網路與 Internet 的攻擊。在通信中,只有發送方和接收方才是唯一必須了解 IPSec 保護的計算機。在 Windows XP 和 Windows Server 2003 家族中,IPSec 提供了一種能力,以保護工作組、區域網計算機、域客戶端和伺服器、分支機構(物理上為遠程機構)、Extranet 以及漫遊客戶端之間的通信。
編輯本段作用目標
1、
保護 IP 數據包的內容。
2、
通過數據包篩選及受信任通訊的實施來防禦網路攻擊。 這兩個目標都是通過使用基於加密的保護服務、安全協議與動態密鑰管理來實現的。這個基礎為專用網路計算機、域、站點、遠程站點、Extranet 和撥號用戶之間的通信提供了既有力又靈活的保護。它甚至可以用來阻礙特定通訊類型的接收和發送。
3、
其中以接收和發送最為重要。
編輯本段常見問題
IPSec 基於端對端的安全模式,在源 IP 和目標 IP 地址之間建立信任和安全性。考慮認為 IP 地址本身沒有必要具有標識,但 IP 地址後面的系統必須有一個通過身份驗證程序驗證過的標識。只有發送和接收的計算機需要知道通訊是安全的。每台計算機都假定進行通訊的媒體不安全,因此在各自的終端上實施安全設置。除非兩台計算機之間正在進行防火牆類型的數據包篩選或網路地址轉換,否則僅從源向目標路由數據的計算機不要求支持 IPSec。該模式允許為下列企業方案成功部署 IPSec: 區域網 (LAN):客戶端/伺服器和對等網路 廣域網 (WAN):路由器到路由器和網關到網關 遠程訪問:撥號客戶機和從專用網路訪問 Internet 通常,兩端都需要 IPSec 配置(稱為 IPSec 策略)來設置選項與安全設置,以允許兩個系統對如何保護它們之間的通訊達成協議。Microsoft® Windows® 2000、Windows XP 和 Windows Server 2003 家族實施 IPSec 是基於「Internet 工程任務組 (IETF)」IPSec 工作組開發的業界標准。IPSec 相關服務部分是由 Microsoft 與 Cisco Systems, Inc. 共同開發的。 IPSec 協議不是一個單獨的協議,它給出了應用於IP層上網路數據安全的一整套體系結構,包括網路認證協議 Authentication Header(AH)、封裝安全載荷協議Encapsulating Security Payload(ESP)、密鑰管理協議Internet Key Exchange (IKE)和用於網路認證及加密的一些演算法等。IPSec 規定了如何在對等層之間選擇安全協議、確定安全演算法和密鑰交換,向上提供了訪問控制、數據源認證、數據加密等網路安全服務。
一、安全特性
IPSec的安全特性主要有:
·不可否認性
"不可否認性"可以證實消息發送方是唯一可能的發送者,發送者不能否認發送過消息。"不可否認性"是採用公鑰技術的一個特徵,當使用公鑰技術時,發送方用私鑰產生一個數字簽名隨消息一起發送,接收方用發送者的公鑰來驗證數字簽名。由於在理論上只有發送者才唯一擁有私鑰,也只有發送者才可能產生該數字簽名,所以只要數字簽名通過驗證,發送者就不能否認曾發送過該消息。但"不可否認性"不是基於認證的共享密鑰技術的特徵,因為在基於認證的共享密鑰技術中,發送方和接收方掌握相同的密鑰。
·反重播性
"反重播"確保每個IP包的唯一性,保證信息萬一被截取復制後,不能再被重新利用、重新傳輸回目的地址。該特性可以防止攻擊者截取破譯信息後,再用相同的信息包冒取非法訪問權(即使這種冒取行為發生在數月之後)。
·數據完整性
防止傳輸過程中數據被篡改,確保發出數據和接收數據的一致性。IPSec利用Hash函數為每個數據包產生一個加密檢查和,接收方在打開包前先計算檢查和,若包遭篡改導致檢查和不相符,數據包即被丟棄。
·數據可靠性(加密)
在傳輸前,對數據進行加密,可以保證在傳輸過程中,即使數據包遭截取,信息也無法被讀。該特性在IPSec中為可選項,與IPSec策略的具體設置相關。
·認證
數據源發送信任狀,由接收方驗證信任狀的合法性,只有通過認證的系統才可以建立通信連接。
二、基於電子證書的公鑰認證
一個架構良好的公鑰體系,在信任狀的傳遞中不造成任何信息外泄,能解決很多安全問題。IPSec與特定的公鑰體系相結合,可以提供基於電子證書的認證。公鑰證書認證在Windows 2000中,適用於對非Windows 2000主機、獨立主機,非信任域成員的客戶機、或者不運行Kerberos v5認證協議的主機進行身份認證。
三、預置共享密鑰認證
IPSec也可以使用預置共享密鑰進行認證。預共享意味著通信雙方必須在IPSec策略設置中就共享的密鑰達成一致。之後在安全協商過程中,信息在傳輸前使用共享密鑰加密,接收端使用同樣的密鑰解密,如果接收方能夠解密,即被認為可以通過認證。但在Windows 2000 IPSec策略中,這種認證方式被認為不夠安全而一般不推薦使用。
四、公鑰加密
IPSec的公鑰加密用於身份認證和密鑰交換。公鑰加密,也被稱為"不對稱加密法",即加解密過程需要兩把不同的密鑰,一把用來產生數字簽名和加密數據,另一把用來驗證數字簽名和對數據進行解密。 使用公鑰加密法,每個用戶擁有一個密鑰對,其中私鑰僅為其個人所知,公鑰則可分發給任意需要與之進行加密通信的人。例如:A想要發送加密信息給B,則A需要用B的公鑰加密信息,之後只有B才能用他的私鑰對該加密信息進行解密。雖然密鑰對中兩把鑰匙彼此相關,但要想從其中一把來推導出另一把,以目前計算機的運算能力來看,這種做法幾乎完全不現實。因此,在這種加密法中,公鑰可以廣為分發,而私鑰則需要仔細地妥善保管。
五、Hash函數和數據完整性
Hash信息驗證碼HMAC(Hash message authentication codes)驗證接收消息和發送消息的完全一致性(完整性)。這在數據交換中非常關鍵,尤其當傳輸媒介如公共網路中不提供安全保證時更顯其重要性。 HMAC結合hash演算法和共享密鑰提供完整性。Hash散列通常也被當成是數字簽名,但這種說法不夠准確,兩者的區別在於:Hash散列使用共享密鑰,而數字簽名基於公鑰技術。hash演算法也稱為消息摘要或單向轉換。稱它為單向轉換是因為: 1)雙方必須在通信的兩個端頭處各自執行Hash函數計算; 2)使用Hash函數很容易從消息計算出消息摘要,但其逆向反演過程以目前計算機的運算能力幾乎不可實現。 Hash散列本身就是所謂加密檢查和或消息完整性編碼MIC(Message Integrity Code),通信雙方必須各自執行函數計算來驗證消息。舉例來說,發送方首先使用HMAC演算法和共享密鑰計算消息檢查和,然後將計算結果A封裝進數據包中一起發送;接收方再對所接收的消息執行HMAC計算得出結果B,並將B與A進行比較。如果消息在傳輸中遭篡改致使B與A不一致,接收方丟棄該數據包。 有兩種最常用的hash函數: ·HMAC-MD5 MD5(消息摘要5)基於RFC1321。MD5對MD4做了改進,計算速度比MD4稍慢,但安全性能得到了進一步改善。MD5在計算中使用了64個32位常數,最終生成一個128位的完整性檢查和。 ·HMAC-SHA 安全Hash演算法定義在NIST FIPS 180-1,其演算法以MD5為原型。 SHA在計算中使用了79個32位常數,最終產生一個160位完整性檢查和。SHA檢查和長度比MD5更長,因此安全性也更高。
六、加密和數據可靠性
IPSec使用的數據加密演算法是DES--Data Encryption Standard(數據加密標准)。DES密鑰長度為56位,在形式上是一個64位數。DES以64位(8位元組)為分組對數據加密,每64位明文,經過16輪置換生成64位密文,其中每位元組有1位用於奇偶校驗,所以實際有效密鑰長度是56位。 IPSec還支持3DES演算法,3DES可提供更高的安全性,但相應地,計算速度更慢。
七、密鑰管理
·動態密鑰更新
IPSec策略使用"動態密鑰更新"法來決定在一次通信中,新密鑰產生的頻率。動態密鑰指在通信過程中,數據流被劃分成一個個"數據塊",每一個"數據塊"都使用不同的密鑰加密,這可以保證萬一攻擊者中途截取了部分通信數據流和相應的密鑰後,也不會危及到所有其餘的通信信息的安全。動態密鑰更新服務由Internet密鑰交換IKE(Internet Key Exchange)提供,詳見IKE介紹部分。 IPSec策略允許專家級用戶自定義密鑰生命周期。如果該值沒有設置,則按預設時間間隔自動生成新密鑰。
·密鑰長度
密鑰長度每增加一位,可能的密鑰數就會增加一倍,相應地,破解密鑰的難度也會隨之成指數級加大。IPSec策略提供多種加密演算法,可生成多種長度不等的密鑰,用戶可根據不同的安全需求加以選擇。
·Diffie-Hellman演算法
要啟動安全通訊,通信兩端必須首先得到相同的共享密鑰(主密鑰),但共享密鑰不能通過網路相互發送,因為這種做法極易泄密。 Diffie-Hellman演算法是用於密鑰交換的最早最安全的演算法之一。DH演算法的基本工作原理是:通信雙方公開或半公開交換一些准備用來生成密鑰的"材料數據",在彼此交換過密鑰生成"材料"後,兩端可以各自生成出完全一樣的共享密鑰。在任何時候,雙方都絕不交換真正的密鑰。 通信雙方交換的密鑰生成"材料",長度不等,"材料"長度越長,所生成的密鑰強度也就越高,密鑰破譯就越困難。 除進行密鑰交換外,IPSec還使用DH演算法生成所有其他加密密鑰。 AH報頭欄位包括: ·Next Header(下一個報頭): 識別下一個使用IP協議號的報頭,例如,Next Header值等於"6",表示緊接其後的是TCP報頭。 ·Length(長度): AH報頭長度。 ·Security Parameters Index (SPI,安全參數索引): 這是一個為數據報識別安全關聯的 32 位偽隨機值。SPI 值 0 被保留來表明"沒有安全關聯存在"。 ·Sequence Number(序列號):從1開始的32位單增序列號,不允許重復,唯一地標識了每一個發送數據包,為安全關聯提供反重播保護。接收端校驗序列號為該欄位值的數據包是否已經被接收過,若是,則拒收該數據包。 ·Authentication Data(AD,認證數據): 包含完整性檢查和。接收端接收數據包後,首先執行hash計算,再與發送端所計算的該欄位值比較,若兩者相等,表示數據完整,若在傳輸過程中數據遭修改,兩個計算結果不一致,則丟棄該數據包。
編輯本段數據包結構
如圖二所示,AH報頭插在IP報頭之後,TCP,UDP,或者ICMP等上層協議報頭之前。一般AH為整個數據包提供完整性檢查,但如果IP報頭中包含"生存期(Time To Live)"或"服務類型(Type of Service)"等值可變欄位,則在進行完整性檢查時應將這些值可變欄位去除。 圖2 AH為整個數據包提供完整性檢查
一、ESP協議結構
ESP(Encapsulating Security Payload)為IP數據包提供完整性檢查、認證和加密,可以看作是"超級 AH", 因為它提供機密性並可防止篡改。ESP服務依據建立的安全關聯(SA)是可選的。然而,也有一些限制: ·完整性檢查和認證一起進行。 ·僅當與完整性檢查和認證一起時,"重播(Replay)"保護才是可選的。 ·"重播"保護只能由接收方選擇。 ESP的加密服務是可選的,但如果啟用加密,則也就同時選擇了完整性檢查和認證。因為如果僅使用加密,入侵者就可能偽造包以發動密碼分析攻擊。 ESP可以單獨使用,也可以和AH結合使用。一般ESP不對整個數據包加密,而是只加密IP包的有效載荷部分,不包括IP頭。但在端對端的隧道通信中,ESP需要對整個數據包加密。 如圖三所示,ESP報頭插在IP報頭之後,TCP或UDP等傳輸層協議報頭之前。ESP由IP協議號"50"標識。 圖3 ESP報頭、報尾和認證報尾 ESP報頭欄位包括: ·Security Parameters Index (SPI,安全參數索引):為數據包識別安全關聯。 ·Sequence Number(序列號):從1開始的32位單增序列號,不允許重復,唯一地標識了每一個發送數據包,為安全關聯提供反重播保護。接收端校驗序列號為該欄位值的數據包是否已經被接收過,若是,則拒收該數據包。 ESP報尾欄位包括: ·Padding(擴展位):0-255個位元組。DH演算法要求數據長度(以位為單位)模512為448,若應用數據長度不足,則用擴展位填充。 ·Padding Length(擴展位長度):接收端根據該欄位長度去除數據中擴展位。 ·Next Header(下一個報頭):識別下一個使用IP協議號的報頭,如TCP或UDP。 ESP認證報尾欄位: ·Authentication Data(AD,認證數據): 包含完整性檢查和。完整性檢查部分包括ESP報頭、有效載荷(應用程序數據)和ESP報尾。見圖四。 圖4 ESP的加密部分和完整性檢查部分 如上圖所示,ESP報頭的位置在IP報頭之後,TCP,UDP,或者ICMP等傳輸層協議報頭之前。如果已經有其他IPSec協議使用,則ESP報頭應插在其他任何IPSec協議報頭之前。ESP認證報尾的完整性檢查部分包括ESP報頭、傳輸層協議報頭,應用數據和ESP報尾,但不包括IP報頭,因此ESP不能保證IP報頭不被篡改。ESP加密部分包括上層傳輸協議信息、數據和ESP報尾。
二、ESP隧道模式和AH隧道模式
以上介紹的是傳輸模式下的AH協議和ESP協議,ESP隧道模式和AH隧道模式與傳輸模式略有不同。 在隧道模式下,整個原數據包被當作有效載荷封裝了起來,外面附上新的IP報頭。其中"內部"IP報頭(原IP報頭)指定最終的信源和信宿地址,而"外部"IP報頭(新IP報頭)中包含的常常是做中間處理的安全網關地址。 與傳輸模式不同,在隧道模式中,原IP地址被當作有效載荷的一部分受到IPSec的安全保護,另外,通過對數據加密,還可以將數據包目的地址隱藏起來,這樣更有助於保護端對端隧道通信中數據的安全性。 ESP隧道模式中簽名部分(完整性檢查和認證部分)和加密部分分別如圖所示。ESP的簽名不包括新IP頭。 圖5 ESP隧道模式 下圖標示出了AH隧道模式中的簽名部分。AH隧道模式為整個數據包提供完整性檢查和認證,認證功能優於ESP。但在隧道技術中,AH協議很少單獨實現,通常與ESP協議組合使用。 圖6 AH隧道模式

㈡ 部署IPSEC VPN 時,配置什麼樣的安全演算法可以提供數據加密

配置「3DES」安全演算法可以提供數據加密。

3DES是三重數據加密演算法塊密碼的通稱。它相當於是對每個數據塊應用三次DES加密演算法。由於計算機運算能力的增強,原版DES密碼的密鑰長度變得容易被暴力破解。

3DES即是設計用來提供一種相對簡單的方法,即通過增加DES的密鑰長度來避免類似的攻擊,而不是設計一種全新的塊密碼演算法。

(2)ipsec加密演算法擴展閱讀

因為DES加密慢慢被發現存在較大的安全性,在一定的時間內可以通過暴力窮舉進行破解。為此出現了改進版的3DES,它並不是一個全新的演算法,可以被認為是DES加密演算法的范疇。DES的密鑰長度為64位,長度較短,比較容易被暴力窮舉破解,所以可以通過增加密鑰的長度來提高安全性。

密鑰長度增加到兩倍的稱為2DES,但是這種演算法應用得很少,應用得比較多的是3重DES,也叫3DES,密鑰長度為192位。

3DES的加密過程為:加密->解密->加密,當3DES的密鑰是DES密鑰的三次重復的時候,3DES跟DES完全兼容,DES加密的,3DES能夠解密;3DES加密的,DES能夠解密。

㈢ ipsec xauth原理

IPsec(IPSecurity)是IETF制定的三層隧道加密協議,
它為Internet上傳輸的數據提供了高質量的、可互操作的、基於密碼學的安全保證。特定的通信方之間在IP層通過加密與數據源認證等方式,
ipsec的工作原理:
加密演算法和身份驗證方法均有SA指定。
用於兩種模式:傳輸模式和隧道模式

㈣ IPsec是如何保證機密性的

IPsec機密性保護的功臣ESP

與認證頭(AH)協議一樣,設計封裝安全載荷(ESP)協議的目的也是為了提高Internet協議(IP)的安全性。ESP提供數據機密性、數據源認證、無連接完整性、抗重放攻擊和有限的數據流機密性等服務。實際上,ESP提供的服務和AH的類似,但增加了兩個額外的服務:數據機密性服務和有限的數據流機密性服務。機密性服務通過使用密碼演算法加密IP數據報的相關部分來實現。數據流機密性由隧道模式下的機密性服務提供。
ESP中用來加密數據報的密碼演算法都毫無例外地使用對稱密鑰體制。公鑰密碼演算法涉及到計算量非常大的大整數模指數運算,大整數的規模超過300位十進制數字。而對稱密碼演算法主要使用初級的操作(異或、逐位與、位循環等),無論以軟體還是硬體方式執行都非常有效。所以相對公鑰密碼系統而言,對稱密鑰系統的加、解密吞吐量要大得多。


ESP通過使用消息認證碼(MAC)提供認證服務。對於加密和認證演算法的選擇因IPSec的實現不同而不同;然而為了保證互操作性,ESP規范RFC2406中規定了每個IPSec實現要強制實現的演算法。在撰寫規范的時候,強制實現的加密演算法是DES的CBC模式和null加密演算法,而認證演算法是HMAC-MD5、HMAC-SHA-1和null認證演算法。null加密和null認證演算法分別是不加密和不認證選項。null演算法選項是強制實現的,因為ESP加密和認證服務是可選的。然而,值得注意的是,null加密和null認證演算法不可以同時使用。換句話講就是如果採用了ESP,或者要用到加密,或者要用到認證,或者同時使用。DES是個弱加密演算法,很少用於VPN解決方案。人們希望可以在修訂RFC2406時用AES代替DES作為強制實現的演算法。其他常用的演算法是CAST-128和IDEA。
ESP可以單獨應用或以嵌套的方式使用,也可以和AH結合使用。


ESP數據包格式

ESP數據包由4個固定長度的域和3個變長域組成。這個協議的包格式如圖所示。有關域的描述如下:



  1. 安全參數索引(SPI)這個域和AH的SPI類似。
  2. 序列號(Sequence number):與AH的情況類似
  3. 載荷數據(Payload data):這是一個變長域。如果使用機密性服務的話,其中就包含有實際的載荷數據(就是說,數據報加密部分的密文)。這個域是必須有的,不管涉及的SA是否需要機密性服務。如果採用的加密演算法需要初始化向量(IV),它將在載荷域中傳輸,並且演算法的規范要指明IV的長度和它在載荷數據域中的位置。IV用於某種分組密碼的工作模式以確保前一部分相似的明文(如IP數據報頭)生成不同的密文。載荷數據域的長度以比特為單位並且必須是8的整數倍。
  4. 填充(Padding):如果有的話,這個域包含著填充比特,由加密演算法使用或用於使填充長度域和4位元組字中的第3個位元組對齊。這個域的長度是0到255位元組。
  5. 填充長度(Pad length):填充長度是一個8比特的域,表明填充域中填充比特的長度。這個域的有效值是0到255間的整數。
  6. 下一個頭(Next header):這個8比特的域表明載荷中封裝的數據類型。可能是一個IPv6擴展頭或一個傳輸層協議。例如,值6表明載荷中封裝的是TCP數據。
  7. 認證數據(Authentication data):這個變長域中存放ICV,它是對除認證數據域外的ESP包計算出來的。這個域的實際長度取決於使用的認證演算法;例如,如果使用HMAC-MD5,則認證數據域是128比特,如果使用的是HMAC-SHA-1,則為160比特。認證數據域是可選的,僅當指定的SA要求ESP認證服務時才包含它。
閱讀全文

與ipsec加密演算法相關的資料

熱點內容
聚幣交易所app怎麼充值 瀏覽:161
加密文件如何解除加密iPad 瀏覽:920
太極張三豐懷舊源碼 瀏覽:103
2016考研大綱pdf 瀏覽:65
程序員sdk演算法 瀏覽:526
程序員聽診技巧 瀏覽:609
從技術走向管理pdf 瀏覽:820
思科命令行模式刪除用戶 瀏覽:565
一號玩家app怎麼換綁 瀏覽:322
emm平台源碼 瀏覽:328
從網頁下載資料伺服器地址 瀏覽:404
安卓用什麼播放器可以看港劇 瀏覽:455
keil5一編譯axf就缺失了 瀏覽:506
現代電機控制技術pdf 瀏覽:449
手機系統加密形同虛設是真的嗎 瀏覽:739
電視怎麼連接播放app 瀏覽:680
pdf怎麼轉換成word工具 瀏覽:865
c語言程序員成長 瀏覽:887
火影忍者手游助手app怎麼下 瀏覽:832
1997年四川空氣壓縮機廠 瀏覽:161