點(diǎn)擊查看:軟件水平考試《網(wǎng)絡(luò)規(guī)劃設(shè)計師》學(xué)習(xí)筆記匯總
VPN技術(shù)(P670-684)
1、IPSec
IPSec 協(xié)議不是一個單獨(dú)的協(xié)議,它給出了應(yīng)用于IP層上網(wǎng)絡(luò)數(shù)據(jù)安全的一整套體系結(jié)構(gòu),包括網(wǎng)絡(luò)認(rèn)證協(xié)議 Authentication Header(AH)、封裝安全載荷協(xié)議Encapsulating Security Payload(ESP)、密鑰管理協(xié)議Internet Key Exchange (IKE)和用于網(wǎng)絡(luò)認(rèn)證及加密的一些算法等。IPSec 規(guī)定了如何在對等層之間選擇安全協(xié)議、確定安全算法和密鑰交換,向上提供了訪問控制、數(shù)據(jù)源認(rèn)證、數(shù)據(jù)加密等網(wǎng)絡(luò)安全服務(wù)。
(1)IPSec的安全特性主要有:
A、不可否認(rèn)性
“不可否認(rèn)性”可以證實(shí)消息發(fā)送方是唯一可能的發(fā)送者,發(fā)送者不能否認(rèn)發(fā)送過消息。“不可否認(rèn)性”是采用公鑰技術(shù)的一個特征,當(dāng)使用公鑰技術(shù)時,發(fā)送方用私鑰產(chǎn)生一個數(shù)字簽名隨消息一起發(fā)送,接收方用發(fā)送者的公鑰來驗(yàn)證數(shù)字簽名。由于在理論上只有發(fā)送者才唯一擁有私鑰,也只有發(fā)送者才可能產(chǎn)生該數(shù)字簽名,所以只要數(shù)字簽名通過驗(yàn)證,發(fā)送者就不能否認(rèn)曾發(fā)送過該消息。但“不可否認(rèn)性”不是基于認(rèn)證的共享密鑰技術(shù)的特征,因?yàn)樵诨谡J(rèn)證的共享密鑰技術(shù)中,發(fā)送方和接收方掌握相同的密鑰。
B、反重播性
“反重播”確保每個IP包的唯一性,保證信息萬一被截取復(fù)制后,不能再被重新利用、重新傳輸回目的地址。該特性可以防止攻擊者截取破譯信息后,再用相同的信息包冒取非法訪問權(quán)(即使這種冒取行為發(fā)生在數(shù)月之后)。
C、數(shù)據(jù)完整性
防止傳輸過程中數(shù)據(jù)被篡改,確保發(fā)出數(shù)據(jù)和接收數(shù)據(jù)的一致性。IPSec利用Hash函數(shù)為每個數(shù)據(jù)包產(chǎn)生一個加密檢查和,接收方在打開包前先計算檢查和,若包遭篡改導(dǎo)致檢查和不相符,數(shù)據(jù)包即被丟棄。
D、數(shù)據(jù)可靠性(加密)
在傳輸前,對數(shù)據(jù)進(jìn)行加密,可以保證在傳輸過程中,即使數(shù)據(jù)包遭截取,信息也無法被讀。該特性在IPSec中為可選項,與IPSec策略的具體設(shè)置相關(guān)。
E、認(rèn)證
數(shù)據(jù)源發(fā)送信任狀,由接收方驗(yàn)證信任狀的合法性,只有通過認(rèn)證的系統(tǒng)才可以建立通信連接。
(2)基于電子證書的公鑰認(rèn)證
一個架構(gòu)良好的公鑰體系,在信任狀的傳遞中不造成任何信息外泄,能解決很多安全問題。IPSec與特定的公鑰體系相結(jié)合,可以提供基于電子證書的認(rèn)證。公鑰證書認(rèn)證在Windows 2000中,適用于對非Windows 2000主機(jī)、獨(dú)立主機(jī),非信任域成員的客戶機(jī)、或者不運(yùn)行Kerberos v5認(rèn)證協(xié)議的主機(jī)進(jìn)行身份認(rèn)證。
(3)預(yù)置共享密鑰認(rèn)證
IPSec也可以使用預(yù)置共享密鑰進(jìn)行認(rèn)證。預(yù)共享意味著通信雙方必須在IPSec策略設(shè)置中就共享的密鑰達(dá)成一致。之后在安全協(xié)商過程中,信息在傳輸前使用共享密鑰加密,接收端使用同樣的密鑰解密,如果接收方能夠解密,即被認(rèn)為可以通過認(rèn)證。但在Windows 2000 IPSec策略中,這種認(rèn)證方式被認(rèn)為不夠安全而一般不推薦使用。
(4)公鑰加密
IPSec的公鑰加密用于身份認(rèn)證和密鑰交換。公鑰加密,也被稱為“不對稱加密法”,即加解密過程需要兩把不同的密鑰,一把用來產(chǎn)生數(shù)字簽名和加密數(shù)據(jù),另一把用來驗(yàn)證數(shù)字簽名和對數(shù)據(jù)進(jìn)行解密。
使用公鑰加密法,每個用戶擁有一個密鑰對,其中私鑰僅為其個人所知,公鑰則可分發(fā)給任意需要與之進(jìn)行加密通信的人。例如:A想要發(fā)送加密信息給B,則A需要用B的公鑰加密信息,之后只有B才能用他的私鑰對該加密信息進(jìn)行解密。雖然密鑰對中兩把鑰匙彼此相關(guān),但要想從其中一把來推導(dǎo)出另一把,以目前計算機(jī)的運(yùn)算能力來看,這種做法幾乎完全不現(xiàn)實(shí)。因此,在這種加密法中,公鑰可以廣為分發(fā),而私鑰則需要仔細(xì)地妥善保管。
(5)Hash函數(shù)和數(shù)據(jù)完整性
Hash信息驗(yàn)證碼HMAC(Hash message authentication codes)驗(yàn)證接收消息和發(fā)送消息的完全一致性(完整性)。這在數(shù)據(jù)交換中非常關(guān)鍵,尤其當(dāng)傳輸媒介如公共網(wǎng)絡(luò)中不提供安全保證時更顯其重要性。
HMAC結(jié)合hash算法和共享密鑰提供完整性。Hash散列通常也被當(dāng)成是數(shù)字簽名,但這種說法不夠準(zhǔn)確,兩者的區(qū)別在于:Hash散列使用共享密鑰,而數(shù)字簽名基于公鑰技術(shù)。hash算法也稱為消息摘要或單向轉(zhuǎn)換。稱它為單向轉(zhuǎn)換是因?yàn)椋?/P>
1)雙方必須在通信的兩個端頭處各自執(zhí)行Hash函數(shù)計算;
2)使用Hash函數(shù)很容易從消息計算出消息摘要,但其逆向反演過程以目前計算機(jī)的運(yùn)算能力幾乎不可實(shí)現(xiàn)。
Hash散列本身就是所謂加密檢查和或消息完整性編碼MIC(Message Integrity Code),通信雙方必須各自執(zhí)行函數(shù)計算來驗(yàn)證消息。舉例來說,發(fā)送方首先使用HMAC算法和共享密鑰計算消息檢查和,然后將計算結(jié)果A封裝進(jìn)數(shù)據(jù)包中一起發(fā)送;接收方再對所接收的消息執(zhí)行HMAC計算得出結(jié)果B,并將B與A進(jìn)行比較。如果消息在傳輸中遭篡改致使B與A不一致,接收方丟棄該數(shù)據(jù)包。有兩種最常用的hash函數(shù):
·HMAC-MD5 MD5(消息摘要5)基于RFC1321。MD5對MD4做了改進(jìn),計算速度比MD4稍慢,但安全性能得到了進(jìn)一步改善。MD5在計算中使用了64個32位常數(shù),最終生成一個128位的完整性檢查和。
·HMAC-SHA 安全Hash算法定義在NIST FIPS 180-1,其算法以MD5為原型。 SHA在計算中使用了79個32位常數(shù),最終產(chǎn)生一個160位完整性檢查和。SHA檢查和長度比MD5更長,因此安全性也更高。
(6)加密和數(shù)據(jù)可靠性
IPSec使用的數(shù)據(jù)加密算法是DES--Data Encryption Standard(數(shù)據(jù)加密標(biāo)準(zhǔn))。DES密鑰長度為56位,在形式上是一個64位數(shù)。DES以64位(8字節(jié))為分組對數(shù)據(jù)加密,每64位明文,經(jīng)過16輪置換生成64位密文,其中每字節(jié)有1位用于奇偶校驗(yàn),所以實(shí)際有效密鑰長度是56位。 IPSec還支持3DES算法,3DES可提供更高的安全性,但相應(yīng)地,計算速度更慢。
(7)密鑰管理
·動態(tài)密鑰更新
IPSec策略使用“動態(tài)密鑰更新”法來決定在一次通信中,新密鑰產(chǎn)生的頻率。動態(tài)密鑰指在通信過程中,數(shù)據(jù)流被劃分成一個個“數(shù)據(jù)塊”,每一個“數(shù)據(jù)塊”都使用不同的密鑰加密,這可以保證萬一攻擊者中途截取了部分通信數(shù)據(jù)流和相應(yīng)的密鑰后,也不會危及到所有其余的通信信息的安全。動態(tài)密鑰更新服務(wù)由Internet密鑰交換IKE(Internet Key Exchange)提供,詳見IKE介紹部分。
IPSec策略允許專家級用戶自定義密鑰生命周期。如果該值沒有設(shè)置,則按缺省時間間隔自動生成新密鑰。
·密鑰長度
密鑰長度每增加一位,可能的密鑰數(shù)就會增加一倍,相應(yīng)地,破解密鑰的難度也會隨之成指數(shù)級加大。IPSec策略提供多種加密算法,可生成多種長度不等的密鑰,用戶可根據(jù)不同的安全需求加以選擇。
·Diffie-Hellman算法
要啟動安全通訊,通信兩端必須首先得到相同的共享密鑰(主密鑰),但共享密鑰不能通過網(wǎng)絡(luò)相互發(fā)送,因?yàn)檫@種做法極易泄密。
Diffie-Hellman算法是用于密鑰交換的最早最安全的算法之一。DH算法的基本工作原理是:通信雙方公開或半公開交換一些準(zhǔn)備用來生成密鑰的“材料數(shù)據(jù)”,在彼此交換過密鑰生成“材料”后,兩端可以各自生成出完全一樣的共享密鑰。在任何時候,雙方都絕不交換真正的密鑰。
通信雙方交換的密鑰生成“材料”,長度不等,“材料”長度越長,所生成的密鑰強(qiáng)度也就越高,密鑰破譯就越困難。
除進(jìn)行密鑰交換外,IPSec還使用DH算法生成所有其他加密密鑰。
AH報頭字段包括:
·Next Header(下一個報頭):
識別下一個使用IP協(xié)議號的報頭,例如,Next Header值等于“6”,表示緊接其后的是TCP報頭。
·Length(長度): AH報頭長度。
·Security Parameters Index (SPI,安全參數(shù)索引):
這是一個為數(shù)據(jù)報識別安全關(guān)聯(lián)的 32 位偽隨機(jī)值。SPI 值 0 被保留來表明“沒有安全關(guān)聯(lián)存在”。
·Sequence Number(序列號):從1開始的32位單增序列號,不允許重復(fù),唯一地標(biāo)識了每一個發(fā)送數(shù)據(jù)包,為安全關(guān)聯(lián)提供反重播保護(hù)。接收端校驗(yàn)序列號為該字段值的數(shù)據(jù)包是否已經(jīng)被接收過,若是,則拒收該數(shù)據(jù)包。
·Authentication Data(AD,認(rèn)證數(shù)據(jù)):
包含完整性檢查和。接收端接收數(shù)據(jù)包后,首先執(zhí)行hash計算,再與發(fā)送端所計算的該字段值比較,若兩者相等,表示數(shù)據(jù)完整,若在傳輸過程中數(shù)據(jù)遭修改,兩個計算結(jié)果不一致,則丟棄該數(shù)據(jù)包。
數(shù)據(jù)包結(jié)構(gòu):
如圖二所示,AH報頭插在IP報頭之后,TCP,UDP,或者ICMP等上層協(xié)議報頭之前。一般AH為整個數(shù)據(jù)包提供完整性檢查,但如果IP報頭中包含“生存期(Time To Live)”或“服務(wù)類型(Type of Service)”等值可變字段,則在進(jìn)行完整性檢查時應(yīng)將這些值可變字段去除。
相關(guān)推薦:
2009年下半年計算機(jī)軟考電子商務(wù)技術(shù)員真 |
2008年下半年計算機(jī)軟考電子商務(wù)技術(shù)員真 |
2012年下半年軟件水平考試真題及答案解析 |
2012年下半年軟件水平考試真題及答案解析 |
2012年下半年軟件水平考試真題及答案解析 |
2018計算機(jī)軟考《電子商務(wù)技術(shù)員》試題及 |
2018計算機(jī)軟考《電子商務(wù)技術(shù)員》試題及 |
2018計算機(jī)軟考《電子商務(wù)技術(shù)員》試題及 |
2018計算機(jī)軟考《電子商務(wù)技術(shù)員》試題及 |
2018軟件水平考試《信息技術(shù)處理員》預(yù)習(xí) |
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |