欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種實(shí)現(xiàn)主機(jī)移動(dòng)性和多家鄉(xiāng)功能的密鑰交換協(xié)議方法

文檔序號(hào):7594496閱讀:242來(lái)源:國(guó)知局
專利名稱:一種實(shí)現(xiàn)主機(jī)移動(dòng)性和多家鄉(xiāng)功能的密鑰交換協(xié)議方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)技術(shù),其特別涉及利用基本主機(jī)身份協(xié)議(HIP)完成一些移動(dòng)性和多家鄉(xiāng)功能的方法,具體的講是一種實(shí)現(xiàn)主機(jī)移動(dòng)性和多家鄉(xiāng)功能的密鑰交換協(xié)議(IKE-H)方法。
背景技術(shù)
當(dāng)前世界范圍的Internet網(wǎng)絡(luò)只存在兩種名稱空間IP地址和域名服務(wù)器(DNS)。這兩種名稱空間在使用時(shí)還存在一些問(wèn)題[1],特別是IP地址。現(xiàn)在的IP地址同時(shí)代表網(wǎng)絡(luò)實(shí)體的位置和接口,其中實(shí)體的位置是用來(lái)完成路由功能的,而實(shí)體通過(guò)接口連接到網(wǎng)絡(luò),也就是說(shuō)IP地址還同時(shí)代表實(shí)體身份。這種情況在原先網(wǎng)絡(luò)拓?fù)浠臼枪潭ú蛔兊那闆r下并沒(méi)有太多的問(wèn)題。而隨著人們對(duì)移動(dòng)性的要求日益增長(zhǎng),網(wǎng)絡(luò)中主機(jī)移動(dòng)實(shí)體的不斷增加,同時(shí)還會(huì)要求網(wǎng)絡(luò)中的實(shí)體(特別是安全網(wǎng)關(guān))具有安全多家鄉(xiāng)的特點(diǎn)。這樣就又從安全的角度對(duì)網(wǎng)絡(luò)主機(jī)的移動(dòng)性和多家鄉(xiāng)性提出了更多的要求如防止移動(dòng)網(wǎng)絡(luò)中出現(xiàn)中間人地址盜竊攻擊和針對(duì)目標(biāo)地址的DoS攻擊等[2]。此時(shí),IP地址同時(shí)代表網(wǎng)絡(luò)實(shí)體的位置和接口的思想就必然會(huì)產(chǎn)生如地址管理、原有網(wǎng)絡(luò)安全協(xié)議不能有效工作等問(wèn)題[3]。
現(xiàn)有技術(shù)一、在現(xiàn)有的移動(dòng)IP技術(shù)中,移動(dòng)IPv6是今天最有效地可用移動(dòng)建議之一,所以這里主要介紹移動(dòng)IPv6技術(shù),并請(qǐng)參見(jiàn)移動(dòng)IPv6的標(biāo)準(zhǔn)[4]以及移動(dòng)性和安全協(xié)議IPSec的交互性討論的另外一篇文檔[5]。
如圖1所示為一個(gè)基本的移動(dòng)IPv6組成,一個(gè)IPv6移動(dòng)節(jié)點(diǎn)是一個(gè)多主機(jī)地址節(jié)點(diǎn),它同時(shí)擁有一個(gè)轉(zhuǎn)交地址和一個(gè)家鄉(xiāng)地址,其中轉(zhuǎn)交地址用來(lái)路由IP包,其前綴是所訪問(wèn)鏈路網(wǎng)絡(luò)的前綴。轉(zhuǎn)交地址是臨時(shí)的,必須要對(duì)它進(jìn)行一個(gè)返回路由能力檢查之后才能使用該地址參與通信;家鄉(xiāng)地址用來(lái)識(shí)別移動(dòng)節(jié)點(diǎn),其前綴是家鄉(xiāng)鏈路網(wǎng)絡(luò)的前綴。移動(dòng)IPv6允許節(jié)點(diǎn)從一個(gè)鏈路移動(dòng)到另一個(gè)鏈路而無(wú)須改變家鄉(xiāng)地址。無(wú)論節(jié)點(diǎn)當(dāng)前在哪個(gè)鏈路,都可以使用這個(gè)地址將數(shù)據(jù)包轉(zhuǎn)發(fā)到移動(dòng)節(jié)點(diǎn)。移動(dòng)到新的鏈路后,移動(dòng)節(jié)點(diǎn)仍然可以與其它節(jié)點(diǎn)繼續(xù)通信。因此移動(dòng)節(jié)點(diǎn)離開(kāi)家鄉(xiāng)鏈路的行為對(duì)于傳輸和高層協(xié)議來(lái)說(shuō)是透明的。
需要在家鄉(xiāng)網(wǎng)絡(luò)和移動(dòng)節(jié)點(diǎn)之間建立一個(gè)“IPSec反向隧道”來(lái)保護(hù)家鄉(xiāng)注冊(cè)(即家鄉(xiāng)地址與轉(zhuǎn)交地址的綁定)以及后面經(jīng)過(guò)家鄉(xiāng)網(wǎng)絡(luò)到達(dá)移動(dòng)節(jié)點(diǎn)的數(shù)據(jù)流,要使用家鄉(xiāng)地址和轉(zhuǎn)交地址來(lái)建立隧道的安全聯(lián)盟(SA),用家鄉(xiāng)地址作為流量選擇器。
家鄉(xiāng)地址與轉(zhuǎn)交地址之間的關(guān)系被稱為“綁定”。當(dāng)在外地鏈路時(shí),移動(dòng)節(jié)點(diǎn)會(huì)在作為家鄉(xiāng)代理的路由器上注冊(cè)當(dāng)前的轉(zhuǎn)交地址。移動(dòng)節(jié)點(diǎn)通過(guò)向家鄉(xiāng)代理發(fā)送“綁定更新”報(bào)文來(lái)執(zhí)行綁定注冊(cè)。家鄉(xiāng)代理相應(yīng)發(fā)送一個(gè)“綁定確認(rèn)”報(bào)文。
與移動(dòng)節(jié)點(diǎn)通信的節(jié)點(diǎn)稱為“通信對(duì)端”,它即可以是移動(dòng)的也可以是固定的。移動(dòng)節(jié)點(diǎn)通過(guò)對(duì)端注冊(cè)向通信對(duì)端提供它當(dāng)前的位置信息,通信對(duì)端返回一個(gè)返回可路由測(cè)試報(bào)文來(lái)認(rèn)證綁定的建立。
如圖2所示為返回可路由測(cè)試基本過(guò)程,其中家鄉(xiāng)初始測(cè)試和轉(zhuǎn)交初始測(cè)試報(bào)文同時(shí)發(fā)送。該程序只需要通信節(jié)點(diǎn)對(duì)端作少量的處理,家鄉(xiāng)測(cè)試和轉(zhuǎn)交測(cè)試報(bào)文可以很快的返回(也可能幾乎是同時(shí)的)。
移動(dòng)節(jié)點(diǎn)與通信對(duì)端之間有兩種通信模式。第一種模式是雙向隧道(如圖3所示),這種模式不需要通信對(duì)端支持移動(dòng)IPv6,而且,即使移動(dòng)節(jié)點(diǎn)沒(méi)有在通信對(duì)端注冊(cè)當(dāng)前的綁定,這種模式仍然可以使用。從通信對(duì)端發(fā)出的數(shù)據(jù)包會(huì)路由到家鄉(xiāng)代理,再通過(guò)隧道發(fā)往移動(dòng)節(jié)點(diǎn)。從移動(dòng)節(jié)點(diǎn)發(fā)出的數(shù)據(jù)包先通過(guò)隧道發(fā)往家鄉(xiāng)代理,再以正常的方式路由到通信對(duì)端。在這種模式中,家鄉(xiāng)代理在家鄉(xiāng)鏈路上使用代理鄰居發(fā)現(xiàn)協(xié)議截取指向移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址的數(shù)據(jù)包。被截取的數(shù)據(jù)包通過(guò)隧道發(fā)送到移動(dòng)節(jié)點(diǎn)當(dāng)前的轉(zhuǎn)交地址。
第二種模式是路由最佳化(如圖4所示),需要移動(dòng)節(jié)點(diǎn)向通信對(duì)端綁定當(dāng)前的轉(zhuǎn)交地址。從通信對(duì)端發(fā)出的數(shù)據(jù)包可以直接路由到移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址。當(dāng)發(fā)送到任意IPv6地址的數(shù)據(jù)包時(shí),通信對(duì)端都會(huì)檢查緩存的綁定條目。若找到匹配的條目,節(jié)點(diǎn)就使用新的IPv6路由頭,將數(shù)據(jù)包路由到綁定條目指定的轉(zhuǎn)交地址。
將數(shù)據(jù)包直接發(fā)送到移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址可以得到最短的通信路徑。同時(shí)也避免了家鄉(xiāng)鏈路與家鄉(xiāng)代理的阻塞。此外,還能減輕家鄉(xiāng)代理和相關(guān)鏈路發(fā)生故障所引起的影響。
當(dāng)直接向移動(dòng)節(jié)點(diǎn)發(fā)送數(shù)據(jù)包時(shí),通信對(duì)端將目的地址設(shè)為移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址。同時(shí)在IPv6的擴(kuò)展頭中加入新型的路由頭,包含所要求的家鄉(xiāng)地址。類似的,移動(dòng)節(jié)點(diǎn)將數(shù)據(jù)包的源地址設(shè)為當(dāng)前的轉(zhuǎn)交地址,在IPv6的擴(kuò)展頭中加入新的目的頭,包含要求的家鄉(xiāng)地址。在數(shù)據(jù)包中包含家鄉(xiāng)地址,使得轉(zhuǎn)交地址的使用對(duì)于IP層以上的協(xié)議來(lái)說(shuō)是透明的。
現(xiàn)有技術(shù)一的缺點(diǎn)在于現(xiàn)有的移動(dòng)IPv6協(xié)議雖然在移動(dòng)節(jié)點(diǎn)和家鄉(xiāng)網(wǎng)絡(luò)之間強(qiáng)制要求使用網(wǎng)絡(luò)安全協(xié)議IPSec,并可以采用IKEv1(或者IKEv2)密鑰交換協(xié)議建立封裝安全載荷安全聯(lián)盟(ESP SA)來(lái)保護(hù)移動(dòng)節(jié)點(diǎn)和家鄉(xiāng)代理之間的綁定注冊(cè)消息,以及此后的雙向隧道模式通信流量數(shù)據(jù)[4]。但是,當(dāng)移動(dòng)節(jié)點(diǎn)再次發(fā)生移動(dòng)或者由于其他原因使得與家鄉(xiāng)網(wǎng)絡(luò)建立連接的接口IP地址發(fā)生改變時(shí),原先保護(hù)通信的ESP SA就不可使用了,這時(shí)要想繼續(xù)保護(hù)流量只能采用重建SA的方式。而重新建立SA的過(guò)程建立代價(jià)比較大必然會(huì)對(duì)正常通信造成延時(shí),并且會(huì)對(duì)無(wú)線信道造成帶寬過(guò)多占用從而造成網(wǎng)絡(luò)性能下降[6][7]。可以想象如果移動(dòng)節(jié)點(diǎn)的位置在網(wǎng)絡(luò)中不斷的變化那么將會(huì)對(duì)網(wǎng)絡(luò)通信造成“通信流量風(fēng)暴”,并有可能造成網(wǎng)絡(luò)的擁塞現(xiàn)象。這還只是移動(dòng)節(jié)點(diǎn)變化的情況,如果家鄉(xiāng)網(wǎng)絡(luò)(主要是指家鄉(xiāng)代理路由器)由于某種原因也要發(fā)生位置的改變那么除了以上情況外,由于雙方可能同時(shí)發(fā)生移動(dòng)還有可能正常的端到端IKE交換連接都無(wú)法完成[3]。
此外,如果在移動(dòng)環(huán)境中移動(dòng)節(jié)點(diǎn)和通信節(jié)點(diǎn)之間同樣想要建立各種IPSec連接,正常的連接建立之后如果雙方之中任何一方或者雙方同時(shí)要發(fā)生運(yùn)動(dòng),那么同樣會(huì)造成如上描述的情況,而且在通信雙方都是移動(dòng)體的時(shí)候發(fā)生“通信流量風(fēng)暴”和正常的端到端IKE交換連接都無(wú)法完成的情況更為普遍。
綜上所述,移動(dòng)IP這種目前比較為世界看好的解決IP移動(dòng)性問(wèn)題的方法,在自身的安全設(shè)計(jì)上還有包括但不限于以上的問(wèn)題[8],特別是在與網(wǎng)絡(luò)層比較完善和成熟使用的IPSec協(xié)議協(xié)同使用時(shí)還有很多問(wèn)題。雖然針對(duì)這些問(wèn)題也有一些解決的方法[9][10],但是從根本上看來(lái)現(xiàn)有的移動(dòng)IP對(duì)于主機(jī)移動(dòng)所帶來(lái)的地址變化問(wèn)題還不能最佳解決,此外移動(dòng)IP對(duì)于移動(dòng)環(huán)境下的安全網(wǎng)關(guān)多家鄉(xiāng)問(wèn)題也沒(méi)有太多的考慮。
現(xiàn)有技術(shù)二、這里介紹主機(jī)身份協(xié)議(HIP)技術(shù),主要考慮IETF的HIP工作組有關(guān)基本HIP協(xié)議完成一些移動(dòng)性和多家鄉(xiāng)功能的建議和方案。主要內(nèi)容在HIP的基本框架結(jié)構(gòu)[11]以及有關(guān)移動(dòng)性和多家鄉(xiāng)具體解決辦法的另一篇建議個(gè)人討論文檔[12]中。
采用HIP協(xié)議的主要機(jī)制是在傳輸層和網(wǎng)絡(luò)層之間加入了一個(gè)主機(jī)標(biāo)識(shí)符(HI)層,將傳輸層通過(guò)主機(jī)身份標(biāo)記(HIT)或者本地范圍標(biāo)識(shí)(LST)綁定到標(biāo)示主機(jī)身份的主機(jī)標(biāo)識(shí)符HI上,綁定示意圖見(jiàn)圖5b。它與傳統(tǒng)的其他IP協(xié)議主要不同在于使Socket套接口不再和IP地址結(jié)合(如圖5a、5b所示),這樣就可以為我們解決一般情況的地址變化以及多家鄉(xiāng)等問(wèn)題帶來(lái)便利。
HIP為了與IPv6協(xié)議兼容所提出的思想是將IPv6一半的地址空間(64位)來(lái)代表HI,對(duì)HI進(jìn)行hash運(yùn)算之后為128位的HIT。對(duì)一個(gè)HIP主機(jī)DNS解析服務(wù)器將返回一個(gè)HIT以及一個(gè)IPv6地址。對(duì)于HIT在HI層將執(zhí)行一個(gè)類似于網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)的進(jìn)入/外出包處理。
此外,為了在通信節(jié)點(diǎn)對(duì)等體地址改變時(shí)保證HIP協(xié)議端到端通信的安全性,如對(duì)端認(rèn)證和地址源認(rèn)證等,防止在HIP協(xié)議中出現(xiàn)拒絕服務(wù)(DoS)或者中間人(MitM)攻擊,在HIP交換發(fā)起者和響應(yīng)者之間需要一種高效、可靠的密鑰交換協(xié)議。分析現(xiàn)有的HIP協(xié)議所定義的“基本交換”[2],交換完成后生成一個(gè)IPSec SA來(lái)保護(hù)隨后進(jìn)行的IPSec ESP通信,其基本交換過(guò)程圖6所示。在雙方交換消息的過(guò)程中始終采用<HITi,HITr>這對(duì)表示雙方身份的公開(kāi)HIT密鑰來(lái)標(biāo)記,由產(chǎn)生HIT的雙方各自保存自己的私有密鑰的安全,由基本密鑰交換協(xié)議來(lái)完成身份認(rèn)證的功能,這樣HI公鑰概念就構(gòu)成了HIP協(xié)議的安全基礎(chǔ)。
在HIP消息基本交換完成之后就創(chuàng)建了一個(gè)主機(jī)身份安全內(nèi)容HISC(其中包含IPSec ESP的安全聯(lián)盟)。之后,就可以繼續(xù)交換由ESP傳輸模式來(lái)加密保護(hù)的消息(如檢驗(yàn)端節(jié)點(diǎn)聲明的IP地址是否實(shí)際可達(dá))。圖7和圖8是加入HIP層前后比較的報(bào)文格式,其中圖7為現(xiàn)有的使用ESP的報(bào)文的結(jié)構(gòu);圖8為考慮HIP的新的報(bào)文結(jié)構(gòu)。在圖7、8中HbH=Hop-by-Hop逐跳選項(xiàng)頭部;RH=路由頭部;DO=目的選項(xiàng)頭部。
在IETF組織HIP工作組最新公布了使用標(biāo)準(zhǔn)HIP協(xié)議來(lái)完成移動(dòng)性和多家鄉(xiāng)功能的一篇個(gè)人草案[2],通過(guò)將HI到IP地址的映射從靜態(tài)的一對(duì)一擴(kuò)展到動(dòng)態(tài)的一對(duì)多映射來(lái)完成端主機(jī)移動(dòng)和多家鄉(xiāng),允許HIP主機(jī)更新與對(duì)端相關(guān)的地址集。地址更新由新的HIP參數(shù)REA類型實(shí)現(xiàn)。以下是這種方案的具體內(nèi)容新定義的HIP REA參數(shù),它允許主機(jī)交換關(guān)于IP地址和地址改變的信息。由REA建立的邏輯結(jié)構(gòu)包含三級(jí)主機(jī),由SPI索引的IPSec SA,和地址。他們之間的關(guān)系如圖9所示。
在圖9中,主機(jī)1和主機(jī)2協(xié)商兩個(gè)單向IPSec SA,而且每個(gè)主機(jī)為入站SA選擇SPI值。地址1a和地址2a是每個(gè)主機(jī)在基本HIP交換中使用的源地址。這些地址是每個(gè)SA向?qū)Χ藗鬟f的首選地址(唯一的);無(wú)論數(shù)據(jù)發(fā)送到主機(jī)的哪一個(gè)接口都能到達(dá)入站SPI,當(dāng)主機(jī)通過(guò)出站SPI向?qū)Χ税l(fā)送數(shù)據(jù)時(shí),它只知道與出站SPI相關(guān)的一個(gè)目的地址(對(duì)主機(jī)1,它通過(guò)SPI2a向地址2a發(fā)送數(shù)據(jù),到達(dá)主機(jī)2),除非通過(guò)其它的機(jī)制學(xué)習(xí)新的地址。當(dāng)主機(jī)有多個(gè)地址和SPI時(shí),對(duì)端主機(jī)必須決定使用哪一個(gè)作為目的地址。可能主機(jī)希望在一個(gè)特殊的入站接口接收數(shù)據(jù)。HIP允許指定一個(gè)特殊的地址作為首選地址,并且通知給對(duì)端。
主機(jī)可以綁定多個(gè)進(jìn)入或者外出SPI,此外,每個(gè)SPI有多個(gè)與它相關(guān)的地址。這些綁定到一個(gè)SPI的地址不是作為IPSec流量選擇器使用的。而是提供給對(duì)端的地址,提示對(duì)端在那個(gè)SPI上用哪個(gè)地址到達(dá)主機(jī)。而REA參數(shù)用來(lái)改變對(duì)端與特定SPI相關(guān)的地址集。主機(jī)可以與一個(gè)對(duì)端建立任意數(shù)量的SA(或SPI)用來(lái)將相關(guān)的地址分組。比如,如果主機(jī)需要改變?cè)谝粋€(gè)SPI上的地址,那么和這個(gè)地址相關(guān)的地址都會(huì)同時(shí)作廢。
一個(gè)單獨(dú)的REA參數(shù)只包含關(guān)于一個(gè)SPI的參數(shù)。為了同時(shí)表示幾個(gè)SPI的改變,需要發(fā)送幾個(gè)REA參數(shù)。數(shù)據(jù)包的結(jié)構(gòu)支持這以點(diǎn)。如果REA參數(shù)在UPDATE報(bào)文中發(fā)送,那么接收端會(huì)響應(yīng)一個(gè)UPDATE確認(rèn)。如果REA參數(shù)在NOTIFY,I2或R2報(bào)文中發(fā)送,接收端可以將REA看作是狀態(tài)通知,并且只須在需要激活新地址時(shí)作出反映。
端主機(jī)的地址都可以用以下幾種狀態(tài)來(lái)表示用來(lái)追蹤地址的可達(dá)性(1)UNVERIFIED表示地址的可達(dá)性還沒(méi)有經(jīng)過(guò)證實(shí)。
(2)ACTIVE表示地址的可達(dá)性已經(jīng)經(jīng)過(guò)證實(shí)并且地址還沒(méi)有過(guò)期。
(3)DEPRECATED表示地址的生存期已過(guò)。
圖10為個(gè)人建議草案中新定義的REA消息格式,其中類型目前還沒(méi)有定義;長(zhǎng)度以字節(jié)為單位,包含類型和長(zhǎng)度域;SPI與地址相對(duì)應(yīng)的SPI。
SPI域標(biāo)識(shí)了這個(gè)參數(shù)要應(yīng)用的SPI。發(fā)送主機(jī)可以隨意引入新的SPI。也就是說(shuō),如果接收的REA有新的SPI,它意味著所有指定給舊SPI的地址仍然工作,同時(shí)新接收的REA中的新地址是與新SPI相關(guān)聯(lián)的。另一方面,如果接收的REA中有一個(gè)接收端已經(jīng)知道的SPI,應(yīng)該用新地址取代所有與這個(gè)SPI相關(guān)的地址。
P首選地址。如果REA中的第一個(gè)地址是新的首選地址,則置1;否則置0。
保留發(fā)送置1,接收忽略。
地址生存時(shí)間以秒為單位。
地址IPv6地址或IPv4-in-IPv6格式的IPv4地址。
一、具體發(fā)送REA的過(guò)程發(fā)起端主機(jī)在發(fā)現(xiàn)IP地址改變時(shí)就發(fā)送REA(這里假設(shè)改變至少持續(xù)幾秒鐘的時(shí)間)并決定怎樣組織不同的地址,以及是否將地址包含在多個(gè)SPI中。通常情況下,簡(jiǎn)單的基于實(shí)際物理和邏輯接口的分組是最好的組織策略。虛擬接口,如IPSec隧道接口或移動(dòng)IP家鄉(xiāng)地址,不應(yīng)該被通告。此外,發(fā)起端應(yīng)該避免快速發(fā)送相矛盾的REA。
一旦主機(jī)決定了分組和SPI地址的分配,它為每個(gè)分組建立一個(gè)REA參數(shù)。如果有多個(gè)REA參數(shù),這些參數(shù)應(yīng)該進(jìn)行排序,使得新的首選地址在第一個(gè)REA參數(shù)中。在REA參數(shù)中只有一個(gè)地址(第一個(gè)地址)可以被指定為首選地址。當(dāng)?shù)刂繁患尤氲浆F(xiàn)存的SPI中,REA參數(shù)會(huì)指出現(xiàn)存的SPI和一個(gè)或多個(gè)要加入SPI的地址。
二、接收REA的處理主機(jī)可以在任何的HIP報(bào)文中接收REA參數(shù),包括I1。當(dāng)主機(jī)接收到一個(gè)REA參數(shù),它首先執(zhí)行以下操作(1)主機(jī)檢查列出的SPI是否是新的。如果是新的,就建立一個(gè)沒(méi)有地址的SPI。如果是一個(gè)已有的,就準(zhǔn)備向存在的SPI中加入地址。
(2)對(duì)REA參數(shù)中列出的每個(gè)地址,檢查地址是合法的單播或任意播地址。
(3)對(duì)REA參數(shù)中列出的每個(gè)地址,檢查地址是否已經(jīng)綁定到SPI上。如果地址已經(jīng)綁定,更新地址的生存期。如果地址的狀態(tài)是DEPRECATED,狀態(tài)轉(zhuǎn)變?yōu)閁NVERIFIED。如果地址沒(méi)有綁定,將地址加入并且狀態(tài)設(shè)置為UNVERIFIED。
(4)如果REA與NES參數(shù)配對(duì),NES參數(shù)要被處理。如果REA取代現(xiàn)存SPI的地址,要在NES參數(shù)指出,在它的舊SPI域包含現(xiàn)存的SPI,在新SPI域包含新的SPI,而且REA參數(shù)的SPI域要匹配NES的新SPI域。如果根據(jù)新SPI替換REA,NES的舊SPI域和新SPI域要包含相同的SPI。
一旦主機(jī)更新了SPI,如果REA參數(shù)包含新的首選地址,主機(jī)應(yīng)該開(kāi)始改變首選地址。這通常要求主機(jī)首先證明地址的可達(dá)性,而且之后改變首選地址。
相關(guān)技術(shù)一就這樣通過(guò)將HI到IP地址的映射從靜態(tài)的一對(duì)一擴(kuò)展到動(dòng)態(tài)的一對(duì)多映射來(lái)完成了端主機(jī)移動(dòng)和多家鄉(xiāng),允許HIP主機(jī)更新與對(duì)端相關(guān)的地址集,并由新的HIP參數(shù)REA類型實(shí)現(xiàn)地址更新。
現(xiàn)有技術(shù)二的缺點(diǎn)、現(xiàn)有技術(shù)HIP是基于公鑰做為端主機(jī)名稱的,身份認(rèn)證是很容易解決的問(wèn)題。但是現(xiàn)在定義的“基本交換”的安全性功能還比較單一,靈活性也不是很好,只能認(rèn)為它是一個(gè)“輕量級(jí)的IKE交換協(xié)議”[13],需要一個(gè)更好的密鑰交換協(xié)議以及擴(kuò)展提供更多的顆粒度和在一對(duì)HITs之間創(chuàng)造幾個(gè)ESP SAs。此外,現(xiàn)有的HIP協(xié)議只是簡(jiǎn)單的提出用IPSec ESP來(lái)保護(hù)通信內(nèi)容,對(duì)如何生成SA定義的不夠明確和有效。
此外,這種技術(shù)適用的具體環(huán)境也存在一定的限制只能適用于端到端兩個(gè)主機(jī)之間采用ESP傳輸模式的情況,對(duì)隧道模式和認(rèn)證頭部(AH)協(xié)議的支持沒(méi)有(雖然這并不一定是必須的);對(duì)站點(diǎn)多家鄉(xiāng)(主機(jī)可能有一個(gè)具有多個(gè)全球IP地址的接口。這種情況可能是由于存在多個(gè)高層ISP的站點(diǎn),或是因?yàn)檎军c(diǎn)為所有主機(jī)同時(shí)提供IPv4和IPv6地址等),以及移動(dòng)性和多家鄉(xiāng)結(jié)合的情況沒(méi)有考慮和相應(yīng)的支持[12]。

