IPSec(IPSecurity)
該協(xié)議把密碼技術(shù)應(yīng)用在網(wǎng)絡(luò)層,以向信息的發(fā)送方和接收方提供源地址驗證、數(shù)據(jù)傳輸?shù)耐暾浴⒋嫒】刂啤⒈C苄缘劝踩?wù),保護通信免遭竊聽、抵御網(wǎng)絡(luò)攻擊,而且更高層的應(yīng)用層協(xié)議也可以直接或間接地使用這些安全服務(wù),為其上層協(xié)議如TCP、UDP等提供透明的安全保護服務(wù),在Internet這樣不安全的網(wǎng)絡(luò)中為通信提供安全保證。
在IPv6中,IPSec協(xié)議是一個必備的組成部分,被強制實施;在IPv4中,它是一個可選的擴展協(xié)議。
由于Internet等網(wǎng)絡(luò)具有公共特性,因此在通信過程中難以確認傳輸媒介是安全的,所以要進行安全的通信,則通信數(shù)據(jù)必須經(jīng)過加密。IPSec協(xié)議對數(shù)據(jù)的加密以數(shù)據(jù)包而不是整個數(shù)據(jù)流為單位,這不僅非常靈活,也有助于進一步提高IP數(shù)據(jù)包的安全性。
IPSec協(xié)議的基本工作原理是
發(fā)送方在發(fā)送數(shù)據(jù)前對數(shù)據(jù)實施加密,然后把密文數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)中去,開始傳輸。在整個傳輸過程中,數(shù)據(jù)都是以密文方式傳輸?shù)模钡綌?shù)據(jù)到達目的節(jié)點,才由接收方對密文進行解密,提取明文信息。
IPSec協(xié)議對網(wǎng)絡(luò)層的通信使用了加密技術(shù),它不是加密數(shù)據(jù)包的頭部和尾部信息(如源地址、目的地址、端口號、CRC校驗值等),而是對數(shù)據(jù)包中的數(shù)據(jù)進行加密。由于加密過程發(fā)生在IP層,因此可在不改變HTTP等上層應(yīng)用協(xié)議的情況下進行網(wǎng)絡(luò)協(xié)議的安全加密,為通信提供透明的安全傳輸服務(wù)。
IPSec協(xié)議中使用端到端的工作模式,掌握加密、解密方法的只有數(shù)據(jù)的發(fā)送方和接收方,兩者各自負責(zé)相應(yīng)的數(shù)據(jù)加密、解密處理,而網(wǎng)絡(luò)中其他節(jié)點只負責(zé)轉(zhuǎn)發(fā)數(shù)據(jù),無須支持IPSec,從而可以實現(xiàn)加密通信與傳輸媒介無關(guān),保證機密數(shù)據(jù)在公共網(wǎng)絡(luò)環(huán)境下的適應(yīng)性和安全性。因此,IPSec可以應(yīng)用到非常廣泛的環(huán)境中,能為局域網(wǎng)、撥號用戶、遠程站點、Internet之上的通信提供有力的保護,而且還能用來篩選特定數(shù)據(jù)流,還可以用于不同局域網(wǎng)之間通過互聯(lián)網(wǎng)的安全互聯(lián)。
IPSec協(xié)議不是一個單獨的協(xié)議,它包括應(yīng)用于IP層上網(wǎng)絡(luò)數(shù)據(jù)安全的一整套協(xié)議,主要包括AH(AuthenticationHeader,IP認證頭部協(xié)議)、ESP(EncapsulatingSecurityPayload,封裝安全負載協(xié)議)、IKE(InternetKeyExchange,Internet密鑰交換協(xié)議)和用于網(wǎng)絡(luò)認證及加密的一些算法等。
AH提供數(shù)據(jù)的完整性和認證,但不包括保密性;而ESP原則上只提供保密性,但也可在ESPHeader中選擇適當?shù)乃惴澳J絹韺崿F(xiàn)數(shù)據(jù)的完整性和認證。AH和ESP可分開使用也可一起使用。IKE則提供加密算法、密鑰等的協(xié)商。
1.安全關(guān)聯(lián)和安全策略
安全關(guān)聯(lián)(SecurityAssociation,SA)是指提供通信安全服務(wù)的發(fā)送方和接收方之間的一種單向關(guān)系。安全關(guān)聯(lián)是構(gòu)成IPSec的基礎(chǔ),它是進行通信的雙方經(jīng)協(xié)商建立起來的一種協(xié)定。安全關(guān)聯(lián)可以用一個32位的安全參數(shù)索引(SecurityParameterIndex,SPI)來唯一標識,一個SPI值決定一個特定的SA,它通常放在AH或ESP頭中;安全關(guān)聯(lián)是單向的,如果要對兩臺主機A與B實現(xiàn)雙向安全,則需要兩個安全關(guān)聯(lián),每個方向一個:(A,B)、(B,A)。安全關(guān)聯(lián)的內(nèi)容包含了IP數(shù)據(jù)包是否加密、認證,以及加密、認證采用的算法、密鑰等相關(guān)信息。所有的SA記錄都存放在安全關(guān)聯(lián)數(shù)據(jù)庫中,按散列方式存取。
安全策略(SecurityPolicy)定義了兩個IPSec系統(tǒng)之間的安全通信特征,并決定在該通信中為數(shù)據(jù)包提供的安全服務(wù)。一個IPSec系統(tǒng)的所有安全策略都存放在安全策略數(shù)據(jù)庫中,根據(jù)選擇符包括源地址、目的地址、協(xié)議、端口等)進行檢索。安全策略通常與SA合作,共同作用于通信的數(shù)據(jù)包。
2.AH
AH協(xié)議先將數(shù)據(jù)進行校驗和加密,然后封裝為IP包,從而實現(xiàn)無連接通信的數(shù)據(jù)完整性、數(shù)據(jù)源認證和防止重放攻擊。AH能完成除數(shù)據(jù)加密外的所有的ESP所能提供的功能。在認證機制上,它所覆蓋的范圍比ESP的廣,包括對IP頭中一些選項的認證。
為了應(yīng)用IPSec協(xié)議,IP數(shù)據(jù)包的格式要有所改變,即在IP頭和被保護的數(shù)據(jù)之間插入一個AH頭;
AH頭的格式,包括:下一報頭、有效載荷長度、保留位、安全參數(shù)索引、序列號、認證數(shù)據(jù)。
AH使用的典型的認證算法是一種迭代型的消息摘要算法。AH中采用MD5算法,可以提供完整性服務(wù)。從前面的講述可以知道MD5可以對任意長度的信息進行散列運算產(chǎn)生一個唯一的128位消息摘要。由于消息摘要是唯一的,所以對信息的任何修改都將得到另一個不同的消息摘要,因此能防止消息被篡改,從而保證了數(shù)據(jù)的完整性。AH也可以采用SHA算法提供更強的抗攻擊能力,SHA是在MD5的基礎(chǔ)上,增加了分組處理的迭代次數(shù)和復(fù)雜性,產(chǎn)生一個160位的消息摘要。接收者在收到數(shù)據(jù)后可以通過檢驗數(shù)據(jù)包中的單向遞增的序列號來確定數(shù)據(jù)包的合法性,防止重放攻擊。
3.ESP
ESP通過對數(shù)據(jù)包的數(shù)據(jù)進行加密來提供傳輸信息的保密性,從而實現(xiàn)了數(shù)據(jù)完整性、數(shù)據(jù)源認證、數(shù)據(jù)保密性的安全服務(wù)。ESP是一個通用的、可擴展的安全機制,其加密認證算法主要由SA的相應(yīng)數(shù)據(jù)項決定。接收者也可以通過在收到數(shù)據(jù)后檢驗數(shù)據(jù)包中的單向遞增的序列號來確定數(shù)據(jù)包的合法性,防止重放攻擊。
在應(yīng)用中,需要在IP數(shù)據(jù)包的頭和被保護的數(shù)據(jù)之間插入一個ESP頭,在被保護的數(shù)據(jù)后附加一個ESP尾;
ESP頭的格式如圖所示,包括:安全參數(shù)索引(標識用于處理數(shù)據(jù)包的安全關(guān)聯(lián))、序列號(用于防止重放攻擊)、有效荷載數(shù)據(jù)。ESP頭的所有字段都是不加密的,因為在解密數(shù)據(jù)包時需要先讀取頭部字段。
ESP尾的格式如圖所示,包括:填充項(某些加密算法要求被加密數(shù)據(jù)的長度是密鑰長度的整數(shù)倍,若受保護的數(shù)據(jù)的長度不滿足這個要求,就需要在后面追加一些填充項)、填充項長度(指明填充項的長度)、下一個頭部、認證數(shù)據(jù)(數(shù)據(jù)完整性的檢驗結(jié)果)。
ESP在提供加密功能的同時,還可以提供認證功能。對于發(fā)出的數(shù)據(jù)包,首先進行加密處理;而對于收到的數(shù)據(jù)包,則先進行認證處理。
ESP支持多種加密算法。DES是ESP中默認的加密算法,它采用64位的密鑰,對明文進行加密,加密、解密使用同一個密鑰,該算法簡單高效。此外還可以選擇采用3DES、AES、RC5、RC6、Blowfish等算法。
4.IP密鑰交換
IKE是一個混合協(xié)議,它使用了Internet安全關(guān)聯(lián)和密鑰管理協(xié)議(InternetSecurityAssociationandKeyManagementProtocol,ISAKMP)、密鑰確定協(xié)議Oakley和描述支持匿名和快速密鑰刷新的密鑰交換的SKEME協(xié)議。IKE除了實現(xiàn)通信雙方的密鑰交換,還使用ISAKMP實現(xiàn)IPSec的安全關(guān)聯(lián)。
ISAKMP協(xié)議是IKE的核心組成部分,它定義了包括協(xié)商、建立、修改、刪除安全關(guān)聯(lián)的過程和數(shù)據(jù)格式。ISAKMP的工作分為兩個階段:第一階段,通信雙方協(xié)商并建立一個安全的通道,并對該通道進行驗證,為第二階段的進一步通信提供安全服務(wù);第二階段,為IPSec建立起具體的IPSec安全關(guān)聯(lián),用于保護通信雙方的數(shù)據(jù)傳輸安全。在IKE的協(xié)商過程中,使用了Diffie-Hellman機制、Oakley的密鑰交換模式和SKEME的共享和密鑰更新技術(shù)。
5.IPSec的工作模式
IPSec的工作模式有兩種:傳輸模式和隧道模式。
傳輸模式首先將要傳送的數(shù)據(jù)使用IPSec加密封裝起來,再把相關(guān)的IPSec頭插入IP頭和被保護的數(shù)據(jù)之間封裝起來。因為IP頭沒有加密,接收端收到封裝的數(shù)據(jù)包時直接處理IP頭,然后從IPSec頭讀取SPI值得到相對的SA,再利用SA所定的解密參數(shù)解出所加密的數(shù)據(jù)。
傳輸模式的IPSec頭直接加在欲傳送的數(shù)據(jù)前,由于加密的部分較少,沒有額外的處理,因此比較節(jié)省帶寬和CPU負載,通信和處理效率較高。
在傳輸模式中,解密者就是目的地址端的使用者。
隧道模式首先使用SA的相關(guān)信息將IP的數(shù)據(jù)包全部加密,接下來在前面加上ESPHeader,然后把它們作為數(shù)據(jù)為它們再加上一個新的IP頭。接收端收到ESP封包后,使用ESPHeader內(nèi)容中的SPI值提供的SA,然后解出ESPHeader后的裝載數(shù)據(jù),就可以取回原始的IP頭與封包。
隧道模式可以在兩個終端之間建立一個安全的隧道,經(jīng)由這兩個終端之間的通信均在這個隧道中進行,因此安全性較高。
兩種模式的IP數(shù)據(jù)包的格式如圖所示。
責(zé)任編輯人:CC
-
協(xié)議
+關(guān)注
關(guān)注
2文章
606瀏覽量
39341 -
IPSec
+關(guān)注
關(guān)注
0文章
59瀏覽量
22873
發(fā)布評論請先 登錄
相關(guān)推薦
IPsec的基礎(chǔ)知識
介紹一種基于SoC的IPSec協(xié)議實現(xiàn)技術(shù)
基于SoC 的IPSec 協(xié)議實現(xiàn)技術(shù)
基于IPSEC安全協(xié)議的INTERNET通信安全
IPsec協(xié)議的研究和分析
基于IPSEC安全協(xié)議的網(wǎng)絡(luò)通信安全
![基于<b class='flag-5'>IPSEC</b>安全<b class='flag-5'>協(xié)議</b>的網(wǎng)絡(luò)通信安全](https://file.elecfans.com/web2/M00/49/06/pYYBAGKhtDOAcBTXAAAUQf1tJhM191.jpg)
IPSec基本原理
icmp協(xié)議工作原理
![icmp<b class='flag-5'>協(xié)議</b><b class='flag-5'>工作原理</b>](https://file1.elecfans.com//web2/M00/A6/DB/wKgZomUMQOiANP3-AABfaflh2AY257.png)
ipsec如何配置
![<b class='flag-5'>ipsec</b>如何配置](https://file1.elecfans.com//web2/M00/A6/ED/wKgZomUMQU-AOACHAAAV0MSjrL4336.png)
ipsec是什么_ipsec怎么用
![<b class='flag-5'>ipsec</b>是什么_<b class='flag-5'>ipsec</b>怎么用](https://file1.elecfans.com//web2/M00/A6/EE/wKgZomUMQVCANlRcAAAd6JGL4u8313.png)
簡述ipsec的工作原理
![簡述<b class='flag-5'>ipsec</b>的<b class='flag-5'>工作原理</b>](https://file1.elecfans.com//web2/M00/A6/EE/wKgZomUMQVGAUWu0AAAwYNlrMKc073.png)
評論