本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種認(rèn)證協(xié)商方法及裝置。
背景技術(shù):
IKEv2(Internet Key Exchange Version 2,互聯(lián)網(wǎng)密鑰交換協(xié)議版本2)是一種用于協(xié)商密鑰的協(xié)議,可以為IPsec(Internet Protocol Security,互聯(lián)網(wǎng)協(xié)議安全性)隧道協(xié)商安全協(xié)議、算法、密鑰等參數(shù)。
一次完整的IKEv2協(xié)商,至少需要4條報(bào)文交互。前兩條消息(稱為IKE_SA(Security Association,安全聯(lián)盟)_INIT(IKE SA初始化)交互消息)用于IKE秘鑰材料交換,后兩條消息(稱為IKE_AUTH(IKE認(rèn)證)消息)用于完成IKE認(rèn)證和協(xié)商IPsec SA。
現(xiàn)有IKEv2協(xié)商過程中,響應(yīng)方設(shè)備接收到發(fā)起方設(shè)備發(fā)送的IKE_AUTH消息時(shí),一方面會(huì)生成入方向和出方向IPsec SA并將其使能;另一方面會(huì)向發(fā)起方設(shè)備發(fā)送IKE_AUTH消息,若此時(shí)存在響應(yīng)方設(shè)備發(fā)往發(fā)起方設(shè)備的數(shù)據(jù)流量,則響應(yīng)方設(shè)備會(huì)通過出方向IPsec SA對(duì)該數(shù)據(jù)流量加密,并發(fā)送給發(fā)起方設(shè)備,如果加密后的數(shù)據(jù)流量比IKE_AUTH消息先到達(dá)發(fā)起方設(shè)備,發(fā)起方設(shè)備會(huì)發(fā)送INVALID(無效的)SPI(Security Parameter Index,安全參數(shù)索引)消息給響應(yīng)方設(shè)備,然后再完成協(xié)商,生成入方向和出方向IPsec SA;響應(yīng)方設(shè)備接收到INVALID SPI消息時(shí),會(huì)把本端的IPsec SA刪掉,這樣就導(dǎo)致發(fā)起方設(shè)備有IPsec SA,響應(yīng)方設(shè)備沒有IPsec SA。當(dāng)存在發(fā)起方設(shè)備發(fā)送給響應(yīng)方設(shè)備的數(shù)據(jù)流量時(shí),發(fā)起方設(shè)備使用出方向IPsec SA對(duì)其加密,并發(fā)送給響應(yīng)方設(shè)備,響應(yīng)方設(shè)備接收到加密后的數(shù)據(jù)流量后,會(huì)向發(fā)起方設(shè)備發(fā)送INVALID SPI消息,以使發(fā)起方設(shè)備刪除本端的IPsec SA,從而發(fā)起方設(shè)備和響應(yīng)方設(shè)備之間需要重新進(jìn)行IKEv2協(xié)商,若在該過程中,發(fā)起方設(shè)備和響應(yīng)方設(shè)備之間存在持續(xù)的流量,則可能會(huì)反復(fù)出現(xiàn)上述情況,導(dǎo)致協(xié)商震蕩產(chǎn)生。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種認(rèn)證協(xié)商方法及裝置,以解決現(xiàn)有IKEv2協(xié)商方案中的協(xié)商震蕩問題。
根據(jù)本發(fā)明實(shí)施例的第一方面,提供一種認(rèn)證協(xié)商方法,應(yīng)用于發(fā)起方設(shè)備,包括:
當(dāng)接收到響應(yīng)方設(shè)備發(fā)送的互聯(lián)網(wǎng)密鑰交換協(xié)議認(rèn)證IKE_AUTH交互消息時(shí),根據(jù)所述IKE_AUTH交互消息進(jìn)行IKE認(rèn)證;
當(dāng)認(rèn)證成功時(shí),向所述響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息,以使所述響應(yīng)方設(shè)備接收到所述認(rèn)證成功通知消息時(shí),使能出方向互聯(lián)網(wǎng)協(xié)議安全性IPsec安全聯(lián)盟SA。
根據(jù)本發(fā)明實(shí)施例的第二方面,提供一種認(rèn)證協(xié)商方法,應(yīng)用于響應(yīng)方設(shè)備,包括:
當(dāng)根據(jù)發(fā)起方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功時(shí),生成入方向互聯(lián)網(wǎng)協(xié)議安全性IPsec安全聯(lián)盟SA和出方向IPsec SA,使能入方向IPsec SA,并向所述發(fā)起方設(shè)備發(fā)送IKE_AUTH交互消息;
當(dāng)接收到所述發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息時(shí),使能所述出方向IPsec SA。
根據(jù)本發(fā)明實(shí)施例的第三方面,提供一種認(rèn)證協(xié)商裝置,應(yīng)用于發(fā)起方設(shè)備,包括:
接收單元,用于接收響應(yīng)方設(shè)備發(fā)送的互聯(lián)網(wǎng)密鑰交換協(xié)議認(rèn)證IKE_AUTH交互消息;
認(rèn)證單元,用于根據(jù)所述IKE_AUTH交互消息進(jìn)行IKE認(rèn)證;
發(fā)送單元,用于當(dāng)認(rèn)證成功時(shí),向所述響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息,以使所述響應(yīng)方設(shè)備接收到所述認(rèn)證成功通知消息時(shí),使能出方向互聯(lián)網(wǎng)協(xié)議安全性IPsec安全聯(lián)盟SA。
根據(jù)本發(fā)明實(shí)施例的第四方面,提供一種認(rèn)證協(xié)商裝置,應(yīng)用于響應(yīng)方設(shè)備,包括:
認(rèn)證單元,用于根據(jù)發(fā)起方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功;
生成單元,用于當(dāng)認(rèn)證成功時(shí),生成入方向互聯(lián)網(wǎng)協(xié)議安全性IPsec安全聯(lián)盟SA和出方向IPsec SA,使能入方向IPsec SA;
發(fā)送單元,用于向所述發(fā)起方設(shè)備發(fā)送IKE_AUTH交互消息;
接收單元,用于接收所述發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息;
所述生成單元,還用于當(dāng)所述接收單元接收到所述發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息時(shí),使能所述出方向IPsec SA。
應(yīng)用本發(fā)明實(shí)施例,當(dāng)發(fā)起方設(shè)備根據(jù)響應(yīng)方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功時(shí),向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息;響應(yīng)方設(shè)備在接收到發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息時(shí),再使能出方向IPsec SA,響應(yīng)方設(shè)備通過在發(fā)起方設(shè)備生成并使能入方向IPsec SA之后,再使能本端的出方向IPsec SA,避免了加密的數(shù)據(jù)流量在對(duì)端入方向IPsec SA使能前到達(dá)對(duì)端引起的協(xié)商震蕩。
附圖說明
圖1是本發(fā)明實(shí)施例提供的一種認(rèn)證協(xié)商方法的流程示意圖;
圖2是本發(fā)明實(shí)施例提供的另一種認(rèn)證協(xié)商方法的流程示意圖;
圖3A是本發(fā)明實(shí)施例提供的一種具體應(yīng)用場(chǎng)景的架構(gòu)示意圖;
圖3B是本發(fā)明實(shí)施例提供的一種IKEv2證協(xié)商過程中的報(bào)文交互示意圖;
圖4是本發(fā)明實(shí)施例提供的一種認(rèn)證協(xié)商裝置的結(jié)構(gòu)示意圖;
圖5是本發(fā)明實(shí)施例提供的另一種認(rèn)證協(xié)商裝置的結(jié)構(gòu)示意圖;
圖6是本發(fā)明實(shí)施例提供的一種認(rèn)證協(xié)商裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實(shí)施例中的技術(shù)方案,并使本發(fā)明實(shí)施例的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例中技術(shù)方案作進(jìn)一步詳細(xì)的說明。
請(qǐng)參見圖1,圖1為本發(fā)明實(shí)施例提供的一種認(rèn)證協(xié)商方法的流程示意圖,如圖1所示,該認(rèn)證協(xié)商方法可以包括以下步驟:
需要說明的是,步驟101~步驟102的執(zhí)行主體可以為認(rèn)證協(xié)商的發(fā)起方設(shè)備或發(fā)起方設(shè)備中的處理器,如CPU(Center Process Unit,中央處理單元),為便于描述,以下以步驟101~步驟102的執(zhí)行主體為發(fā)起方設(shè)備為例進(jìn)行說明。
步驟101、當(dāng)接收到響應(yīng)方設(shè)備發(fā)送的IKE_AUTH交互消息時(shí),根據(jù)該IKE_AUTH交互消息進(jìn)行IKE認(rèn)證。
本發(fā)明實(shí)施例中,發(fā)起方設(shè)備與響應(yīng)方設(shè)備之間的IKE_SA_INIT交互,以及發(fā)起方設(shè)備向響應(yīng)方設(shè)備發(fā)送IKE_AUTH交互消息的具體實(shí)現(xiàn)可以參見現(xiàn)有IKEv2協(xié)商中的相關(guān)實(shí)現(xiàn),本發(fā)明實(shí)施例對(duì)此不做贅述。
本發(fā)明實(shí)施例中,當(dāng)響應(yīng)方設(shè)備接收到發(fā)起方設(shè)備發(fā)送的IKE_AUTH交互消息,且根據(jù)該IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功時(shí),響應(yīng)方設(shè)備一方面,可以生成入方向IPsec SA和出方向IPsec SA,另一方面,會(huì)向發(fā)起方設(shè)備發(fā)送IKE_AUTH交互消息作為應(yīng)答。
本發(fā)明實(shí)施例中,為了避免響應(yīng)方設(shè)備向發(fā)起方設(shè)備發(fā)送的加密后的數(shù)據(jù)流量先于IKE_AUTH交互消息到達(dá)發(fā)起方設(shè)備,響應(yīng)方設(shè)備生成入方向IPsec SA和出方向IPsec SA之后,可以先不使能出方向IPsec SA,即響應(yīng)方設(shè)備在未確認(rèn)發(fā)起方設(shè)備接收到IKE_AUTH交互消息之前,向發(fā)起方設(shè)備發(fā)送的數(shù)據(jù)流量先不使用上述出方向IPsec SA進(jìn)行加密。
發(fā)起方設(shè)備接收到響應(yīng)方設(shè)備發(fā)送的IKE_AUTH交互消息時(shí),可以根據(jù)該IKE_AUTH交互消息進(jìn)行IKE認(rèn)證。
其中,發(fā)起方設(shè)備根據(jù)響應(yīng)方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證的具體實(shí)現(xiàn)可以參見現(xiàn)有IKEv2協(xié)商中的相關(guān)實(shí)現(xiàn),本發(fā)明實(shí)施例對(duì)此不做贅述。
步驟102、當(dāng)認(rèn)證成功時(shí),向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息,以使響應(yīng)方設(shè)備接收到認(rèn)證成功通知消息時(shí),使能出方向IPsec SA。
本發(fā)明實(shí)施例中,當(dāng)發(fā)起方設(shè)備根據(jù)響應(yīng)方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功時(shí),一方面,發(fā)起方設(shè)備可以生成入方向IPsec SA和出方向IPsec SA,并將其使能,另一方面,發(fā)起方設(shè)備需要向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息,以通知響應(yīng)方設(shè)備IKE認(rèn)證成功。
響應(yīng)方設(shè)備接收到發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息時(shí),可以使能出方向IPsec SA,之后,響應(yīng)方設(shè)備向發(fā)起方設(shè)備發(fā)送數(shù)據(jù)流量時(shí),可以使用該出方向IPsec SA對(duì)數(shù)據(jù)流量進(jìn)行加密。
進(jìn)一步地,在本發(fā)明實(shí)施例中,當(dāng)發(fā)起方設(shè)備根據(jù)響應(yīng)方設(shè)備發(fā)送的IKE_AUTH進(jìn)行IKE認(rèn)證失敗時(shí),發(fā)起方設(shè)備也可以向響應(yīng)方設(shè)備發(fā)送認(rèn)證失敗通知消息,以通知響應(yīng)方設(shè)備IKE認(rèn)證失敗。
響應(yīng)方設(shè)備接收到發(fā)起方設(shè)備發(fā)送的認(rèn)證失敗通知消息時(shí),響應(yīng)方設(shè)備可以刪除本端的IKE SA,并在后續(xù)流程中重新進(jìn)行認(rèn)證協(xié)商。
作為一種可選的實(shí)施方式,上述步驟102中,當(dāng)認(rèn)證成功時(shí),向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息之前,還可以包括以下步驟:
11)、判斷接收到的IKE_AUTH消息中是否包括第一標(biāo)識(shí),該第一標(biāo)識(shí)用于指示發(fā)起方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息;
12)、若包括,則確定執(zhí)行上述當(dāng)認(rèn)證成功,向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息的步驟。
在該實(shí)施方式中,為了使本發(fā)明實(shí)施例提供的認(rèn)證協(xié)商方案可以兼容現(xiàn)有IKEv2協(xié)議,使用本發(fā)明實(shí)施例提供的認(rèn)證協(xié)商方案的響應(yīng)方設(shè)備在向發(fā)起方設(shè)備發(fā)送IKE_AUTH消息時(shí),可以在該IKE_AUTH消息中攜帶一個(gè)預(yù)設(shè)標(biāo)識(shí)(本文中稱為第一標(biāo)識(shí)),該第一標(biāo)識(shí)用于指示發(fā)起方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息;其中,該認(rèn)證結(jié)果通知消息可以包括但不限于認(rèn)證成功通知消息或認(rèn)證失敗通知消息等。
相應(yīng)地,在該實(shí)施方式中,當(dāng)發(fā)起方設(shè)備接收到IKE_AUTH消息時(shí),可以判斷該IKE_AUTH消息中是否包括第一標(biāo)識(shí);若包括,則發(fā)起方設(shè)備需要根據(jù)IKE認(rèn)證結(jié)果向響應(yīng)方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息。例如,當(dāng)認(rèn)證成功時(shí),發(fā)起方設(shè)備可以向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功結(jié)果通知消息;當(dāng)認(rèn)證失敗時(shí),發(fā)起方設(shè)備可以向響應(yīng)方設(shè)備發(fā)送認(rèn)證失敗結(jié)果通知消息。
可選地,在該實(shí)施方式中,IKE_AUTH交互消息中攜帶的上述第一標(biāo)識(shí)可以通過在IKE_AUTH交互消息中新增字段的方式實(shí)現(xiàn),例如,可以在IKE_AUTH交互消息中新增AdditionalFlag字段,當(dāng)該新增字段置位時(shí),用于指示發(fā)起方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息。
值得說明的是,在該實(shí)施方式中,當(dāng)響應(yīng)方設(shè)備不支持本發(fā)明實(shí)施例提供的認(rèn)證協(xié)商方案時(shí),響應(yīng)方設(shè)備向發(fā)起方設(shè)備發(fā)送的IKE_AUTH交互消息中將不會(huì)攜帶上述第一標(biāo)識(shí);當(dāng)發(fā)起方設(shè)備支持本發(fā)明實(shí)施例提供的認(rèn)證協(xié)商方案,且接收到的IKE_AUTH交互消息中未攜帶第一標(biāo)識(shí)時(shí),發(fā)起方設(shè)備可以參照現(xiàn)有IKEv2協(xié)商中的相關(guān)實(shí)現(xiàn)進(jìn)行處理;此外,當(dāng)發(fā)起方設(shè)備不支持本發(fā)明實(shí)施例提供的認(rèn)證協(xié)商方案時(shí),則即使接收到的IKE_AUTH交互消息中攜帶有上述第一標(biāo)識(shí),發(fā)起方設(shè)備仍然可以參照現(xiàn)有IKEv2協(xié)商中的相關(guān)實(shí)現(xiàn)進(jìn)行處理,其具體實(shí)現(xiàn)在此不做贅述。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例中,認(rèn)證結(jié)果通知消息可以為攜帶有認(rèn)證結(jié)果類型的NOTIFY(通知)載荷的Information(通知)消息。
例如,認(rèn)證成功通知消息可以為攜帶有AUTHENTICATION_SUCCESS(認(rèn)證成功)類型的NOTIFY載荷的Information消息;認(rèn)證失敗通知消息可以攜帶有AUTHENTICATION_FAILED(認(rèn)證失敗)類型的NOTIFY載荷的Information消息。
可見,在圖1所示的方法流程中,通過發(fā)起方設(shè)備根據(jù)響應(yīng)方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功時(shí),向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息,以使響應(yīng)方設(shè)備根據(jù)該認(rèn)證成功通知消息使能出方向IPsec SA,避免了協(xié)商認(rèn)證過程中發(fā)起方設(shè)備和響應(yīng)方設(shè)備之間存在持續(xù)的數(shù)據(jù)流量,且響應(yīng)方設(shè)備發(fā)送的加密后的數(shù)據(jù)流量先于IKE_AUTH交互消息到達(dá)發(fā)起方設(shè)備的情況下引發(fā)的協(xié)商震蕩。
請(qǐng)參見圖2,圖2為本發(fā)明實(shí)施例提供的一種認(rèn)證協(xié)商方法的流程示意圖,如圖2所示,該認(rèn)證協(xié)商方法可以包括以下步驟:
需要說明的是,步驟201~步驟202的執(zhí)行主體可以為認(rèn)證協(xié)商的響應(yīng)方設(shè)備或響應(yīng)方設(shè)備中的處理器,如CPU,為便于描述,以下以步驟201~步驟202的執(zhí)行主體為發(fā)起方設(shè)備為例進(jìn)行說明。
步驟201、當(dāng)根據(jù)發(fā)起方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功時(shí),生成入方向IPsec SA和出方向IPsec SA,使能入方向IPsec SA,并向發(fā)起方設(shè)備發(fā)送IKE_AUTH交互消息。
本發(fā)明實(shí)施例中,發(fā)起方設(shè)備與響應(yīng)方設(shè)備之間的IKE_SA_INIT交互,以及響應(yīng)方設(shè)備根據(jù)發(fā)起方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證的具體實(shí)現(xiàn)可以參見現(xiàn)有IKEv2協(xié)商中的相關(guān)實(shí)現(xiàn),本發(fā)明實(shí)施例對(duì)此不做贅述。
本發(fā)明實(shí)施例中,響應(yīng)方設(shè)備根據(jù)發(fā)起方設(shè)備發(fā)送的IKE_AUTH交互消息認(rèn)證成功之后,一方面需要生成入方向IPsec SA和出方向IPsec SA,另一方面,需要向發(fā)起方設(shè)備發(fā)送IKE_AUTH交互消息。
本發(fā)明實(shí)施例中,為了避免響應(yīng)方設(shè)備向發(fā)起方設(shè)備發(fā)送的加密后的數(shù)據(jù)流量先于IKE_AUTH交互消息到達(dá)發(fā)起方設(shè)備,響應(yīng)方設(shè)備生成入方向IPsec SA和出方向IPsec SA之后,可以先不使能出方向IPsec SA,即響應(yīng)方設(shè)備在未確認(rèn)發(fā)起方設(shè)備接收到IKE_AUTH交互消息之前,向發(fā)起方設(shè)備發(fā)送的數(shù)據(jù)流量先不使用上述出方向IPsec SA進(jìn)行加密。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例中,當(dāng)響應(yīng)方設(shè)備使能了認(rèn)證結(jié)果通知功能時(shí),上述向發(fā)起方設(shè)備發(fā)送IKE_AUTH交互消息,包括:
向發(fā)起方設(shè)備發(fā)送攜帶有第一標(biāo)識(shí)的IKE_AUTH交互消息,該第一標(biāo)識(shí)用于指示發(fā)起方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息。
在該實(shí)施方式中,為了使本發(fā)明實(shí)施例提供的認(rèn)證協(xié)商方案可以兼容現(xiàn)有IKEv2協(xié)議,使用本發(fā)明實(shí)施例提供的認(rèn)證協(xié)商方案的響應(yīng)方設(shè)備在向發(fā)起方設(shè)備發(fā)送IKE_AUTH消息時(shí),可以在該IKE_AUTH消息中攜帶一個(gè)預(yù)設(shè)標(biāo)識(shí)(本文中稱為第一標(biāo)識(shí)),該第一標(biāo)識(shí)用于指示發(fā)起方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息;其中,該認(rèn)證結(jié)果通知消息可以包括但不限于認(rèn)證成功通知消息或認(rèn)證失敗通知消息等。
相應(yīng)地,在該實(shí)施方式中,當(dāng)發(fā)起方設(shè)備接收到IKE_AUTH消息時(shí),可以判斷該IKE_AUTH消息中是否包括第一標(biāo)識(shí);若包括,則發(fā)起方設(shè)備需要根據(jù)IKE認(rèn)證結(jié)果向響應(yīng)方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息。例如,當(dāng)認(rèn)證成功時(shí),發(fā)起方設(shè)備可以向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功結(jié)果通知消息;當(dāng)認(rèn)證失敗時(shí),發(fā)起方設(shè)備可以向響應(yīng)方設(shè)備發(fā)送認(rèn)證失敗結(jié)果通知消息。
可選地,在該實(shí)施方式中,IKE_AUTH交互消息中攜帶的上述第一標(biāo)識(shí)可以通過在IKE_AUTH交互消息中新增字段的方式實(shí)現(xiàn),例如,可以在IKE_AUTH交互消息中新增AdditionalFlag字段,當(dāng)該新增字段置位時(shí),用于指示發(fā)起方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息。
步驟202、當(dāng)接收到發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息時(shí),使能出方向IPsec SA。
本發(fā)明實(shí)施例中,當(dāng)響應(yīng)方設(shè)備接收到發(fā)起方設(shè)備的認(rèn)證成功通知消息時(shí),可以確定發(fā)起方設(shè)備IKE認(rèn)證成功,響應(yīng)方設(shè)備可以使能出方向IPsec SA,之后,響應(yīng)方設(shè)備向發(fā)起方設(shè)備發(fā)送數(shù)據(jù)流量時(shí),可以使用該出方向IPsec SA對(duì)數(shù)據(jù)流量進(jìn)行加密。
進(jìn)一步地,在本發(fā)明實(shí)施例中,當(dāng)發(fā)起方設(shè)備根據(jù)響應(yīng)方設(shè)備發(fā)送的IKE_AUTH進(jìn)行IKE認(rèn)證失敗時(shí),發(fā)起方設(shè)備也可以向響應(yīng)方設(shè)備發(fā)送認(rèn)證失敗通知消息,以通知響應(yīng)方設(shè)備IKE認(rèn)證失敗。
響應(yīng)方設(shè)備接收到發(fā)起方設(shè)備發(fā)送的認(rèn)證失敗通知消息時(shí),響應(yīng)方設(shè)備可以刪除本端的IKE SA,并在后續(xù)流程中重新進(jìn)行認(rèn)證協(xié)商。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例中,認(rèn)證結(jié)果通知消息可以為攜帶有認(rèn)證結(jié)果類型的NOTIFY載荷的Information消息。
例如,認(rèn)證成功通知消息可以為攜帶有AUTHENTICATION_SUCCESS類型的NOTIFY載荷的Information消息;認(rèn)證失敗通知消息可以攜帶有AUTHENTICATION_FAILED類型的NOTIFY載荷的Information消息。
為了使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明實(shí)施例提供的技術(shù)方案,下面結(jié)合具體應(yīng)用場(chǎng)景對(duì)本發(fā)明實(shí)施例提供的技術(shù)方案進(jìn)行描述。
請(qǐng)參見圖3A,為本發(fā)明實(shí)施例提供的一種具體應(yīng)用場(chǎng)景的架構(gòu)示意圖,如圖3A所示,在該應(yīng)用場(chǎng)景中,設(shè)備A和設(shè)備B均支持IKEv2協(xié)議,且使能了認(rèn)證結(jié)果通知功能,基于該應(yīng)用場(chǎng)景,設(shè)備A(作為發(fā)起方設(shè)備)與設(shè)備B(作為響應(yīng)方設(shè)備)之間進(jìn)行IKEv2協(xié)商的消息交互可以參見圖3B,具體地:
1、設(shè)備A與設(shè)備B之間交互IKE_SA_INIT交互消息(即圖3B中的消息1和消息2);
2、設(shè)備A向設(shè)備B發(fā)送IKE_AUTH交互消息(即圖3B中的消息3);
其中,上述步驟1和步驟2的具體實(shí)現(xiàn)可以參見現(xiàn)有IKEv2協(xié)商中的相關(guān)實(shí)現(xiàn)。
3、設(shè)備B接收到設(shè)備A發(fā)送的IKE_AUTH交互消息,并根據(jù)該交互消息進(jìn)行IKE認(rèn)證成功時(shí)(即圖3B中所示的A點(diǎn)),一方面,設(shè)備B可以生成入方向IPsec SA和出方向IPsec SA,并使能入方向IPsec SA,另一方面,設(shè)備B可以向設(shè)備A發(fā)送IKE_AUTH交互消息,該消息中攜帶有置位的AdditionalFlag字段;
其中,現(xiàn)有IKEv2協(xié)商方案中,設(shè)備B在A點(diǎn)同時(shí)使能入方向和出方向IPsec SA,當(dāng)此時(shí)設(shè)備A和設(shè)備B之間存在持續(xù)流量時(shí),可能發(fā)生協(xié)商震蕩。
4、設(shè)備A接收到設(shè)備B發(fā)送的IKE_AUTH交互消息(即圖3B中的消息4)時(shí),解析該IKE_AUTH認(rèn)證消息,發(fā)現(xiàn)該IKE_AUTH認(rèn)證消息中攜帶有置位的AdditionalFlag字段,確定需要發(fā)送認(rèn)證通知結(jié)果消息,因此,當(dāng)設(shè)備A進(jìn)行IKE認(rèn)證成功時(shí),可以向設(shè)備B發(fā)送攜帶有AUTHENTICATION_SUCCESS類型的NOTIFY載荷的Information消息(即圖3B中的消息5);當(dāng)設(shè)備A進(jìn)行IKE認(rèn)證失敗時(shí),可以向設(shè)備B發(fā)送攜帶有AUTHENTICATION_FAILED類型NOTIFY載荷的Information消息(即圖3B中的消息5);
其中,該實(shí)施例中,設(shè)備A進(jìn)行IKE認(rèn)證成功時(shí),生成并使能入方向IPsec SA和出方向IPsec SA的相關(guān)實(shí)現(xiàn)可以參見現(xiàn)有IKEv2協(xié)商中的相關(guān)實(shí)現(xiàn),即該實(shí)施例中與現(xiàn)有IKEv2協(xié)商方案中,設(shè)備A均在B點(diǎn)使能入方向IPsec SA和出方向IPsec SA。
5、當(dāng)設(shè)備B接收到設(shè)備A發(fā)送的攜帶有AUTHENTICATION_SUCCESS類型的NOTIFY載荷的Information消息時(shí),使能出方向IPsec SA;當(dāng)設(shè)備B接收到設(shè)備A發(fā)送的攜帶有AUTHENTICATION_FAILED類型NOTIFY載荷的Information消息時(shí),刪除IKE SA;
即在該實(shí)施例中,設(shè)備B在C點(diǎn)使能出方向IPsec SA。
通過以上描述可以看出,在本發(fā)明實(shí)施例提供的技術(shù)方案中,當(dāng)發(fā)起方設(shè)備根據(jù)響應(yīng)方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功時(shí),向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息;響應(yīng)方設(shè)備在接收到發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息時(shí),再使能出方向IPsec SA,響應(yīng)方設(shè)備通過在發(fā)起方設(shè)備生成并使能入方向IPsec SA之后,再使能本端的出方向IPsec SA,避免了加密的數(shù)據(jù)流量在對(duì)端入方向IPsec SA使能前到達(dá)對(duì)端引起的協(xié)商震蕩。
請(qǐng)參見圖4,為本發(fā)明實(shí)施例提供的一種認(rèn)證協(xié)商裝置的結(jié)構(gòu)示意圖,其中,該裝置可以應(yīng)用于上述方法實(shí)施例中所描述的發(fā)起方設(shè)備,如圖4所示,該裝置可以包括:
接收單元410,用于接收響應(yīng)方設(shè)備發(fā)送的互聯(lián)網(wǎng)密鑰交換協(xié)議認(rèn)證IKE_AUTH交互消息;
認(rèn)證單元420,用于根據(jù)所述IKE_AUTH交互消息進(jìn)行IKE認(rèn)證;
發(fā)送單元430,用于當(dāng)認(rèn)證成功時(shí),向所述響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息,以使所述響應(yīng)方設(shè)備接收到所述認(rèn)證成功通知消息時(shí),使能出方向互聯(lián)網(wǎng)協(xié)議安全性IPsec安全聯(lián)盟SA。
請(qǐng)一并參見圖5,為本發(fā)明實(shí)施例提供的一種認(rèn)證協(xié)商裝置的架構(gòu)示意圖,如圖5所示,在圖4所示認(rèn)證協(xié)商裝置的基礎(chǔ)上,圖5所示的認(rèn)證協(xié)商裝置還可以包括:
判斷單元440,用于判斷所述接收單元410接收到的所述IKE_AUTH消息中是否包括第一標(biāo)識(shí),所述第一標(biāo)識(shí)用于指示所述發(fā)起方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息,所述認(rèn)證結(jié)果通知消息包括認(rèn)證成功通知消息;
所述發(fā)送單元430,具體用于當(dāng)所述判斷單元440的判斷結(jié)果為是,且所述認(rèn)證單元420認(rèn)證成功時(shí),向所述響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息。
在可選實(shí)施例中,所述認(rèn)證成功通知消息為攜帶有認(rèn)證成功AUTHENTICATION_SUCCESS類型的通知NOTIFY載荷的通知Information消息。
請(qǐng)參見圖6,為本發(fā)明實(shí)施例提供的一種認(rèn)證協(xié)商裝置的結(jié)構(gòu)示意圖,其中,該裝置可以應(yīng)用于上述方法實(shí)施例中所描述的響應(yīng)方設(shè)備,如圖6所示,該裝置可以包括:
認(rèn)證單元610,用于根據(jù)發(fā)起方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功;
生成單元620,用于當(dāng)認(rèn)證成功時(shí),生成入方向互聯(lián)網(wǎng)協(xié)議安全性IPsec安全聯(lián)盟SA和出方向IPsec SA,使能入方向IPsec SA;
發(fā)送單元630,用于向所述發(fā)起方設(shè)備發(fā)送IKE_AUTH交互消息;
接收單元640,用于接收所述發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息;
所述生成單元620,還用于當(dāng)所述接收單元640接收到所述發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息時(shí),使能所述出方向IPsec SA。
在可選實(shí)施例中,所述發(fā)送單元630,具體用于當(dāng)所述響應(yīng)方設(shè)備使能了認(rèn)證結(jié)果通知功能時(shí),向所述發(fā)起方設(shè)備發(fā)送攜帶有第一標(biāo)識(shí)的IKE_AUTH交互消息,所述第一標(biāo)識(shí)用于指示所述發(fā)起方設(shè)備發(fā)送認(rèn)證結(jié)果通知消息,所述認(rèn)證結(jié)果通知消息包括認(rèn)證成功通知消息。
上述裝置中各個(gè)單元的功能和作用的實(shí)現(xiàn)過程具體詳見上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過程,在此不再贅述。
對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本發(fā)明方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
由上述實(shí)施例可見,當(dāng)發(fā)起方設(shè)備根據(jù)響應(yīng)方設(shè)備發(fā)送的IKE_AUTH交互消息進(jìn)行IKE認(rèn)證成功時(shí),向響應(yīng)方設(shè)備發(fā)送認(rèn)證成功通知消息;響應(yīng)方設(shè)備在接收到發(fā)起方設(shè)備發(fā)送的認(rèn)證成功通知消息時(shí),再使能出方向IPsec SA,響應(yīng)方設(shè)備通過在發(fā)起方設(shè)備生成并使能入方向IPsec SA之后,再使能本端的出方向IPsec SA,避免了加密的數(shù)據(jù)流量在對(duì)端入方向IPsec SA使能前到達(dá)對(duì)端引起的協(xié)商震蕩。
本領(lǐng)域技術(shù)人員在考慮說明書及實(shí)踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本申請(qǐng)旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術(shù)領(lǐng)域中的公知常識(shí)或慣用技術(shù)手段。說明書和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。