發(fā)明內(nèi)容
本發(fā)明的目的在于,提供一種實(shí)現(xiàn)主機(jī)移動(dòng)性和多家鄉(xiāng)功能的密鑰交換協(xié)議方法。以通過(guò)對(duì)原有HIP協(xié)議的改進(jìn),來(lái)使通信節(jié)點(diǎn)對(duì)等體地址改變時(shí)保證HIP交換發(fā)起者和響應(yīng)者之間端到端通信的安全性為IP數(shù)據(jù)報(bào)提供機(jī)密性、數(shù)據(jù)完整性、接入控制、身份鑒別和數(shù)據(jù)源認(rèn)證,防止在HIP協(xié)議中出現(xiàn)拒絕服務(wù)(DoS)或者中間人(MitM)等攻擊。
本發(fā)明可以在主機(jī)(或者安全網(wǎng)關(guān))具有移動(dòng)性、多家鄉(xiāng)功能,以及同時(shí)多家鄉(xiāng)及移動(dòng)情況下維持原有IPSec SA不變,從而對(duì)數(shù)據(jù)進(jìn)行保護(hù);并支持一個(gè)同時(shí)有多個(gè)正在通信的通信協(xié)議連接的安全網(wǎng)關(guān)在地址之間切換即支持站點(diǎn)多家鄉(xiāng),而不用中斷和重新建立高層協(xié)議連接。
采用本發(fā)明,在原先只有端到端的HIP通信擴(kuò)展后可以實(shí)現(xiàn)更多如同安全網(wǎng)關(guān)保護(hù)的內(nèi)部子網(wǎng)主機(jī)通信等應(yīng)用。并支持一般移動(dòng)性、主機(jī)多家鄉(xiāng)、站點(diǎn)多家鄉(xiāng)、雙主機(jī)多家鄉(xiāng)、網(wǎng)絡(luò)重編號(hào)、多家鄉(xiāng)和移動(dòng)性的結(jié)合等具體場(chǎng)景。
本發(fā)明的技術(shù)方案為一種實(shí)現(xiàn)主機(jī)移動(dòng)性和多家鄉(xiāng)功能的互聯(lián)網(wǎng)密鑰交換協(xié)議方法,采用主機(jī)身份協(xié)議(HIP)時(shí),在傳輸層和網(wǎng)絡(luò)層之間加入一個(gè)主機(jī)標(biāo)識(shí)符(HI)層,將傳輸層綁定到所述的主機(jī)標(biāo)識(shí)符上;在HIP主機(jī)之間建立一對(duì)互聯(lián)網(wǎng)協(xié)議安全(IPSec)聯(lián)盟(SA);所述的HIP主機(jī)至少知道其通信對(duì)端的一個(gè)可達(dá)的IP地址;所述的IP地址為HIP交換中最初使用的IP地址;將所述的聯(lián)盟(SA)綁定到所述的主機(jī)標(biāo)識(shí)符(HI)上,使所述的HIP主機(jī)能夠從任何地址接收由HIP建立的、受封裝安全載荷(ESP)聯(lián)盟(SA)保護(hù)的數(shù)據(jù)包;所述的HIP主機(jī)也能夠改變自己的IP地址并且繼續(xù)向通信對(duì)端發(fā)送數(shù)據(jù)包。
在通信對(duì)端之間進(jìn)行相互認(rèn)證,并建立一個(gè)包含共享機(jī)密信息的互聯(lián)網(wǎng)密鑰交換協(xié)議(IKE)聯(lián)盟(SA),在所述的互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟中包含秘密信息和一系列加密算法;其中,發(fā)起者采用混合/匹配方式,在所列出的可以支持的算法中建議一個(gè)或多個(gè)算法套件。
在通信中對(duì)封裝安全載荷(ESP)和認(rèn)證頭部(AH)聯(lián)盟(SA)使用IP壓縮(IPCOMP)技術(shù)。
在交換過(guò)程中,每一組交換均由一對(duì)報(bào)文組成,所述的一對(duì)報(bào)文包括請(qǐng)求和應(yīng)答;其中在一定的時(shí)間間隔內(nèi)如果請(qǐng)求方?jīng)]有收到應(yīng)答方的應(yīng)答,則請(qǐng)求方需重傳請(qǐng)求或放棄連接。
在交換過(guò)程中完成的交換包括IKE_SA_INIT交換,協(xié)商包括加密算法、Nonces、DH交換在內(nèi)的值;IKE_AUTH交換,認(rèn)證前面的消息、交換身份和證書并建立第一個(gè)互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟(IPSec SA)。
在交換過(guò)程中完成的交換還包括CREATE_IPSEC_SA交換,用來(lái)建立以后的互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟(IPSec SA)。
在交換過(guò)程中完成的交換還包括或者INFORMATIONAL交換,用來(lái)刪除聯(lián)盟(SA)報(bào)告錯(cuò)誤條件,并可以執(zhí)行檢查生存期等其他管理步驟。
在交換過(guò)程中交換的順序?yàn)槭紫冗M(jìn)行所述的IKE_SA_INIT交換,然后進(jìn)行所述的IKE_AUTH交換;接下來(lái)使用的任意數(shù)量的CREATE_IPSEC_SA和INFORMATIONAL交換,它們的順序?yàn)槿我狻?br> 通過(guò)一次所述的IKE_SA_INIT交換和一次所述的IKE_AUTH交換完成初始交換,從而建立互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟(IKE SA)和第一個(gè)互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟(IPSec SA)。
所述的IKE_SA_INIT交換包括請(qǐng)求報(bào)文HDR,SAi1,KEi,Ni;應(yīng)答報(bào)文HDR,SAr1,KEr,Nr;所述的IKE_AUTH交換包括請(qǐng)求報(bào)文HDR,SK{IDi,[IDr,]AUTH,SAi2,TSi,TSr};應(yīng)答報(bào)文HDR,SK{IDr,AUTH,SAr2,TSi,TSr}。
所述的HDR是每個(gè)交換消息的頭部,其包括SPI、版本號(hào)以及各種類型的標(biāo)志;所述的SAi1載荷規(guī)定了請(qǐng)求方為建立互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟(IKE_SA)所支持的加密算法,應(yīng)答方從請(qǐng)求方提供的選項(xiàng)中選擇一套加密算法并且在SAr1載荷中表示出來(lái);所述的KEi載荷傳送請(qǐng)求方的Diffie-Hellman值,通過(guò)應(yīng)答方KEr載荷完成Diffie-Hellman交換;所述的Ni和Nr載荷分別表示請(qǐng)求方和應(yīng)答方的Nonce(一般填寫當(dāng)前時(shí)間);請(qǐng)求方在IDi載荷中聲稱自己的身份,使用AUTH載荷證明對(duì)IDi相關(guān)秘密信息的認(rèn)識(shí)并保護(hù)第一個(gè)報(bào)文內(nèi)容的完整性;可選的IDr載荷使請(qǐng)求方能夠指定與之通信的應(yīng)答方眾多身份中的一個(gè),應(yīng)答方使用SAi2載荷開(kāi)始協(xié)商互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟(IPSec SA);應(yīng)答方在IDr載荷中聲稱自己的身份,用AUTH載荷認(rèn)證其身份并保護(hù)第二個(gè)報(bào)文的完整性,并完成互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟(IPSec SA)的協(xié)商。
在初始交換的協(xié)商中每一端都會(huì)生成密鑰種子(SKEYSEED),并從中生成互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟(IKE SA)的所有密鑰;接下來(lái)的所有報(bào)文,除了頭部全部被加密并受到完整性保護(hù),且用來(lái)加密和進(jìn)行完整性保護(hù)的所有密鑰都來(lái)自于所述的密鑰種子。
所述的密鑰包括SK_e,即完成加密;SK_a,即完成認(rèn)證;和SK_d,以用來(lái)產(chǎn)生后面互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟(IPSec SA)階段需要的加密材料;所述SK_e和SK_a為單向計(jì)算;采用DH值生成保護(hù)互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟(IKESA)的密鑰SK_e和SK_a。
所述的IKE_AUTH交換中的報(bào)文接收者必須驗(yàn)證所有簽名和MAC的計(jì)算是否正確,以及ID載荷中的名稱與產(chǎn)生AUTH載荷的密鑰是否相符合。
所述的CREATE_IPSEC_SA交換只包含一對(duì)獨(dú)立的請(qǐng)求/響應(yīng)信息,即請(qǐng)求方報(bào)文HDR,SK{[N],SA,Ni,[KEi],[TSi,TSr]};應(yīng)答方報(bào)文HDR,SK{SA,Nr,[KEr],[TSi,TSr]};其中請(qǐng)求方在SA載荷中發(fā)送SA提議,在Ni載荷中發(fā)送Nonce,在KEi載荷中選擇地發(fā)送Diffie-Hellman值,在TSi和TSr載荷中選擇地發(fā)送提議的流量選擇器;如果SA提議中包含不同的Diffie-Hellman組,KEi必須是發(fā)起方希望響應(yīng)方接受的組中的一個(gè)元素;如果猜測(cè)錯(cuò)誤(既響應(yīng)方不接受發(fā)起方推薦的KEi),則CREATE_IPSEC_SA交換失敗,并不得不嘗試一個(gè)新的KEi;頭部之后的報(bào)文是加密的,報(bào)文(包含頭部)使用為IKE SA協(xié)商的加密算法進(jìn)行完整性保護(hù);應(yīng)答方使用相同的消息ID來(lái)響應(yīng),并在SA載荷中答復(fù)接受的SA提議,并在KEr載荷中答復(fù)Diffie-Hellman值(如果請(qǐng)求中包含了KEi并且所選擇的加密組件中包含請(qǐng)求中的DH組);如果響應(yīng)方選擇不同組的加密組件它必須拒絕請(qǐng)求,請(qǐng)求方重傳請(qǐng)求,并且在請(qǐng)求中要包含應(yīng)答方所選擇組中的KEi載荷。
所述的INFORMATIONAL交換只能在起始交換之后發(fā)生,并且用協(xié)商的密鑰加密保護(hù);所述的INFORMATIONAL交換中的報(bào)文包含0個(gè)或多個(gè)通告,刪除,和配置載荷;所述的INFORMATIONAL交換請(qǐng)求的接收端必須發(fā)出響應(yīng)(否則發(fā)送者會(huì)認(rèn)為報(bào)文在網(wǎng)絡(luò)中丟失并且重發(fā)報(bào)文)。
響應(yīng)是沒(méi)有載荷的報(bào)文;INFORMATIONAL交換的請(qǐng)求報(bào)文也可以不包括任何載荷。
所述的INFORMATIONAL交換包括請(qǐng)求方報(bào)文HDR,SK{[N],[D,][CP,]...};應(yīng)答方報(bào)文HDR,SK{[N,][D,][CP]...};并且,利用通告載荷和配置載荷來(lái)實(shí)現(xiàn)移動(dòng)性和多家鄉(xiāng)的功能。
定義一種新的類型用來(lái)完成HIP主機(jī)交換關(guān)于IP地址和地址改變信息的功能HIP_NOTIFY_REA;當(dāng)移動(dòng)主機(jī)從一個(gè)IP地址切換到另一個(gè)IP地址時(shí),會(huì)與對(duì)端斷開(kāi)連接一段很短的時(shí)間;一得到新IP地址,移動(dòng)主機(jī)就通過(guò)所述的INFORMATIONAL交換向?qū)Χ税l(fā)送HIP_NOTIFY_REA參數(shù)并指出以下問(wèn)題新IP地址,與新IP地址相關(guān)的SPI,地址生存時(shí)間,和新地址是否為首選地址。
所述的主機(jī)(移動(dòng)或靜止的)具有多于一個(gè)的接口,該主機(jī)通過(guò)HIP_NOTIFY_REA參數(shù)通知對(duì)端主機(jī)附屬的接口;主機(jī)需為每個(gè)用來(lái)從對(duì)端主機(jī)接收數(shù)據(jù)的接口使用不同的SA;當(dāng)提供給對(duì)端主機(jī)多于一個(gè)的地址,主機(jī)需指出首選地址;當(dāng)處理建立新SA的入站HIP_NOTIFY_REA時(shí),主機(jī)使用包含HIP_NOTIFY_REA的通告的目的地址作為HIP_NOTIFY_REA加NES指向的本地地址;主機(jī)可以使用相同的IP地址向不同的對(duì)端地址發(fā)送HIP_NOTIFY_REA,這會(huì)同時(shí)建立有不同源地址的多個(gè)入站SA。
所述的主機(jī)包含一個(gè)具有多個(gè)全球IP地址的接口;該主機(jī)通過(guò)HIP_NOTIFY_REA參數(shù)通知對(duì)端主機(jī)附屬的接口;主機(jī)需為每個(gè)用來(lái)從對(duì)端主機(jī)接收數(shù)據(jù)的接口使用不同的SA;當(dāng)提供給對(duì)端主機(jī)多于一個(gè)的地址,主機(jī)需指出首選地址;當(dāng)處理建立新SA的入站HIP_NOTIFY_REA時(shí),主機(jī)使用包含HIP_NOTIFY_REA的通告的目的地址作為HIP_NOTIFY_REA加NES指向的本地地址;主機(jī)可以使用相同的IP地址向不同的對(duì)端地址發(fā)送HIP_NOTIFY_REA,這會(huì)同時(shí)建立有不同源地址的多個(gè)入站SA。
此外,當(dāng)主機(jī)本身有多個(gè)接口時(shí),單個(gè)接口也可能成為站點(diǎn)多家鄉(xiāng)。
當(dāng)交換完成之后兩個(gè)主機(jī)同時(shí)需要添加額外的地址,其中主機(jī)1添加地址1b,并向位于地址2a的另一主機(jī)發(fā)送HIP_NOTIFY_REA,而且兩個(gè)主機(jī)之間會(huì)加入一組新的SPI;主機(jī)2添加地址2b,主機(jī)2選擇向主機(jī)1的地址1a、地址1b、或地址1a和地址1b兩者同時(shí)發(fā)送HIP_NOTIFY_REA;如果選擇向兩個(gè)地址同時(shí)發(fā)送,那么兩個(gè)主機(jī)之間會(huì)存在一個(gè)完整的SA網(wǎng)絡(luò)(4對(duì)SA)。
所述主機(jī)可同時(shí)具有移動(dòng)性和多家鄉(xiāng),也就是說(shuō)有多個(gè)移動(dòng)接口;此外,如果接口使用不同的接入技術(shù),則一個(gè)接口是穩(wěn)定的(保持當(dāng)前的地址)而其它的接口是移動(dòng)的(IP地址的改變);HIP_NOTIFY_REA加CREATE_IPSEC_SA足夠靈活能夠處理這樣的場(chǎng)景。
所述的主機(jī)包括安全網(wǎng)關(guān)。
本發(fā)明針對(duì)原有HIP協(xié)議規(guī)程設(shè)計(jì)了一種高效、靈活、可靠的改進(jìn)IKEv2密鑰交換協(xié)議——IKE-H,來(lái)使通信節(jié)點(diǎn)對(duì)等體地址改變時(shí)保證HIP交換發(fā)起者和響應(yīng)者之間端到端通信的安全性為IP數(shù)據(jù)報(bào)提供機(jī)密性、數(shù)據(jù)完整性、接入控制、身份鑒別和數(shù)據(jù)源認(rèn)證,防止在HIP協(xié)議中出現(xiàn)DoS(拒絕服務(wù))或者M(jìn)itM(中間人)等攻擊。
本發(fā)明提供了一種可以在主機(jī)(或者安全網(wǎng)關(guān))具有移動(dòng)性、多家鄉(xiāng)功能,以及同時(shí)多家鄉(xiāng)及移動(dòng)情況下提供維持原有IPSec SA不變來(lái)保護(hù)數(shù)據(jù)功能的方法。并支持一個(gè)同時(shí)有多個(gè)正在通信的IPv4/IPv6連接的安全網(wǎng)關(guān)在IPv4和IPv6地址之間切換即支持站點(diǎn)多家鄉(xiāng),而不用中斷和重新建立高層協(xié)議連接。
此外,采用本發(fā)明,在原先只有端到端的HIP通信擴(kuò)展后可以實(shí)現(xiàn)更多如同安全網(wǎng)關(guān)保護(hù)的內(nèi)部子網(wǎng)主機(jī)通信等應(yīng)用。并支持一般移動(dòng)性、主機(jī)多家鄉(xiāng)、站點(diǎn)多家鄉(xiāng)、雙主機(jī)多家鄉(xiāng)、網(wǎng)絡(luò)重編號(hào)以及多家鄉(xiāng)和移動(dòng)性的結(jié)合等具體場(chǎng)景。


圖1是現(xiàn)有技術(shù)基本的移動(dòng)IPv6組成示意圖;圖2是現(xiàn)有技術(shù)的返回可路由測(cè)試基本過(guò)程示意圖;圖3是現(xiàn)有技術(shù)中雙向隧道通信模式示意圖;圖4是現(xiàn)有技術(shù)中路由最佳化通信模式示意圖;圖5是不同的綁定示意圖;圖6是HIP協(xié)議定義的基本交換過(guò)程示意圖;圖7是現(xiàn)有的使用ESP的報(bào)文的結(jié)構(gòu)圖;圖8是現(xiàn)有的考慮HIP的新的報(bào)文的結(jié)構(gòu)圖;圖9是主機(jī)、由SPI索引的IPSec SA、及地址之間的關(guān)系示意圖;圖10是REA消息格式;圖11是本發(fā)明的初始交換過(guò)程示意圖;圖12是本發(fā)明的CREAT_IPSEC_SA交換過(guò)程示意圖;圖13是本發(fā)明的交換信息的頭部格式;圖14是本發(fā)明的SA載荷格式;圖15是本發(fā)明的提議載荷格式;圖16是本發(fā)明的轉(zhuǎn)換載荷格式;圖17是本發(fā)明的KE載荷格式;圖18是本發(fā)明的AUTH載荷格式;圖19是本發(fā)明的Nonce載荷格式;圖20是本發(fā)明的ID載荷格式;圖21是本發(fā)明的ID INFORMATION交換過(guò)程示意圖;圖22是本發(fā)明的通告載荷格式;圖23是本發(fā)明的HIP_NOTIFY_REA通告數(shù)據(jù)格式;
圖24是本發(fā)明的雙主機(jī)多家鄉(xiāng)情況下各端使用HIP_NOTIFY_REA增加第二個(gè)地址時(shí)的主機(jī)、由SPI索引的IPSec SA、及地址之間的關(guān)系示意圖。
具體實(shí)施例方式
本發(fā)明提供了一種可以在主機(jī)(或者安全網(wǎng)關(guān))具有移動(dòng)性、多家鄉(xiāng)功能,以及同時(shí)多家鄉(xiāng)及移動(dòng)情況下提供維持原有IPSec SA不變來(lái)保護(hù)數(shù)據(jù)功能的方法——IKE-H。并在原有HIP協(xié)議引入HI主機(jī)標(biāo)示符解決終端識(shí)別問(wèn)題的基礎(chǔ)上,本發(fā)明支持一個(gè)同時(shí)有多個(gè)正在通信的IPv4/IPv6連接的安全網(wǎng)關(guān)在IPv4和IPv6地址之間切換即支持站點(diǎn)多家鄉(xiāng),而不用中斷和重新建立高層協(xié)議連接。
本發(fā)明針對(duì)原有HIP協(xié)議規(guī)程設(shè)計(jì)了一種高效、靈活、可靠的改進(jìn)IKEv2密鑰交換協(xié)議——IKE-H,來(lái)使通信節(jié)點(diǎn)對(duì)等體地址改變時(shí)保證HIP交換發(fā)起者和響應(yīng)者之間端到端通信的安全性為IP數(shù)據(jù)報(bào)提供機(jī)密性、數(shù)據(jù)完整性、接入控制、身份鑒別和數(shù)據(jù)源認(rèn)證,防止在HIP協(xié)議中出現(xiàn)DoS(拒絕服務(wù))或者M(jìn)itM(中間人)等攻擊。此外,采用本發(fā)明,在原先只有端到端的HIP通信擴(kuò)展后可以實(shí)現(xiàn)更多如同安全網(wǎng)關(guān)保護(hù)的內(nèi)部子網(wǎng)主機(jī)通信等應(yīng)用。
本發(fā)明是建立在本專利書第一部分提到的HIP協(xié)議,它的基本機(jī)制是在傳輸層和網(wǎng)絡(luò)層之間加入了一個(gè)HI層,將傳輸層通過(guò)主機(jī)身份標(biāo)記HIT或者本地范圍標(biāo)識(shí)LST綁定到標(biāo)示主機(jī)身份的主機(jī)標(biāo)識(shí)符HI上。它與傳統(tǒng)的其他IP協(xié)議主要不同在于使Socket套接口不再和IP地址結(jié)合,這樣就可以為我們解決一般情況的地址變化問(wèn)題帶來(lái)便利。其他基本協(xié)議規(guī)定這里我們不再重述,讀者可參閱第一部分相關(guān)技術(shù)HIP部分。下面介紹本發(fā)明的具體技術(shù)方案以及幾個(gè)使用情況一、IKE-H方法基本概述本發(fā)明提議的IKE-H密鑰交換交換方法可在HIP主機(jī)(或者安全網(wǎng)關(guān))之間建立一對(duì)IPSec SA。這些SA不是綁定到IP地址,而是綁定到用來(lái)建立它們的HI(公共密鑰)上。當(dāng)然,主機(jī)(或者安全網(wǎng)關(guān))至少需要知道它們對(duì)端的一個(gè)可達(dá)的IP地址。最初,這些IP地址就是HIP交換中使用的IP地址。既然SA不是綁定到IP地址的,主機(jī)就能夠從任何地址接收受(由HIP建立的)ESPSA保護(hù)的數(shù)據(jù)包。因此,主機(jī)可以改變自己的IP地址并且繼續(xù)向?qū)Χ税l(fā)送數(shù)據(jù)包。
本發(fā)明提議的IKE-H方法的密鑰交換過(guò)程可以同IETF組織的IKEv2密鑰交換協(xié)議兼容,一些相同的協(xié)議細(xì)節(jié)和更多的說(shuō)明可以參閱有關(guān)草案文檔[14]。
二、用IKE-H方法建立IPSec SA過(guò)程IKE-H密鑰交換協(xié)議在通信對(duì)端之間進(jìn)行相互認(rèn)證并建立一個(gè)包含共享機(jī)密信息的IKE SA,IKE SA中包含秘密信息和一系列加密算法。發(fā)起者采用混合/匹配方式,在所列出的可以支持的算法中建議一個(gè)或多個(gè)算法套件。IKE-H還可以在通信中對(duì)ESP和AH SA協(xié)商使用IP壓縮(IPCOMP)技術(shù)。在這里,通過(guò)IKE SA建立的ESP SA和AH SA被稱為“IPSec SA”。
IKE-H的交換過(guò)程都是由一對(duì)報(bào)文組成請(qǐng)求和應(yīng)答,這對(duì)報(bào)文稱為一組“交換”。在一定的時(shí)間間隔內(nèi)如果沒(méi)有收到應(yīng)答,請(qǐng)求方需要重傳請(qǐng)求(或放棄連接)。第一組交換完成IKE_SA_INIT,協(xié)商包括加密算法、Nonces、DH交換在內(nèi)的值。第二組交換完成IKE_AUTH,認(rèn)證前面的消息、交換身份和證書并建立第一個(gè)IPSec SA。接下來(lái)的交換是CREATE_IPSEC_SA交換(用來(lái)建立以后的IPSec SA,它不是一定要進(jìn)行)或者INFORMATIONAL交換(用來(lái)刪除SA報(bào)告錯(cuò)誤條件并可以做其他管理如檢查生存期等)。
如圖11所示,通常情況下,建立IKE SA和第一個(gè)IPSec SA只需要一次IKE_SA_INIT交換和一次IKE_AUTH交換(一共四條報(bào)文),我們稱為初始交換。但在特殊情況中,可能需要不止一次的這兩種交換。但是不管任何情況中,幾種交換的順序都是首先IKE_SA_INIT交換,它結(jié)束之后是IKE_AUTH交換,接下來(lái)使用的任意數(shù)量的CREATE_IPSEC_SA和INFORMATIONAL交換,它們的順序可以任意。
HDR是每個(gè)IKE-H交換消息的頭部,包括SPI、版本號(hào)以及各種類型的標(biāo)志。SAi1載荷規(guī)定了發(fā)起方為建立IKE_SA所支持的加密算法,響應(yīng)方從發(fā)起方提供的選項(xiàng)中選擇一套加密算法并且在SAr1載荷中表示出來(lái)。KEi載荷傳送發(fā)起方的Diffie-Hellman值,通過(guò)響應(yīng)方KEr載荷完成Diffie-Hellman交換。Ni和Nr載荷分別表示發(fā)起方和響應(yīng)方的Nonce(一般填寫當(dāng)前時(shí)間)。
此外在初始交換的協(xié)商中每一端都會(huì)生成密鑰種子(SKEYSEED),并從中生成IKE SA的所有密鑰。接下來(lái)的所有報(bào)文全部(除了頭部)都會(huì)被加密并受到完整性保護(hù)。用來(lái)加密和進(jìn)行完整性保護(hù)的所有密鑰都來(lái)自于密鑰種子,它們被稱為SK_e(完成加密)和SK_a(完成認(rèn)證,又名完整性保護(hù))。SK_e和SK_a是單向計(jì)算的。使用DH值除了生成保護(hù)IKE SA的密鑰SK_e和SK_a之外,還生成了其他密鑰SK_d(用來(lái)產(chǎn)生后面IPSec SA階段需要的加密材料)。SK{...}表明括號(hào)中的這些載荷是使用本方向的SK_e和SK_a進(jìn)行加密和完整性保護(hù)的。
SKEYEED及其派生值由以下方式計(jì)算SKEYSEED=prf(Ni|Nr,g^ir){SK_d|SK_ai|SK_ar|SK_ei|SK_er|SK_pi|SK_pr}=prf+(SKEYSEED,Ni|Nr|SPIi|SPIr)prf+用來(lái)產(chǎn)生偽隨機(jī)數(shù),prf+()的結(jié)果構(gòu)成SK_d,SK_ai,SK_ar,SK_ei,SK_er,SK_pi和SK_pr值的串聯(lián)。g^ir是來(lái)自D-H交換的共享密鑰材料。g^ir如果需要將其長(zhǎng)度與模一致,可用0填充。如果協(xié)商過(guò)的prf需要固定長(zhǎng)度的密鑰并且Ni和Nr與這個(gè)長(zhǎng)度都不相等,則需要取它們最初的比特(一半來(lái)自Ni一半來(lái)自Nr)。
發(fā)起方在IDi載荷中聲稱自己的身份,使用AUTH載荷證明對(duì)IDi相關(guān)秘密信息的認(rèn)識(shí)并保護(hù)第一個(gè)報(bào)文內(nèi)容的完整性。可選的IDr載荷使發(fā)起方能夠指定她想與之通信的響應(yīng)方眾多身份中的一個(gè)。這對(duì)響應(yīng)方在同一個(gè)IP地址上具有多個(gè)主機(jī)身份的情況下很有用。響應(yīng)方使用SAi2載荷開(kāi)始協(xié)商IPSecSA。
響應(yīng)方在IDr載荷中聲稱自己的身份,用AUTH載荷認(rèn)證他的身份并保護(hù)第二個(gè)報(bào)文的完整性,并完成IPSec SA的協(xié)商。
第3、4條報(bào)文的接收者必須驗(yàn)證所有簽名和MAC的計(jì)算是否正確,以及ID載荷中的名稱與產(chǎn)生AUTH載荷的密鑰是否相符合。
此時(shí),已經(jīng)完成了初始交換并建立IKE SA和第一個(gè)IPSec SA。接下來(lái)的交換是CREATE_IPSEC_SA交換,用來(lái)建立以后的IPSec SA或者INFORMATIONAL交換,用來(lái)刪除SA報(bào)告錯(cuò)誤條件并可以做其它管理。其中,有關(guān)INFORMATIONAL交換來(lái)完成移動(dòng)性和多家鄉(xiāng)的方案設(shè)計(jì)將在第四部分介紹。
CREATE_IPSEC_SA交換只包含一對(duì)獨(dú)立的請(qǐng)求/響應(yīng)信息,相當(dāng)于IKEv1的階段2交換。在初始交換完成后,它可以由IKE SA的任意一端發(fā)起。初始交換之后的所有報(bào)文都受到加密保護(hù),這里采用的是在IKE-H交換頭兩個(gè)報(bào)文中協(xié)商的加密算法和密鑰。IPSec SA是通過(guò)發(fā)送CREATE_IPSEC_SA請(qǐng)求來(lái)創(chuàng)建的。為確保IPSec SA具有更強(qiáng)的向前加密保證,CREATE_IPSEC_SA請(qǐng)求可以選擇性地包含KE載荷,來(lái)進(jìn)行額外的Diffie-Hellman交換。IPSec SA的密鑰材料是SK_d。在初始交換建立的部分IPSec SA中,不能發(fā)送第二個(gè)KE載荷和Nonce。初始交換中的Nonce被用來(lái)計(jì)算IPSec SA的密鑰。
如圖12所示,發(fā)起方在SA載荷中發(fā)送SA提議,在Ni載荷中發(fā)送Nonce,在KEi載荷中可選地發(fā)送Diffie-Hellman值,在TSi和TSr載荷中可選地發(fā)送提議的流量選擇器。如果SA提議中包含不同的Diffie-Hellman組,KEi必須是發(fā)起方希望響應(yīng)方接受的組中的一個(gè)元素。如果猜測(cè)錯(cuò)誤(既響應(yīng)方不接受發(fā)起方推薦的KEi),就意味著CREATE_IPSEC_SA交換失敗并不得不嘗試一個(gè)新的KEi。頭部之后的報(bào)文是加密的,報(bào)文(包含頭部)使用為IKE SA協(xié)商的加密算法進(jìn)行完整性保護(hù)。
響應(yīng)方使用相同的消息ID來(lái)響應(yīng),并在SA載荷中答復(fù)接受的SA提議,并在KEr載荷中答復(fù)Diffie-Hellman值(如果請(qǐng)求中包含了KEi并且所選擇的加密組件中包含請(qǐng)求中的DH組)。如果響應(yīng)方選擇不同組的加密組件它必須拒絕請(qǐng)求,發(fā)起方應(yīng)該重傳請(qǐng)求,并且在請(qǐng)求中要包含響應(yīng)方所選擇組中的KEi載荷。
三、IKE-H載荷格式定義1、IKE-H頭部載荷HDR是每個(gè)IKE-H交換消息的頭部,它的載荷格式如圖13所示。
發(fā)起端SPI(8字節(jié))由起始端選擇,標(biāo)識(shí)一個(gè)唯一的SA。該值一定不能為0。
響應(yīng)端SPI(8字節(jié))由響應(yīng)端選擇,標(biāo)識(shí)一個(gè)唯一的SA。在IKE-H起始交換的第一個(gè)報(bào)文中這個(gè)值必須為0,在其它報(bào)文中一定不能為0。
下一個(gè)載荷(1字節(jié))指出緊接著頭部的載荷的類型。
主版本(4比特)指出正在使用的IKE協(xié)議的主版本。這里的實(shí)現(xiàn)必須將主版本設(shè)置成2?;贗KEv1和ISAKMP的實(shí)現(xiàn)必須將主版本設(shè)置成1。
副版本(4比特)指出正在使用的IKE協(xié)議的副版本。這里的IKE實(shí)現(xiàn)可以將副版本設(shè)置成1。
交換類型(1字節(jié))指出正在使用的交換的類型。這限制了報(bào)文中的載荷和交換中的報(bào)文順序。
交換類型 定義值保留 0-33IKE_SA_INIT 34IKE_AUTH 35
味著一個(gè)提議由這兩個(gè)結(jié)構(gòu)組成。
0或者2(1字節(jié))-說(shuō)明這是否是SA的最后一個(gè)提議載荷。值0為最后一個(gè)。
保留(1字節(jié))-發(fā)送端清0;接收端忽略。
提議長(zhǎng)度(2字節(jié))-提議的長(zhǎng)度,包括接下來(lái)的所有轉(zhuǎn)換和屬性。
提議數(shù)(1字節(jié))-SA的第一個(gè)提議必須是數(shù)1,接下來(lái)的提議或者與前一個(gè)相同(意味著兩個(gè)建議的與)或者比前一個(gè)大1(意味著兩個(gè)提議的或)。
協(xié)議ID(1字節(jié))-當(dāng)前協(xié)商的IPSec協(xié)議標(biāo)識(shí)符。定義值如下協(xié)議 協(xié)議ID保留 0IKE 1AH2ESP 3為IANA保留4-200私有使用 201-255SPI大小(1字節(jié))-對(duì)起始的IKE SA協(xié)商,這個(gè)值必須為0;SPI從外部頭得到。在接下來(lái)的協(xié)商中,它與對(duì)應(yīng)協(xié)議的SPI大小相等(IKE是8字節(jié),ESP和AH是4字節(jié))。
轉(zhuǎn)換數(shù)(1字節(jié))-這個(gè)提議中的轉(zhuǎn)換數(shù)。
SPI(變長(zhǎng))-發(fā)送實(shí)體的SPI。當(dāng)SPI大小域是0時(shí),這個(gè)域不在SA載荷中出現(xiàn)。
轉(zhuǎn)換(變長(zhǎng))-一個(gè)或多個(gè)轉(zhuǎn)換結(jié)構(gòu)。
如圖16所示,每個(gè)提議結(jié)構(gòu)后跟著一個(gè)或多個(gè)轉(zhuǎn)換結(jié)構(gòu)。不同的轉(zhuǎn)換數(shù)是由協(xié)議決定的。AH同常有一個(gè)轉(zhuǎn)換一個(gè)完整性檢驗(yàn)算法。ESP通常有兩個(gè)一個(gè)加密算法和一個(gè)完整性檢驗(yàn)算法。IKE通常有四個(gè)轉(zhuǎn)換一個(gè)Diffie-Hellman組,一個(gè)完整性檢驗(yàn)算法,一個(gè)prf算法和一個(gè)加密算法。如果提議了一個(gè)加密和完整性保護(hù)的組合算法,它必須作為加密算法提議而不能提議完整性保護(hù)算法。對(duì)每個(gè)協(xié)議,允許的轉(zhuǎn)換集合是由轉(zhuǎn)換ID數(shù)分配的,它出現(xiàn)在轉(zhuǎn)換的頭部。
0或者3(1字節(jié))-說(shuō)明這是否是建議的最后一個(gè)轉(zhuǎn)換子結(jié)構(gòu)。值0表示最后一個(gè)。
保留(1字節(jié))-發(fā)送端清0;接收端忽略。
CREATE_IPSEC_SA36INFORMATIONAL 37保留 38-239為擴(kuò)展保留 240-255標(biāo)記(1字節(jié))指出報(bào)文設(shè)置的詳細(xì)選項(xiàng)。選項(xiàng)的存在由設(shè)置標(biāo)志域中對(duì)應(yīng)的比特來(lái)指出。
X(保留)(比特0-2)-這些比特必須在發(fā)送時(shí)清0,接收時(shí)忽略。
I(起始端)(比特3)-該位在IKE SA的最初起始端發(fā)送的報(bào)文中必須置1,在最初響應(yīng)端必須清0。接收端用它來(lái)判斷哪8個(gè)字節(jié)的SPI是由接收端生成的。
V(版本)(比特4)-這個(gè)比特指出,發(fā)送者能夠處理比在主版本域中聲明的更高的協(xié)議版本。這里的實(shí)現(xiàn)必須在發(fā)送時(shí)將這個(gè)比特清0,接收時(shí)忽略。
R(響應(yīng))(比特5)-這個(gè)比特指出,該報(bào)文是響應(yīng)包含同樣ID的報(bào)文。這個(gè)比特必須在所有的請(qǐng)求報(bào)文中清0,在所有的響應(yīng)報(bào)文中置1。IKE端點(diǎn)不能對(duì)標(biāo)志位響應(yīng)的報(bào)文作出響應(yīng)。
X(保留)(比特6-7)-這些比特必須在發(fā)送時(shí)清0,接收時(shí)忽略。
消息ID(4字節(jié))-消息ID用來(lái)控制丟失包的重傳和請(qǐng)求與響應(yīng)的匹配。它是協(xié)議安全的基礎(chǔ),因?yàn)樗脕?lái)阻止報(bào)文的重播攻擊。見(jiàn)2.1和2.2節(jié)。
長(zhǎng)度(4字節(jié))-報(bào)文的總長(zhǎng)度(頭部+所有載荷),以字節(jié)為單位。
2 SA載荷安全聯(lián)盟載荷,簡(jiǎn)稱SA,用于協(xié)商SA的參數(shù),它的載荷類型是33。一個(gè)SA載荷可以有多個(gè)提議載荷。如果有多個(gè)SA載荷,它們必須按照需要程度排序。一個(gè)提議載荷可能包含多個(gè)IPSec協(xié)議(這里指IKE,ESP或AH),每個(gè)協(xié)議可能包括多個(gè)屬性。這樣就形成了提議載荷,轉(zhuǎn)換載荷和屬性的相互嵌套。這樣SA的總載荷長(zhǎng)度包括了SA載荷,提議載荷,轉(zhuǎn)換載荷和屬性信息的組合。提議載荷的長(zhǎng)度包括了它所包含的所有轉(zhuǎn)換載荷和屬性的長(zhǎng)度。轉(zhuǎn)換載荷的長(zhǎng)度包括了它所包含的所有屬性的長(zhǎng)度。這樣的結(jié)構(gòu)和IKEv1以及IKEv2協(xié)議都是保持一樣的。圖14SA載荷格式。
如圖15所示,提議載荷結(jié)構(gòu)包括提議數(shù)目和IPSec協(xié)議ID。每個(gè)結(jié)構(gòu)一定要與前一個(gè)相同或比前一個(gè)大1。如果兩個(gè)連續(xù)的結(jié)構(gòu)有相同的提議數(shù),它意轉(zhuǎn)換長(zhǎng)度-轉(zhuǎn)換子結(jié)構(gòu)的長(zhǎng)度,包括頭部和屬性,以字節(jié)為單位。
轉(zhuǎn)換類型(1字節(jié))-說(shuō)明的轉(zhuǎn)換的類型。不同的協(xié)議支持不同的轉(zhuǎn)換類型。對(duì)有些協(xié)議,一些轉(zhuǎn)換是可選的。如果轉(zhuǎn)換是可選的,而且起始者希望建議忽略那個(gè)轉(zhuǎn)換,建議中就不要包含那個(gè)轉(zhuǎn)換的類型。如果發(fā)起端希望響應(yīng)端使用那個(gè)轉(zhuǎn)換選項(xiàng),就要包含一個(gè)轉(zhuǎn)換ID=0的轉(zhuǎn)換子結(jié)構(gòu)。
轉(zhuǎn)換類型 使用場(chǎng)所加密算法1 (IKE and ESP)偽隨機(jī)功能 2 (IKE)完整性檢查算法 3 (IKE,AH,在ESP可選)Diffie-Hellman組4 (IKE,并在AH和ESP可選)擴(kuò)展序列號(hào) 5 (在AH和ESP可選)為IANA保留 6-240私有使用241-255轉(zhuǎn)換ID(2字節(jié))-被建議的轉(zhuǎn)換類型的ID。
如果多個(gè)轉(zhuǎn)換有相同的轉(zhuǎn)換類型,建議是這些轉(zhuǎn)換的或關(guān)系。如果有多個(gè)不同類型的轉(zhuǎn)換,提議是這些不同組的與關(guān)系。比如,如果提議(3DES或IDEA)和(HMAC_MD5或HMAC_SHA)的ESP,ESP提議應(yīng)該包含兩個(gè)轉(zhuǎn)換類型1的候選(一個(gè)是3DES,另一個(gè)是IDEA)和兩個(gè)轉(zhuǎn)換類型2的候選(一個(gè)是HMAC_MD5,另一個(gè)是HMAC_SHA)。這實(shí)際上提議了四種算法的組合。如果發(fā)起者只想要提議那些的一個(gè)子集-比如(3DES和HMAC_MD5)或(IDEA或HMAC_SHA),就不能把它作為一個(gè)提議中的多個(gè)轉(zhuǎn)換來(lái)編碼,發(fā)起者要構(gòu)造兩個(gè)不同的提議,每個(gè)有兩個(gè)轉(zhuǎn)換。
給定的轉(zhuǎn)換可以有一個(gè)或多個(gè)屬性。轉(zhuǎn)換說(shuō)明算法,屬性說(shuō)明密鑰大小。大多數(shù)的轉(zhuǎn)換都沒(méi)有屬性。一個(gè)轉(zhuǎn)換不能有相同類型的多個(gè)屬性,每個(gè)轉(zhuǎn)換一個(gè)屬性。
3 KE載荷密鑰交換載荷,簡(jiǎn)稱KE,作為Diffie-Hellman交換的一部分用于交換Diffie-Hellman公共數(shù)字。密鑰交換載荷由IKE通用頭部和Diffie-Hellman公共值本身組成。KE密鑰交換載荷格式如圖17所示。
密鑰交換載荷是由復(fù)制Diffie-Hellman公共值到載荷的“密鑰交換數(shù)據(jù)”域構(gòu)成的。
Diffie-Hellman公共值的長(zhǎng)度必須與執(zhí)行求冪運(yùn)算的數(shù)模長(zhǎng)度相同,如果需要可以在前面填0。
DH組數(shù)標(biāo)識(shí)了密鑰交換數(shù)據(jù)計(jì)算所在的Diffie-Hellman組。
密鑰交換載荷的載荷類型是34。
4、認(rèn)證載荷認(rèn)證載荷,簡(jiǎn)稱AUTH,包含用于認(rèn)證目的的數(shù)據(jù)。認(rèn)證數(shù)據(jù)的語(yǔ)法根據(jù)認(rèn)證算法而不同。
認(rèn)證載荷的載荷類型是39。認(rèn)證載荷定義如圖18所示。
認(rèn)證算法(1字節(jié))-定義了認(rèn)證算法。值如下RSA數(shù)字簽名(1)-使用在PKCS#1填充散列上的RSA私有密鑰。
共享密鑰消息(2)-使用與ID載荷的身份和協(xié)商的prf函數(shù)相關(guān)的共享密鑰。
DSS數(shù)字簽名(3)-使用SHA-1散列上的DSS私有密鑰。值0和4-200保留給IANA。值201-255用于私有使用。
認(rèn)證數(shù)據(jù)(變長(zhǎng))。
5、Nonce載荷Nonce載荷,起始端和響應(yīng)端分別簡(jiǎn)稱為Ni和Nr,包含隨機(jī)數(shù),分別表示發(fā)起方和響應(yīng)方的nonce(一般填寫當(dāng)前時(shí)間),用于在交換中保證存在性和抗重播攻擊。Nonce載荷的載荷類型是40。它的載荷定義如圖19所示。
Nonce數(shù)據(jù)(變長(zhǎng))-由傳輸實(shí)體產(chǎn)生的隨機(jī)數(shù),它的大小必須在16和256字節(jié)之間。Nonce值不能重復(fù)使用。
以上這幾種載荷的格式和IPSec工作組的IKEv2協(xié)議載荷格式相同[14],不需要做過(guò)多的改變。但是由于加入了HIP的機(jī)制所以需要在身份認(rèn)證的載荷中進(jìn)行相應(yīng)的擴(kuò)展。由于在IKE_AUTH階段,IDi和IDr身份載荷分別聲明發(fā)起者和響應(yīng)者的身份。現(xiàn)有的ID載荷定義如圖20所示。
ID類型(1字節(jié))-說(shuō)明要使用的身份的類型。
保留-發(fā)送端清0;接收端忽略。
身份數(shù)據(jù)(變長(zhǎng))-由ID類型指出的值?!吧矸輸?shù)據(jù)”域的長(zhǎng)度從ID載荷頭中計(jì)算。
ID類型值 含義保留0ID_IPV4_ADDR1表示4字節(jié)的IPv4地址。
ID_FQDN 2表示完全合格的域名字符串。
ID_RFC822_ADDR 3表示完全合格的RFC822 email地址字符串。
ID_IPV6_ADDR5表示16字節(jié)的IPv6地址。
ID_DER_ASN1_DN 9表示二進(jìn)制DER編碼的[X.501]。
ID_DER_ASN1_GN 10 表示二進(jìn)制DER編碼的[X.509]。
ID_KEY_ID 11 表示不透明的字節(jié)流。
為IANA保留 12-200私有使用保留201-255 可用于我們擴(kuò)展使用。
我們可以在身份載荷中定義一個(gè)新的ID類型ID_HIT來(lái)標(biāo)示HI,暫時(shí)定義它的值為202,然后在“身份數(shù)據(jù)”中放置HIT的具體值。這樣的處理就可以使IKEv2中加入HI這種身份表示方法,并且它可以滿足正常IKEv2身份驗(yàn)證的一致性和可擴(kuò)展性在圖11“IKE-H起始交換”中起始端在IDi載荷中用HITi聲稱自己的身份,用AUTH載荷證明對(duì)與IDi的相關(guān)的秘密信息的認(rèn)識(shí)和保護(hù)第一個(gè)報(bào)文的完整性。響應(yīng)端在IDr載荷中用HITr聲稱自己的身份,用AUTH載荷認(rèn)證他的身份和保護(hù)第二個(gè)報(bào)文的完整性,用附加的域完成IPSEC_SA的協(xié)商。
四、IKE-H實(shí)現(xiàn)移動(dòng)性和多家鄉(xiāng)方案這部分文檔詳細(xì)說(shuō)明了如何使用IKE-H的INFORMATION交換完成保持多IP地址同時(shí)通信以及不同的IP地址切換時(shí)的通信。換句話說(shuō),擴(kuò)展對(duì)多家鄉(xiāng),移動(dòng),和同時(shí)的多家鄉(xiāng)及移動(dòng)等情況提供了支持。此外,完成多家鄉(xiāng)和移動(dòng)引起IP版本變化(IPv4與IPv6)時(shí)的擴(kuò)展,并繼續(xù)保持通信流量,而不用中斷和重新建立高層協(xié)議連接。
為了使IKE SA的對(duì)端可能希望傳輸一些關(guān)于錯(cuò)誤或事件通知的控制信息,所以在IKEv2協(xié)議[14]定義了INFORMATIONAL交換。INFORMATIONAL交換只能在起始交換之后發(fā)生,并且用協(xié)商的密鑰加密保護(hù)。INFORMATIONAL交換中的報(bào)文包含0個(gè)或多個(gè)通告,刪除,和配置載荷。INFORMATIONAL交換請(qǐng)求的接收端必須發(fā)出響應(yīng)(否則發(fā)送者會(huì)認(rèn)為報(bào)文在網(wǎng)絡(luò)中丟失并且重發(fā)報(bào)文)。響應(yīng)可以是沒(méi)有載荷的報(bào)文。INFORMATIONAL交換的請(qǐng)求報(bào)文也可以不包括任何載荷。通過(guò)這種方法,一個(gè)端點(diǎn)可以讓另一個(gè)端點(diǎn)證明它還可用。
INFORMATIONAL交換的基本定義如圖21所示。
INFORMATIONAL交換的處理由它的組成載荷決定。
我們這里利用用通告載荷和配置載荷來(lái)完成移動(dòng)性和多家鄉(xiāng)的功能。
通報(bào)載荷,簡(jiǎn)稱N,用于在對(duì)端之間傳輸信息數(shù)據(jù),像差錯(cuò)情況和狀態(tài)傳輸。通報(bào)載荷可以出現(xiàn)在響應(yīng)報(bào)文中(通常用來(lái)說(shuō)明請(qǐng)求被拒絕的原因),在INFORMATIONAL交換中(報(bào)告不是IKE請(qǐng)求的差錯(cuò)),或在其它任意報(bào)文中(指出發(fā)送端的能力或修改請(qǐng)求的含義)。通告載荷的載荷類型是41。
通報(bào)載荷的定義如圖22所示。
協(xié)議ID(1字節(jié))-如果這個(gè)通告是關(guān)于一個(gè)現(xiàn)存的SA,這個(gè)域指出那個(gè)SA的類型。對(duì)IKE_SA通告,這個(gè)域是1。對(duì)于IPSec SA的通告,這個(gè)域是2(代表AH)或3(代表ESP)。對(duì)與現(xiàn)存SA無(wú)關(guān)的通告,這個(gè)域必須設(shè)置為0,必須在接收端忽略。這個(gè)域的其它值保留由IANA將來(lái)分配。
SPI大小(1字節(jié))-由IPSec協(xié)議ID定義的SPI長(zhǎng)度或是0(如果沒(méi)有SPI),以字節(jié)為單位。關(guān)于IKE SA的通告,SPI大小必須為0。
通告報(bào)文類型(2字節(jié))-通告報(bào)文的類型。
SPI(變長(zhǎng))-安全參數(shù)索引。SPI域標(biāo)識(shí)了這個(gè)參數(shù)要應(yīng)用的SPI。它被發(fā)送主機(jī)HI含蓄的認(rèn)證。發(fā)送主機(jī)可以隨意引入新的SPI。也就是說(shuō),如果接收的消息有新的SPI,它意味著所有指定給舊SPI的地址仍然工作,同時(shí)新接收的消息中的新地址是與新SPI相關(guān)聯(lián)的。另一方面,如果接收的消息中有一個(gè)接收端已經(jīng)知道的SPI,應(yīng)該用新地址取代所有與這個(gè)SPI相關(guān)的地址。
通告數(shù)據(jù)(變長(zhǎng))-除了通告報(bào)文類型以外,傳輸?shù)男畔⒒虿铄e(cuò)數(shù)據(jù)。這個(gè)域的值是基于類型的。
通告信息可以是說(shuō)明SA不能建立的原因的差錯(cuò)報(bào)文,也可以是管理SADB的程序想與另一個(gè)程序傳輸?shù)臓顟B(tài)信息。0-16383的類型用于報(bào)告差錯(cuò)。關(guān)于狀態(tài)類型的通告載荷可以被加入任何報(bào)文中,而且,如果不能識(shí)別時(shí)必須忽略。它們用來(lái)指示性能,和協(xié)商非加密參數(shù)(作為SA協(xié)商的一部分)。具體的有關(guān)通告信息類型可參閱[14]。其中,8192-16383和40960-65535是供私有使用的,我們定義一種新的類型用來(lái)完成HIP主機(jī)交換關(guān)于IP地址和地址改變信息的功能HIP_NOTIFY_REA,它的值為40960。
此類型的通告數(shù)據(jù)格式如圖23所示。
保留(1比特)-發(fā)送端清0;接收端忽略。
屬性類型(7比特)-配置屬性類型的唯一識(shí)別符,表明地址的類型。
長(zhǎng)度(2字節(jié))-以字節(jié)為單位。
值(0或多字節(jié))-這個(gè)配置屬性的變長(zhǎng)值域。
P首選地址。如果HIP_NOTIFY_REA中的第一個(gè)地址是新的首選地址,則置1;否則置0。
保留發(fā)送置1,接收忽略。
地址生存時(shí)間以秒為單位。
地址IPv6地址或IPv4-in-IPv6格式的IPv4地址。
定義了這樣的通告載荷,我們就可以具體考慮了以下幾種不同的移動(dòng)性和多家鄉(xiāng)情況中的INFORMATIONAL交換來(lái)通知地址的改變1)使用一對(duì)SA的移動(dòng)性;由于鏈路通告的IPv6前綴改變,PPP鏈路的重連接,新DHCP分配,或移動(dòng)到其它子網(wǎng)移動(dòng)主機(jī)有時(shí)必須改變綁定到接口的IP地址。此時(shí),為了維護(hù)通信關(guān)系,主機(jī)必須通知對(duì)端新的IP地址。在這個(gè)部分只考慮了移動(dòng)主機(jī)只有一個(gè)接口,IP地址和一對(duì)SA(一個(gè)入站,一個(gè)出戰(zhàn))的情況。
當(dāng)移動(dòng)主機(jī)從一個(gè)IP地址切換到另一個(gè)時(shí),會(huì)與對(duì)端斷開(kāi)連接一段很短的時(shí)間。一得到新IP地址,移動(dòng)主機(jī)就通過(guò)INFORMATIONAL交換向?qū)Χ税l(fā)送HIP_NOTIFY_REA參數(shù)并指出以下問(wèn)題新IP地址,與新IP地址相關(guān)的SPI,地址生存時(shí)間,和新地址是否為首選地址。
2)主機(jī)多家鄉(xiāng);一個(gè)主機(jī)(移動(dòng)或靜止的)可能有多于一個(gè)的接口。主機(jī)可能通過(guò)HIP_NOTIFY_REA參數(shù)通知對(duì)端主機(jī)附屬的接口。為了避免ESP重排序窗口的問(wèn)題,主機(jī)應(yīng)該為每個(gè)用來(lái)從對(duì)端主機(jī)接收數(shù)據(jù)的接口使用不同的SA。當(dāng)提供給對(duì)端主機(jī)多于一個(gè)的地址,主機(jī)應(yīng)該指出哪個(gè)地址是首選的。默認(rèn)的,IKE-H交換中使用的地址是首選的。
當(dāng)處理建立新SA的入站HIP_NOTIFY_REA時(shí),主機(jī)使用包含HIP_NOTIFY_REA的通告的目的地址作為HIP_NOTIFY_REA加NES指向的本地地址。主機(jī)可以使用相同的IP地址向不同的對(duì)端地址發(fā)送HIP_NOTIFY_REA,這會(huì)同時(shí)的建立有不同源地址的多個(gè)入站SA。
3)站點(diǎn)多家鄉(xiāng);主機(jī)可能有一個(gè)具有多個(gè)全球IP地址的接口。這種場(chǎng)景可能是由于有多個(gè)高層ISP的站點(diǎn),或僅僅是因?yàn)檎军c(diǎn)為所有主機(jī)同時(shí)提供IPv4和IPv6地址。這種情況的處理就好像有不同IP地址一樣,如上面主機(jī)多家鄉(xiāng)所述。此外,當(dāng)主機(jī)本身有多個(gè)接口時(shí),單個(gè)接口也可能成為站點(diǎn)多家鄉(xiāng)。
4)雙主機(jī)多家鄉(xiāng);如圖24所示,考慮以下這種情況,當(dāng)IKE-H交換完成之后兩個(gè)主機(jī)都想要添加額外的地址。主機(jī)1想要添加地址地址1b。它會(huì)向位于地址2a的主機(jī)2發(fā)送HIP_NOTIFY_REA,而且主機(jī)1和2之間會(huì)加入一組新的SPI(稱為SPI1b和SPI2b)。接下來(lái),考慮主機(jī)2想要添加地址地址2b。主機(jī)2現(xiàn)在可以選擇向主機(jī)1的哪個(gè)地址發(fā)送HIP_NOTIFY_REA。它可以選擇向地址1a,地址1b,或兩者同時(shí)發(fā)送HIP_NOTIFY_REA。如果它選擇向兩個(gè)地址同時(shí)發(fā)送,那么兩個(gè)主機(jī)之間會(huì)存在一個(gè)完整的SA網(wǎng)絡(luò)(4對(duì)SA)。這是最普遍的情況;經(jīng)常是主機(jī)只與對(duì)端的首選地址建立新的SA。IKE-H地址重分配協(xié)議足夠靈活,完全能夠適應(yīng)這種情況。
5)移動(dòng)性和多家鄉(xiāng)的結(jié)合;許多主機(jī)可能同時(shí)具有移動(dòng)性和多家鄉(xiāng),也就是說(shuō)有多個(gè)移動(dòng)接口。此外,如果接口使用不同的接入技術(shù),可能一個(gè)接口是穩(wěn)定的(保持當(dāng)前的地址)而其它的接口是移動(dòng)的(IP地址的改變)。HIP_NOTIFY_REA加CREATE_IPSEC_SA足夠靈活能夠處理多數(shù)這樣的場(chǎng)景。
6)網(wǎng)絡(luò)重編號(hào)IPv6網(wǎng)絡(luò)的重編號(hào)會(huì)比大多數(shù)IPv4的網(wǎng)絡(luò)更頻繁。從一個(gè)端主機(jī)的角度來(lái)看,網(wǎng)絡(luò)重編號(hào)與移動(dòng)性相似。
五、有關(guān)IKE-H方法的一些考慮IKE-H方法主要是在原有HIP協(xié)議基本框架的基礎(chǔ)上對(duì)HIP協(xié)議的密鑰交換協(xié)議——基本交換作出了必要的改進(jìn)。并為了實(shí)現(xiàn)主機(jī)(包括安全網(wǎng)關(guān)在內(nèi))的移動(dòng)性和多家鄉(xiāng)功能擴(kuò)展定義了新的通告載荷報(bào)文類型以及HIP_NOTIFY_REA數(shù)據(jù)格式??紤]了不同環(huán)境下的具體使用。由于采用的是基于IKE的密鑰交換協(xié)議,所以可以使適用范圍由終端主機(jī)擴(kuò)展到包括終端主機(jī)在內(nèi)安全網(wǎng)關(guān)等不同的場(chǎng)所。
本發(fā)明技術(shù)方案帶來(lái)的有益效果為本發(fā)明針對(duì)原有HIP協(xié)議規(guī)程設(shè)計(jì)了一種高效、靈活、可靠的改進(jìn)IKEv2密鑰交換協(xié)議——IKE-H,來(lái)使通信節(jié)點(diǎn)對(duì)等體地址改變時(shí)保證HIP交換發(fā)起者和響應(yīng)者之間端到端通信的安全性為IP數(shù)據(jù)報(bào)提供機(jī)密性、數(shù)據(jù)完整性、接入控制、身份鑒別和數(shù)據(jù)源認(rèn)證,防止在HIP協(xié)議中出現(xiàn)DoS(拒絕服務(wù))或者M(jìn)itM(中間人)等攻擊。
本發(fā)明提供了一種可以在主機(jī)(或者安全網(wǎng)關(guān))具有移動(dòng)性、多家鄉(xiāng)功能,以及同時(shí)多家鄉(xiāng)及移動(dòng)情況下提供維持原有IPSec SA不變來(lái)保護(hù)數(shù)據(jù)功能的方法。并支持一個(gè)同時(shí)有多個(gè)正在通信的IPv4/IPv6連接的安全網(wǎng)關(guān)在IPv4和IPv6地址之間切換即支持站點(diǎn)多家鄉(xiāng),而不用中斷和重新建立高層協(xié)議連接。
此外,采用本發(fā)明,在原先只有端到端的HIP通信擴(kuò)展后可以實(shí)現(xiàn)更多如同安全網(wǎng)關(guān)保護(hù)的內(nèi)部子網(wǎng)主機(jī)通信等應(yīng)用。并支持一般移動(dòng)性、主機(jī)多家鄉(xiāng)、站點(diǎn)多家鄉(xiāng)、雙主機(jī)多家鄉(xiāng)、網(wǎng)絡(luò)重編號(hào)以及多家鄉(xiāng)和移動(dòng)性的結(jié)合等具體場(chǎng)景。
以上具體實(shí)施方式
僅用于說(shuō)明而非用于限定本發(fā)明。
參考文獻(xiàn)(如專利/論文/標(biāo)準(zhǔn))[1]R.Moskowitz and P.Nikander,“Host Identity Protocol Architecture”,work in progress,Internet-Draft,IETF,June 2004. P.Nikander,J.Ylitalo,and J.Wall,“Integrating Security,Mobility,and Multi-Homingin a HIP Way,”in Proc.Network and Distributed Systems Security Symposium,F(xiàn)ebruary 6-7,2003,San Diego,CA,pp.87-99,Internet Society,F(xiàn)ebruary 2003. T.Kivinen,“Design of the MOBIKE protocol,”work in progress,Internet-Draft,IETF,June 2004[4]D.Johnson,C.Perkins,J.Arkko,“Mobility Support in IPv6”,RFC 3775,IETF,June2004[5]F.Dupont,W.Haddad,“How to make IPsec more mobile IPv6 fiendly”,work inprogress,Internet-Draft,IETF,F(xiàn)ebruary 2004. D.Khatavkar,E.R.Hixon,R.Pendse,“Quantizing the throughput reduction of IPSecwith mobile IP”,Circuits and Systems,2002.MWSCAS-2002.The 2002 45th MidwestSymposium on,Volume3,4-7Aug.2002 PagesIII-505-III-508 vol.3[7]Yongguang Zhang,“A multilayer IP security protocol for TCP performanceenhancement in wireless networks”,Selected Areas in Communications,IEEE Journalon,Volume22,Issue4,May 2004 Pages767-776. Wang Haitao,Zheng Shaoren,“The security issues and countermeasures in Mobile IP”,Info-tech and Info-net,2001.Proceedings.ICII 2001-Beijing.2001 International Conferenceson,Volume5,29 Oct.-1 Nov.2001 Pages122-127 vol.5[9]T.Braun,M.Danzeisen,“Secure mobile IP communication”,Local ComputerNetworks,2001.Proceedings.LCN 2001.26th Annual IEEE Conference on,14-16 Nov.2001Pages586-593[10]N.Assaf,J.Luo,M.Dillinger,L.Menendez,“Interworking between IP security andperformance enhancing proxies for mobile networks”,Communications Magazine,IEEE,Volume40,Issue5,May 2002 Pages138-144[11]R.Moskowitz,P.Nikander,P.Jokela,T.Henderson,“Host Identity Protocol”,workin progress,Internet-Draft,IETF,June 11,2004[12]P.Nikander,J.Arkko,T.Henderson,“End-Host Mobility and Multi-Homing withHost Identity Protocol”,work in progress,Internet-Draft,IETF,July 13,2004[13]T.R.Henderson,J.M.Ahrenholz,J.H.Kim,“Experience with the host identityprotocol for secure host mobility and multihoming”,Wireless Communications and Networking,2003.WCNC 2003.2003 IEEE,Volume3,16-20 March 2003 Pages2120-2125 vol.3[14]Charlie Kaufman,“Internet Key Exchange(IKEv2)Protocol”,work in progress,Internet-Draft,IETF,May 29,2004[15]Francis Dupont,“Address Management for IKE version 2”,work in progress,Internet-Draft,IETF,F(xiàn)ebruary 2003[16]P.Eronen,H.Tschofenig“Simple Mobility and Multihoming Extensions for IKEv2(SMOBIKE)”,work in progress,Internet-Draft,IETF,March 29,2004[17]T.Kivinen,“MOBIKE protocol”,work in progress,Internet-Draft,IETF,F(xiàn)ebruary 24,200權(quán)利要求
1.一種實(shí)現(xiàn)主機(jī)移動(dòng)性和多家鄉(xiāng)功能的密鑰交換協(xié)議方法,采用主機(jī)身份協(xié)議時(shí),在傳輸層和網(wǎng)絡(luò)層之間加入一個(gè)主機(jī)標(biāo)識(shí)符層,將傳輸層綁定到所述的主機(jī)標(biāo)識(shí)符上;其特征在于在HIP主機(jī)之間建立一對(duì)互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟;所述的HIP主機(jī)至少知道其通信對(duì)端的一個(gè)可達(dá)的IP地址;所述的IP地址為HIP交換中最初使用的IP地址;將所述的聯(lián)盟綁定到所述的主機(jī)標(biāo)識(shí)符上,使所述的HIP主機(jī)能夠從任何地址接收由HIP建立的、受封裝安全載荷聯(lián)盟保護(hù)的數(shù)據(jù)包;所述的HIP主機(jī)也能夠改變自己的IP地址并且繼續(xù)向通信對(duì)端發(fā)送數(shù)據(jù)包。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在通信對(duì)端之間進(jìn)行相互認(rèn)證,并建立一個(gè)包含共享機(jī)密信息的互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟,在所述的互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟中包含秘密信息和一系列加密算法;其中,發(fā)起者采用混合/匹配方式,在所列出的可以支持的算法中建議一個(gè)或多個(gè)算法套件。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在通信中對(duì)封裝安全載荷和認(rèn)證頭部聯(lián)盟使用IP壓縮技術(shù)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,在交換過(guò)程中,每一組交換均由一對(duì)報(bào)文組成,所述的一對(duì)報(bào)文包括請(qǐng)求和應(yīng)答;其中在一定的時(shí)間間隔內(nèi)如果請(qǐng)求方?jīng)]有收到應(yīng)答方的應(yīng)答,則請(qǐng)求方需重傳請(qǐng)求或放棄連接。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在交換過(guò)程中完成的交換包括IKE_SA_INIT交換,協(xié)商包括加密算法、Nonces、DH交換在內(nèi)的值;IKE_AUTH交換,認(rèn)證前面的消息、交換身份和證書并建立第一個(gè)互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,在交換過(guò)程中完成的交換還包括CREATE_IPSEC_SA交換,用來(lái)建立以后的互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于,在交換過(guò)程中完成的交換還包括或者INFORMATIONAL交換,用來(lái)刪除聯(lián)盟報(bào)告錯(cuò)誤條件,并可以執(zhí)行檢查生存期等其他管理步驟。
8.根據(jù)權(quán)利要求5所述的方法,其特征在于,在交換過(guò)程中交換的順序?yàn)槭紫冗M(jìn)行所述的IKE_SA_INIT交換,然后進(jìn)行所述的IKE_AUTH交換;接下來(lái)使用的任意數(shù)量的CREATE_IPSEC_SA和INFORMATIONAL交換,它們的順序?yàn)槿我狻?br> 9.根據(jù)權(quán)利要求8所述的方法,其特征在于,通過(guò)一次所述的IKE_SA_INIT交換和一次所述的IKE_AUTH交換完成初始交換,從而建立互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟和第一個(gè)互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟。
10.根據(jù)權(quán)利要求5或8或9所述的方法,其特征在于,所述的IKE_SA_INIT交換包括請(qǐng)求報(bào)文HDR,SAi1,KEi,Ni;應(yīng)答報(bào)文HDR,SAr1,KEr,Nr;所述的IKE_AUTH交換包括請(qǐng)求報(bào)文HDR,SK{IDi,[IDr,]AUTH,SAi2,TSi,TSr};應(yīng)答報(bào)文HDR,SK{IDr,AUTH,SAr2,TSi,TSr}。
11.根據(jù)權(quán)利要求10所述的方法,其特征在于,所述的HDR是每個(gè)交換消息的頭部,其包括SPI、版本號(hào)以及各種類型的標(biāo)志;所述的SAi1載荷規(guī)定了請(qǐng)求方為建立互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟所支持的加密算法,應(yīng)答方從請(qǐng)求方提供的選項(xiàng)中選擇一套加密算法并且在SAr1載荷中表示出來(lái);所述的KEi載荷傳送請(qǐng)求方的Diffie-Hellman值,通過(guò)應(yīng)答方KEr載荷完成Diffie-Hellman交換;所述的Ni和Nr載荷分別表示請(qǐng)求方和應(yīng)答方的Nonce;請(qǐng)求方在IDi載荷中聲稱自己的身份,使用AUTH載荷證明對(duì)IDi相關(guān)秘密信息的認(rèn)識(shí)并保護(hù)第一個(gè)報(bào)文內(nèi)容的完整性;可選的IDr載荷使請(qǐng)求方能夠指定與之通信的應(yīng)答方眾多身份中的一個(gè),應(yīng)答方使用SAi2載荷開(kāi)始協(xié)商互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟;應(yīng)答方在IDr載荷中聲稱自己的身份,用AUTH載荷認(rèn)證其身份并保護(hù)第二個(gè)報(bào)文的完整性,并完成互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟的協(xié)商。
12.根據(jù)權(quán)利要求10所述的方法,其特征在于,在初始交換的協(xié)商中每一端都會(huì)生成密鑰種子,并從中生成互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟的所有密鑰;接下來(lái)的所有報(bào)文,除了頭部全部被加密并受到完整性保護(hù),且用來(lái)加密和進(jìn)行完整性保護(hù)的所有密鑰都來(lái)自于所述的密鑰種子。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述的密鑰包括SK_e,即完成加密;SK_a,即完成認(rèn)證;和SK_d,以用來(lái)產(chǎn)生后面互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟階段需要的加密材料;所述SK_e和SK_a為單向計(jì)算;采用DH值生成保護(hù)互聯(lián)網(wǎng)密鑰交換協(xié)議聯(lián)盟的密鑰SK_e和SK_a。
14.根據(jù)權(quán)利要求10所述的方法,其特征在于,所述的IKE_AUTH交換中的報(bào)文接收者必須驗(yàn)證所有簽名和MAC的計(jì)算是否正確,以及ID載荷中的名稱與產(chǎn)生AUTH載荷的密鑰是否相符合。
15.根據(jù)權(quán)利要求6或8所述的方法,其特征在于,所述的CREATE_IPSEC_SA交換只包含一對(duì)獨(dú)立的請(qǐng)求/響應(yīng)信息,即請(qǐng)求方報(bào)文HDR,SK{[N],SA,Ni,[KEi],[TSi,TSr]};應(yīng)答方報(bào)文HDR,SK{SA,Nr,[KEr],[TSi,TSr]};其中請(qǐng)求方在SA載荷中發(fā)送SA提議,在Ni載荷中發(fā)送Nonce,在KEi載荷中選擇地發(fā)送Diffie-Hellman值,在TSi和TSr載荷中選擇地發(fā)送提議的流量選擇器;如果SA提議中包含不同的Diffie-Hellman組,KEi必須是發(fā)起方希望響應(yīng)方接受的組中的一個(gè)元素;如果猜測(cè)錯(cuò)誤,則CREATE_IPSEC_SA交換失敗,并不得不嘗試一個(gè)新的Kei;頭部之后的報(bào)文是加密的,報(bào)文使用為IKE SA協(xié)商的加密算法進(jìn)行完整性保護(hù);應(yīng)答方使用相同的消息ID來(lái)響應(yīng),并在SA載荷中答復(fù)接受的SA提議,并在KEr載荷中答復(fù)Diffie-Hellman值;如果響應(yīng)方選擇不同組的加密組件它必須拒絕請(qǐng)求,請(qǐng)求方重傳請(qǐng)求,并且在請(qǐng)求中要包含應(yīng)答方所選擇組中的KEi載荷。
16.根據(jù)權(quán)利要求7或8所述的方法,其特征在于,所述的INFORMATIONAL交換只能在起始交換之后發(fā)生,并且用協(xié)商的密鑰加密保護(hù);所述的INFORMATIONAL交換中的報(bào)文包含0個(gè)或多個(gè)通告,刪除,和配置載荷;所述的INFORMATIONAL交換請(qǐng)求的接收端必須發(fā)出響應(yīng)。
17.根據(jù)權(quán)利要求16所述的方法,其特征在于,響應(yīng)是沒(méi)有載荷的報(bào)文;INFORMATIONAL交換的請(qǐng)求報(bào)文也可以不包括任何載荷。
18.根據(jù)權(quán)利要求16所述的方法,其特征在于,所述的INFORMATIONAL交換包括請(qǐng)求方報(bào)文HDR,SK{[N],[D,][CP,]...};應(yīng)答方報(bào)文HDR,SK{[N,][D,][CP],...};并且,利用通告載荷和配置載荷來(lái)實(shí)現(xiàn)移動(dòng)性和多家鄉(xiāng)的功能。
19.根據(jù)權(quán)利要求18所述的方法,其特征在于,定義一種新的類型用來(lái)完成HIP主機(jī)交換關(guān)于IP地址和地址改變信息的功能HIP_NOTIFY_REA;當(dāng)移動(dòng)主機(jī)從一個(gè)IP地址切換到另一個(gè)IP地址時(shí),會(huì)與對(duì)端斷開(kāi)連接一段很短的時(shí)間;一得到新IP地址,移動(dòng)主機(jī)就通過(guò)所述的INFORMATIONAL交換向?qū)Χ税l(fā)送HIP_NOTIFY_REA參數(shù)并指出以下問(wèn)題新IP地址,與新IP地址相關(guān)的SPI,地址生存時(shí)間,和新地址是否為首選地址。
20.根據(jù)權(quán)利要求18所述的方法,其特征在于,定義一種新的類型用來(lái)完成HIP主機(jī)交換關(guān)于IP地址和地址改變信息的功能HIP_NOTIFY_REA;所述的主機(jī)具有多于一個(gè)的接口,該主機(jī)通過(guò)HIP_NOTIFY_REA參數(shù)通知對(duì)端主機(jī)附屬的接口;主機(jī)需為每個(gè)用來(lái)從對(duì)端主機(jī)接收數(shù)據(jù)的接口使用不同的SA;當(dāng)提供給對(duì)端主機(jī)多于一個(gè)的地址,主機(jī)需指出首選地址;當(dāng)處理建立新SA的入站HIP_NOTIFY_REA時(shí),主機(jī)使用包含HIP_NOTIFY_REA的通告的目的地址作為HIP_NOTIFY_REA加NES指向的本地地址;主機(jī)可以使用相同的IP地址向不同的對(duì)端地址發(fā)送HIP_NOTIFY_REA,這會(huì)同時(shí)建立有不同源地址的多個(gè)入站SA。
21.根據(jù)權(quán)利要求18所述的方法,其特征在于,定義一種新的類型用來(lái)完成HIP主機(jī)交換關(guān)于IP地址和地址改變信息的功能HIP_NOTIFY_REA;所述的主機(jī)包含一個(gè)具有多個(gè)全球IP地址的接口;該主機(jī)通過(guò)HIP_NOTIFY_REA參數(shù)通知對(duì)端主機(jī)附屬的接口;主機(jī)需為每個(gè)用來(lái)從對(duì)端主機(jī)接收數(shù)據(jù)的接口使用不同的SA;當(dāng)提供給對(duì)端主機(jī)多于一個(gè)的地址,主機(jī)需指出首選地址;當(dāng)處理建立新SA的入站HIP_NOTIFY_REA時(shí),主機(jī)使用包含HIP_NOTIFY_REA的通告的目的地址作為HIP_NOTIFY_REA加NES指向的本地地址;主機(jī)可以使用相同的IP地址向不同的對(duì)端地址發(fā)送HIP_NOTIFY_REA,這會(huì)同時(shí)建立有不同源地址的多個(gè)入站SA。此外,當(dāng)主機(jī)本身有多個(gè)接口時(shí),單個(gè)接口也可能成為站點(diǎn)多家鄉(xiāng)。
22.根據(jù)權(quán)利要求18所述的方法,其特征在于,定義一種新的類型用來(lái)完成HIP主機(jī)交換關(guān)于IP地址和地址改變信息的功能HIP_NOTIFY_REA;當(dāng)交換完成之后兩個(gè)主機(jī)同時(shí)需要添加額外的地址,其中主機(jī)1添加地址1b,并向位于地址2a的另一主機(jī)發(fā)送HIP_NOTIFY_REA,而且兩個(gè)主機(jī)之間會(huì)加入一組新的SPI;主機(jī)2添加地址2b,主機(jī)2選擇向主機(jī)1的地址1a、地址1b、或地址1a和地址1b兩者同時(shí)發(fā)送HIP_NOTIFY_REA;如果選擇向兩個(gè)地址同時(shí)發(fā)送,那么兩個(gè)主機(jī)之間會(huì)存在一個(gè)完整的SA網(wǎng)絡(luò)。
23.根據(jù)權(quán)利要求18所述的方法,其特征在于,定義一種新的類型用來(lái)完成HIP主機(jī)交換關(guān)于IP地址和地址改變信息的功能HIP_NOTIFY_REA;所述主機(jī)可同時(shí)具有移動(dòng)性和多家鄉(xiāng),也就是說(shuō)有多個(gè)移動(dòng)接口;此外,如果接口使用不同的接入技術(shù),則一個(gè)接口是穩(wěn)定的而其它的接口是移動(dòng)的;HIP_NOTIFY_REA加CREATE_IPSEC_SA足夠靈活能夠處理這樣的場(chǎng)景。
24.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述的主機(jī)包括安全網(wǎng)關(guān)。
全文摘要
本發(fā)明提供一種實(shí)現(xiàn)主機(jī)移動(dòng)性和多家鄉(xiāng)功能的互聯(lián)網(wǎng)密鑰交換協(xié)議方法。在傳輸層和網(wǎng)絡(luò)層之間加入一個(gè)主機(jī)標(biāo)識(shí)符層,將傳輸層綁定到所述的主機(jī)標(biāo)識(shí)符上;在HIP主機(jī)之間建立一對(duì)互聯(lián)網(wǎng)協(xié)議安全聯(lián)盟;將所述的聯(lián)盟綁定到所述的主機(jī)標(biāo)識(shí)符上,使所述的HIP主機(jī)能夠從任何地址接收由HIP建立的、受封裝安全載荷聯(lián)盟保護(hù)的數(shù)據(jù)包;所述的HIP主機(jī)也能夠改變自己的IP地址并且繼續(xù)向通信對(duì)端發(fā)送數(shù)據(jù)包。以使通信節(jié)點(diǎn)對(duì)等體地址改變時(shí)保證HIP交換發(fā)起者和響應(yīng)者之間端到端通信的安全性為IP數(shù)據(jù)報(bào)提供機(jī)密性、數(shù)據(jù)完整性、接入控制、身份鑒別和數(shù)據(jù)源認(rèn)證,防止在HIP協(xié)議中出現(xiàn)拒絕服務(wù)或者中間人等攻擊。
文檔編號(hào)H04L9/00GK1741523SQ20041005705
公開(kāi)日2006年3月1日 申請(qǐng)日期2004年8月25日 優(yōu)先權(quán)日2004年8月25日
發(fā)明者張宏科, 張思東, 任彥, 蘇偉, 楊申, 楊賀, 鄭祖周, 陳建, 王江林, 劉穎, 郜帥, 秦亞娟 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
托克托县| 西城区| 延津县| 邵武市| 类乌齐县| 来安县| 通化县| 晋州市| 怀宁县| 新乐市| 峨边| 洪洞县| 改则县| 专栏| 乃东县| 安康市| 九寨沟县| 盈江县| 宁明县| 泰和县| 泾源县| 庆云县| 山丹县| 岳西县| 新宁县| 靖边县| 吉林省| 贡觉县| 迁西县| 大洼县| 扶绥县| 安平县| 邯郸市| 桐乡市| 昌宁县| 丘北县| 青岛市| 宜都市| 丹寨县| 建始县| 长沙县|