專利名稱:一種基于isakmp的擴展認證方法及系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及通信網絡中路由設備的密鑰管理與認證技術,尤其涉及一種基于因特網安全聯(lián)盟和密鑰管理協(xié)議(ISAKMP, Internet Security Association and KeyManagement Protocol)的擴展認證方法及系統(tǒng)。
背景技術:
因特網(Internet)已經成為現(xiàn)代社會不可或缺的基礎設施,對政治、經濟和民生起著非常重要的作用。因特網一旦遭受破壞或攻擊,將帶來嚴重的危害和影響,因此網絡安全備受世人關注。因特網中的核心設備是路由設備,保障路由設備的安全是網絡安全的重要方面,而路由設備(包括所運行的路由協(xié)議)的安全機制中,密鑰管理與認證是非常重要的一方面。這里,所述Internet就是指因特網協(xié)議(IP, Internet Protocol)網絡。目前,因特網工程任務組(IETF, Internet Engineering Task Force)致力于因特 網架構和各種協(xié)議標準制定工作的全球性組織)的路由協(xié)議密鑰和認證(KARP,Keyingand Authentication for Routing Protocols)工作組和安全域間路由(SIDR, SecureInter-Domain Routing)工作組正在進行這方面的研究,其中有人提出對ISAKMP進行擴展,以用于路由設備(包含路由協(xié)議)的密鑰管理和認證。ISAKMP認證的基本思想及過程是認證雙方先協(xié)商安全聯(lián)盟(SA, SecurityAssociation),即ISAKMP SA,這里,所述SA為一套密鑰材料,包括采用的哈希算法(hashalgorithm)或簽名算法、加密算法(encryption algorithm)、認證算法(authenticationalgorithm)、以及Diffie-Hellman交換的組信息等;認證的雙方使用協(xié)商好的hashalgorithm或簽名算法,將所發(fā)送的部分消息和/或ISAKMP狀態(tài),計算生成帶密鑰的消息認證碼(HMAC, Keyed-hash Message Authentication Code),并將這個 HMAC 寫入 AUTH 載荷中,交給對方,進而完成消息與身份認證過程。其中,所述部分消息是指SA參數(shù)或認證參數(shù);可將事先配置的共享密鑰(pre-shared key)或經過密鑰交換如Diffie-Hellman交換計算出的密鑰,作為計算HMAC時的輸入密鑰。但是,現(xiàn)有技術中,ISAKMP的認證方式的局限主要表現(xiàn)在以下幾個方面第一,認證機制的選擇范圍受限。由于只能使用簡單的hash algorithm或簽名算法生成HMAC,完成認證過程,不能使用最新的認證方法比如安全傳輸層(TLS, TransportLayer Security)認證方法進行認證,如此,限制了路由設備選擇認證機制的自由,不能隨時跟進現(xiàn)代認證技術的發(fā)展。第二,配置復雜。ISAKMP的認證機制要求路由設備之間事先配置有信任關系,t匕如pre-shared key或數(shù)字證書等,然而,在路由設備上配置信任關系的工作量非常大,而且在某種情況下甚至不可能完成。舉個例子來說,假設本地網絡內有η個路由設備,要為它們兩兩配置信任關系,則需要配置η(η-1)/2個信任關系,如果本地網絡規(guī)模較大,即路由設備的個數(shù)較多時,則配置起來工作量將非常龐大。另外,假如兩個路由設備分屬不同的運營商,此時,則兩者之間很難事先配置信任關系。更進一步地,如果在全球范圍內,則不可能為路由設備兩兩配置信任關系。第三,不能使用三方認證技術。ISAKMP定義的是兩方認證的技術,要求路由設備之間事先配置有信任關系。但是,在實際應用時,路由設備兩兩之間事先配置信任關系在很多時候是不可能實現(xiàn)的,尤其在路由設備分屬不同網絡域的情況下。在這種情況下,由于ISAKMP沒有定義三方認證機制,因此,ISAKMP不能很好地解決路由設備之間未事先配置信任關系的情況。第四,不利于長期密鑰更新和增加拆除路由設備。當某個路由設備需要更新共享密鑰時,其它所有相關的路由設備都要跟著更新密 鑰,這一過程的工作量巨大,且會影響其它路由設備。當需要在網絡上增加一個路由設備時,所有相關的路由設備都要增加這個路由設備相關的安全材料,這一過程的工作量同樣巨大,且會影響其它路由設備。當某個路由設備被拆除時,其它所有相關路由設備上都要刪除這個路由設備相關的安全材料,這一過程的工作量也很大,且會影響其它路由設備。
發(fā)明內容
有鑒于此,本發(fā)明的主要目的在于提供一種基于ISAKMP的擴展認證方法及系統(tǒng),能在ISAKMP中靈活選擇認證方法,進而能跟進現(xiàn)代認證技術的發(fā)展。為達到上述目的,本發(fā)明的技術方案是這樣實現(xiàn)的本發(fā)明提供了一種基于ISAKMP的擴展認證方法,該方法包括需要發(fā)送第一條路由消息時,發(fā)起者與響應者協(xié)商使用擴展認證協(xié)議(EAP,Extensible Authentication Protocol)進行認證;EAP認證過程成功后,所述發(fā)起者與所述響應者依據(jù)EAP過程生成的主會話密鑰(MSK, Master Session Key)或共享密鑰,計算AUTH載荷中的HMAC值,并向對方發(fā)送AUTH載荷,在ISAKMP中完成認證。上述方案中,所述發(fā)起者與響應者協(xié)商使用EAP進行認證,包括所述發(fā)起者向所述響應者發(fā)送不包含AUTH載荷的EAP消息;所述響應者收到EAP消息后,通過EAP載荷向所述發(fā)起者發(fā)送EAP請求(Request);所述發(fā)起者收到EAP Request后,通過EAP載荷向所述響應者發(fā)送EAP響應(Response),與所述響應者進行EAP認證過程。上述方案中,在所述發(fā)起者向所述響應者發(fā)送EAP消息之前,該方法進一步包括所述發(fā)起者與所述響應者進行初始SA建立過程。上述方案中,在所述發(fā)起者與所述響應者之間協(xié)商使用進行EAP認證時,且當所述發(fā)起者與所述響應者之間未配置信任關系,所述發(fā)起者與所述響應者均與Diameter服務器之間事先已配置信任關系時,該方法進一步包括所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter服務器發(fā)送EAP啟動(Start)消息;Diameter服務器收到EAP Start消息后,與所述響應者進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給所述響應者。
上述方案中,所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter服務器發(fā)送EAPStart消息,為所述響應者向Diameter服務器發(fā)送包含空的EAP載荷的Diameter-EAP-Request消息;所述發(fā)起者與所述響應者進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器進行EAP認證過程,為Diameter服務器將EAP Request封裝在EAP載荷中,之后向所述響應者返回包含EAP 載荷的 Diameter-EAP-Answer 消息;所述響應者將收到的EAP Request封裝在ISAKMP的擴展載荷EAP載荷中,發(fā)送給所述發(fā)起者; 所述發(fā)起者根據(jù)收到的EAP Request向所述響應者返回相應的EAP Response ;所述響應者將收到的EAP Response封裝在Diameter-EAP-Request消息的EAP載荷中,發(fā)送給Diameter服務器,如此往復,直至Diameter服務器確認EAP認證過程結束。上述方案中,在所述響應者依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值之前,該方法進一步包括 EAP認證過程成功后,Diameter服務器將EAP成功消息及EAP認證過程生成的MSK或共享密鑰發(fā)送給所述響應者。上述方案中,在所述發(fā)起者與所述響應者之間協(xié)商使用進行EAP認證時,且當所述發(fā)起者與所述響應者之間未配置信任關系,所述發(fā)起者與所述響應者之間通過兩個以上Diameter服務器建立信任關系時,該方法進一步包括所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter中繼服務器發(fā)送EAP Start消息;Diameter中繼服務器向Diameter服務器轉發(fā)EAP Start消息;Diameter服務器收到EAP Start消息后,與Diameter中繼服務器進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器、及Diameter中繼服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給Diameter中繼服務器;Diameter中繼服務器將收到的MSK或共享密鑰發(fā)送給所述響應者。上述方案中,所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter服務器發(fā)送EAPStart消息,為所述響應者向Diameter服務器發(fā)送包含空的EAP載荷的Diameter-EAP-Request消息;所述與Diameter中繼服務器進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器、及Diameter中繼服務器進行EAP認證過程,為Diameter服務器將EAP Request封裝在EAP載荷中,之后向Diameter中繼服務器返回包含EAP載荷的Diameter-EAP-Answer消息;Diameter中繼服務器向所述響應者轉發(fā)收到的包含EAP載荷的Diameter-EAP-Answer 消息; 所述響應者將收到的EAP Request封裝在ISAKMP的擴展載荷EAP載荷中,發(fā)送給所述發(fā)起者;
所述發(fā)起者根據(jù)收到的EAP Request向所述響應者返回相應的EAP Response ;所述響應者將收到的EAP Response封裝在Diameter-EAP-Request消息的EAP載荷中,發(fā)送給Diameter中繼服務器;Diameter中繼服務器向Diameter服務器轉發(fā)收到的EAP Response,如此往復,直至Diameter服務器確認EAP認證過程結束。上述方案中,在所述響應者依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值之前,該方法進一步包括EAP認證過程成功后,Diameter服務器將EAP成功消息及EAP認證過程生成的MSK或共享密鑰發(fā)送給Diameter中繼服務器;Diameter中繼服務器將收到的EAP成功消息及EAP認證過程生成的MSK或共享密鑰轉發(fā)給所述響應者。 本發(fā)明還提供了一種基于ISAKMP的擴展認證系統(tǒng),該系統(tǒng)包括第一路由器、及
第二路由器;其中,第一路由器,用于需要發(fā)送第一條路由消息時,與第二路由設備協(xié)商使用EAP進行認證;并在EAP認證成功后,依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷的值,并向第二路由設備發(fā)送AUTH載荷,在ISAKMP中完成認證;第二路由器,用于與第一路由設備協(xié)商使用EAP進行認證;并在EAP認證成功后,依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷的值,并向第一路由設備發(fā)送AUTH載荷,在ISAKMP中完成認證。上述方案中,當在第一路由設備與第二路由設備之間協(xié)商使用EAP進行認證時,且當?shù)谝宦酚稍O備與第二路由設備之間未配置信任關系,而第一路由設備與第二路由設備均與Diameter服務器之間事先已配置信任關系時,該系統(tǒng)進一步包括第一Diameter服務器,用于收到第二路由設備發(fā)送的EAP Start消息后,與第二路由設備進行EAP認證信息交互,以使第一路由設備與第二路由設備之間通過Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給第二路由設備;所述第二路由設備,還用于依據(jù)Diameter-EAP協(xié)議,向第一 Diameter服務器發(fā)送EAP Start消息,與第一 Diameter服務器進行EAP認證信息交互,以使第一路由設備與第二路由設備之間通過第一 Diameter服務器進行EAP認證過程,并接收第一 Diameter服務器發(fā)送的生成的MSK或共享密鑰。上述方案中,在第一路由設備與第二路由設備之間協(xié)商使用EAP進行認證時,且當?shù)谝宦酚稍O備與第二路由設備之間未配置信任關系,第一路由設備與第二路由設備之間通過兩個以上Diameter服務器建立信任關系時,該系統(tǒng)進一步包括第二 Diameter服務器,用于收到第二路由設備發(fā)送的EAP Start消息后,向第一 Diameter服務器轉發(fā)EAPStart消息;與第一 Diameter服務器進行EAP認證信息交互,以使第一路由設備與第二路由設備之間通過第一 Diameter服務器、及第二 Diameter服務器進行EAP認證過程;并將收到的第一 Diameter服務器發(fā)送的生成的MSK或共享密鑰發(fā)送給第二路由設備;所述第一 Diameter服務器,還用于收到第二 Diameter服務器發(fā)送的EAP Start消息后,與第二 Diameter服務器進行EAP認證信息交互,以使第一路由設備與第二路由設備之間通過第一 Diameter服務器、及第二 Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給第二 Diameter服務器;所述第二路由設備,還用于依據(jù)Diameter-EAP協(xié)議,向第二 Diameter服務器發(fā)送EAP Start消息,并接收第二 Diameter服務器發(fā)送的生成的MSK或共享密鑰。上述方案中,所述第二 Diameter服務器的個數(shù)為一個以上。本發(fā)明提供的基于ISAKMP的擴展認證方法及系統(tǒng),需要發(fā)送第一條路由消息時,發(fā)起者與響應者協(xié)商使用EAP進行認證;EAP認證過程成功后,所述發(fā)起者與所述響應者依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值,并向對方發(fā)送AUTH載荷,在ISAKMP中完成認證;發(fā)起者和響應者在EAP認證過程可以依據(jù)需要靈活選擇認證方法,如此,使得認證機制靈活,進而能跟進現(xiàn)代認證技術的發(fā)展。另外,在協(xié)商使用EAP進行認證時,當發(fā)起者與響應者之間未配置信任關系,而發(fā)起者與響應者均與Diameter服務器之間事先已配置信任關系時,響應者使用依據(jù)Diameter-EAP協(xié)議向Diameter服務器發(fā)送EAP Start消息;Diameter服務器收到EAP Start消息后,與響應者進行EAP認證信息交互,以使響應者與發(fā)起者之間通過Diameter服務器進行EAP認證過程;當發(fā)起者與響應者之間未配置信任關系,且發(fā)起者與響應者之間通過兩個以上Diameter服務器建立信任關系時,響應者依據(jù)Diameter-EAP協(xié)議,向Diameter中繼服務器發(fā)送EAP Start消息;Diameter中繼服務器向Diameter服務器轉發(fā)EAP Start消息;Diameter服務器收到EAP Start消息后,通過與Diameter中繼服務器與響應者進行EAP認證信息交互,以使發(fā)起者與響應者之間通過Diameter服務器、及Diameter中繼服務器進行EAP認證過程,如此,能在ISAKMP中實現(xiàn)三方認證技術,從而能解決配置信任關系復雜的問題;而且,在密鑰更新、和/或增加路由設備、和/或拆除路由設備時,只需要在Diameter服務器上更新、和/或增加、和/或刪除對應的路由設備相關的安全材料即可,如此,能有效地減少工作量,便于實現(xiàn)。
圖I為本發(fā)明基于ISAKMP的擴展認證方法流程示意圖;圖2為原有技術ISAKMP的身份保護交換流程示意圖;圖3為實施例一基于ISAKMP的擴展認證方法流程示意圖;圖4為實施例二引入Diameter服務器的基于ISAKMP的擴展認證方法流程示意圖;圖5為實施例三引入Diameter中繼服務器的基于ISAKMP的擴展認證方法流程示意圖;圖6為本發(fā)明基于ISAKMP的擴展認證系統(tǒng)結構示意圖。
具體實施例方式下面結合附圖及具體實施例對本發(fā)明再作進一步詳細的說明。在以下的描述中,將充當發(fā)起者的路由設備稱為發(fā)起者,將充當響應者的路由設備稱為響應者。其中,所述發(fā)起者是指發(fā)起第一條消息的路由設備,所述響應者是指為向發(fā)起者反饋第一條消息的路由設備。本發(fā)明基于ISAKMP的擴展認證方法,如圖I所示,包括以下步驟
步驟101 :需要發(fā)送第一條路由消息時,發(fā)起者與響應者協(xié)商使用EAP進行認證;這里,本步驟的具體實現(xiàn),包括以下步驟所述發(fā)起者向所述響應者發(fā)送不包含AUTH載荷的EAP消息;所述響應者收到EAP消息后,通過EAP載荷向所述發(fā)起者發(fā)送EAP Request ;所述發(fā)起者收到EAP Request后,通過EAP載荷向所述響應者發(fā)送EAP Response,與所述響應者進行EAP認證過程。其中,所述EAP消息不包含AUTH載荷,所述響應者據(jù)此可以獲知啟動EAP認證過程。
如果所述發(fā)起者與所述響應者需要交互的內容較多,則EAP Request和EAPResponse的序列可以持續(xù)下去,即所述發(fā)起者與所述響應者之間交互多次EAP載荷,直至所述響應者向所述發(fā)起者發(fā)送EAP認證結果,即成功(EAP Success)或失敗(EAPFailure)。在所述發(fā)起者向所述響應者發(fā)送EAP消息之前,該方法還可以進一步包括所述發(fā)起者與所述響應者進行初始SA建立過程;其中,進行初始SA建立過程的具體實現(xiàn)為現(xiàn)有技術,這里不再贅述。在所述發(fā)起者與所述響應者之間協(xié)商使用進行EAP認證時,且當所述發(fā)起者與所述響應者之間未配置信任關系,所述發(fā)起者與所述響應者均與Diameter服務器之間事先已配置信任關系時,該方法進一步包括所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter服務器發(fā)送EAP Start消息;Diameter服務器收到EAP Start消息后,與所述響應者進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給所述響應者。其中,所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter服務器發(fā)送EAP Start消息,具體為所述響應者向Diameter服務器發(fā)送包含空的EAP載荷的Diameter-EAP-Request消息;所述發(fā)起者與所述響應者進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器進行EAP認證過程具體為Diameter服務器將EAP Request封裝在EAP載荷中,之后向所述響應者返回包含EAP 載荷的 Diameter-EAP-Answer 消息;所述響應者將收到的EAP Request封裝在ISAKMP的擴展載荷EAP載荷中,發(fā)送給所述發(fā)起者;所述發(fā)起者根據(jù)收到的EAP Request向所述響應者返回相應的EAP Response ;所述響應者將收到的EAP Response封裝在Diameter-EAP-Request消息的EAP載荷中,發(fā)送給Diameter服務器,如此往復,直至Diameter服務器確認EAP認證過程結束。這里,所述認證的結果可以是成功或失敗。若EAP認證過程成功,Diameter服務器將EAP Success消息及EAP方法認證過程生成的MSK或共享密鑰發(fā)送給所述響應者,再由所述響應者將生成的MSK或共享密鑰發(fā)送給所述發(fā)起者。
在所述發(fā)起者與所述響應者之間協(xié)商使用進行EAP認證時,且當所述發(fā)起者與所述響應者之間未配置信任關系,所述發(fā)起者與所述響應者之間通過兩個以上Diameter服務器建立信任關系時,該方法進一步包括所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter中繼服務器發(fā)送EAP Start消息;Diameter中繼服務器向Diameter服務器轉發(fā)EAP Start消息;Diameter服務器收到EAP Start消息后,與Diameter中繼服務器進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器、及Diameter中繼服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給Diameter中繼服務器;Diameter中繼服務器將收到的MSK或共享密鑰發(fā)送給所述響應者。其中,所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter中繼服務器發(fā)送EAPStart消息,具體為 所述響應者向Diameter中繼服務器發(fā)送包含空的EAP載荷的Diameter-EAP-Request 消息;與Diameter中繼服務器進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器、及Diameter中繼服務器進行EAP認證過程,具體為Diameter服務器將EAP Request封裝在EAP載荷中,之后向Diameter中繼服務器返回包含EAP載荷的Diameter-EAP-Answer消息;Diameter中繼服務器向所述響應者轉發(fā)收到的包含EAP載荷的Diameter-EAP-Answer 消息;所述響應者將收到的EAP Request封裝在ISAKMP的擴展載荷EAP載荷中,發(fā)送給所述發(fā)起者;所述發(fā)起者根據(jù)收到的EAP Request向所述響應者返回相應的EAP Response ;所述響應者將收到的EAP Response封裝在Diameter-EAP-Request消息的EAP載荷中,發(fā)送給Diameter中繼服務器;Diameter中繼服務器向Diameter服務器轉發(fā)收到的EAP Response,如此往復,直至Diameter服務器確認EAP認證過程結束。這里,所述認證的結果可以是成功或失敗。該過程與上述所述發(fā)起者與所述響應者均與Diameter服務器之間事先已配置信任關系時的過程一樣相同,在所述響應者、Diameter中繼服務器及Diameter服務器之間信息的交互也是依據(jù)Diameter-EAP協(xié)議來完成的,在該過程中,Diameter中繼服務器只是起到的了中繼的作用,可無需處理,直接將來自所述響應者及Diameter服務器的消息進行轉發(fā)。若EAP認證過程成功,Diameter服務器將EAP Success消息及EAP方法認證過程生成的MSK或共享密鑰發(fā)送給Diameter中繼服務器,,Diameter中繼服務器將EAP Success消息及EAP方法認證過程生成的MSK或共享密鑰轉發(fā)給所述響應者,再由所述響應者將生成的MSK或共享密鑰發(fā)送給所述發(fā)起者。在所述發(fā)起者向所述響應者發(fā)送EAP消息之前,該方法還可以進一步包括所述發(fā)起者與所述響應者進行ISAKMP SA建立過程;其中,進行ISAKMP SA建立過程的具體實現(xiàn)為現(xiàn)有技術,這里不再贅述;ISAKMP SA建立后,在ISAKMP SA保護下,所述發(fā)起者與所述響應者協(xié)商使用EAP進行認證。
由于ISAKMP中實現(xiàn)的是雙向認證,因此,在選擇EAP方法時,推薦選擇能實現(xiàn)雙向認證的EAP方法,以便可以生成MSK或共享密鑰。步驟102 =EAP認證過程成功后,所述發(fā)起者與所述響應者依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值,并向對方發(fā)送AUTH載荷,在ISAKMP中完成認證。這里,當EAP認證過程中生成MSK時,則依據(jù)生成的MSK,計算AUTH載荷中的HMAC值,當EAP認證過程中未生成MSK時,依據(jù)生成的共享密鑰,計算AUTH載荷中的HMAC值。當EAP認證成功后,所述響應者在向所述發(fā)起者發(fā)送EAP認證結果的同時,向所述發(fā)起者發(fā)送依據(jù)EAP認證過程生成的MSK或共享密鑰,進而使所述發(fā)起者與所述響應者可以在ISAKMP中完成認證。其中,MSK為一個不變的參數(shù),而共享密鑰為一次性參數(shù),只適用于本次會話,換句 話說,當發(fā)起者和響應者再次發(fā)送會話時,生成的共享密鑰則與上次會話的共享密鑰不同,而MSK則不會發(fā)生變化;這里,依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值的具體處理過程為現(xiàn)有技術,這里不再贅述。在ISAKMP中完成認證的具體處理過程為現(xiàn)有技術,這里不再贅述。本發(fā)明采用的EAP認證過程中所涉及的EAP載荷,其格式與定義同RFC3748中所定義的。這里,所述RFC是指請求評議(RFC, Request For Comments),是一系列以編號排定的文件。文件收集了有關因特網相關資訊、以及UNIX和因特網社群的軟件文件。下面結合實施例對本發(fā)明再作進一步詳細的描述。ISAKMP可以在四種交換類型(Exchange Type)中實施認證機制,四種交換類型分別是基本交換(Base Exchange)、身份保護交換(Identity Protection Exchange)、僅認證交換(Authentication Only Exchange)、以及進取交換(Aggressive Exchange)。其中,Identity Protection Exchange可以很好地保護身份載荷和AUTH載荷。Identity Protection Exchange的流程,如圖2所示,包括以下步驟步驟201 :需要發(fā)送第一條路由消息時,發(fā)起者向響應者發(fā)送HDR載荷及SA載荷;步驟202 :響應者收到SA載荷后,向發(fā)起者發(fā)送HDR載荷及SA載荷,與發(fā)起者協(xié)商建立ISAKMP SA ;這里,HDR載荷表示ISAKMP協(xié)議頭,發(fā)起者與響應者之間交互時均要發(fā)送HDR載荷。步驟203 204 :發(fā)起者與響應者相互發(fā)送密鑰交換(KE,Key Exchange,)載荷及隨機數(shù)(NONCE)載荷,發(fā)起者與響應者根據(jù)收到的KE載荷及NONCE載荷,計算共享密鑰,作為計算AUTH載荷的HMAC的輸入密鑰;這里,KE載荷裝載的是 Diffie-Hellman 的公開值(public value)。步驟205 206 :發(fā)起者與響應者在ISAKMP SA的保護下相互發(fā)送HDR載荷、身份(IDx)載荷及AUTH載荷,進行相互認證。具體地,發(fā)起者與響應者分別計算HMAC值并與AUTH載荷中的HMAC值進行比較,如果發(fā)起者與響應者雙方的HMAC均能匹配,則相互認證通過,否則,認證失敗。這里,HDR載荷后面的號表示隨后的載荷均是經過加密的,即IDx載荷及AUTH載荷均是經過加密的;
X可以是ii或ir,分別表示ISAKMP的發(fā)起者及響應者,當ISAKMP daemon (守護進程)為一個代理協(xié)商者(proxy negotiator)時,x也可以是ui或ur,分別代表用戶發(fā)起者及響應者;AUTH載荷是通用的身份認證機制,AUTH載荷具體可以是HASH(哈希)載荷或SIG(簽名)載荷。由于Identity Protection Exchange具有較好的安全性,為達到本發(fā)明的目的,并最好地體現(xiàn)本發(fā)明的核心思想,以下描述的實施例中均使用Identity ProtectionExchange來實踐本發(fā)明的核心思想,即進行EAP擴展,ISAKMP中的其它的交換類型也可以仿照本發(fā)明的實施例進行EAP擴展,屬于本發(fā)明專利的保護范疇。實施例一本實施例的應用場景為發(fā)起者與響應者之間事先已配置共享密鑰kab,發(fā)起者和響應者可以處于網絡上的任何位置,采用IP協(xié)議進行通信。其中,發(fā)起者是指發(fā)送路由消息的路由器,響應者為接收路由消息的路由器。本實施例對ISAKMP進行EAP擴展,其基于 ISAKMP的身份保護交換使用EAP方法進行認證的流程,如圖3所示,包括以下步驟步驟301 :需要發(fā)送第一條路由消息時,發(fā)起者向響應者發(fā)送SA載荷;步驟302 響應者向發(fā)起者發(fā)送SA載荷;至此,發(fā)起者與響應者協(xié)商建立ISAKMP SA。步驟303 :發(fā)起者向響應者發(fā)送KE載荷及NONCE載荷;步驟304 :響應者向發(fā)起者發(fā)送KE載荷及NONCE載荷;這里,步驟301 304的過程可以稱為ISAKMP SA建立過程,步驟301 304執(zhí)行的目的是發(fā)起者和響應者相互交換協(xié)商密碼算法(crytographic algorithms)、交換N0NCE、以及進行DifTie-Hellman(D-H)交換等,為發(fā)起者和響應者隨后的交換提供安全通道;步驟301 304的具體處理過程為現(xiàn)有技術,這里不再贅述。步驟305 :在ISAKMP SA的保護下,發(fā)起者向響應者發(fā)送IDii載荷;這里,發(fā)起者讓AUTH載荷為空,以此告知響應者想?yún)f(xié)商使用EAP方法進行認證。步驟306 :在ISAKMP SA的保護下,響應者向發(fā)起者發(fā)送IDir、AUTH及EAP載荷;這里,發(fā)送EAP載荷表示響應者同意使用EAP方法進行認證,同時發(fā)出EAPRequest ;步驟307 :發(fā)起者向響應者回應EAP載荷,與所述響應者進行EAP認證過程;這里,所述EAP 載荷為 EAP Response ;EAP認證所采用的方法可以是現(xiàn)有的認證方法,比如TLS、或消息摘要算法第五版(MD5, Message Digest Algorithm 5)等;在實際應用時,可以依據(jù)需要選擇進行ΕΑΡ認證過程所采用的方法;根據(jù)采用的認證方法的不同,發(fā)起者與響應者之間需要交互多次EAP載荷,換句話說,根據(jù)所采用的認證方法,發(fā)起者可能需要向響應者發(fā)送多個EAP載荷,相應的,響應者需要向發(fā)起者發(fā)送多個EAP載荷,以完成EAP認證過程。建議使用能夠實現(xiàn)雙向認證的EAP方法。由于發(fā)起者和響應者之間事先已配置共享密鑰kab,因此,響應者收到EAP載荷后,直接與發(fā)起者進行EAP認證過程。步驟308 =EAP認證成功后,響應者向發(fā)送者返回EAP載荷;這里,所述EAP載荷為EAP Success,包含EAP認證的過程生成MSK或共享密鑰。
步驟309 :發(fā)起者收到EAP載荷后,依據(jù)EAP認證過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值,并將AUTH載荷發(fā)送給響應者,以便與計算出的HMAC值進行比較;步驟310 :響應者依據(jù)EAP認證過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值,并將AUTH載荷發(fā)送給發(fā)起者,以便與計算出的HMAC值進行比較;至此,雙方完成ISAKMP認證。實施例二 本實施例的應用場景為發(fā)起者與響應者之間未配置信任關系,發(fā)起者與Diameter服務器之間事先已配置信任關系ka。,響應者與Diameter服務器之間事先已配置信任關系kb。,發(fā)起者與響應者之間采用ISAKMP進行交互,響應者與Diameter服務器之間采用Diameter-ISAKMP進行交互。其中,發(fā)起者是指發(fā)送路由消息的路由器,響應者為接收路由消息的路由器。本實施例引入Diameter服務器的基于ISAKMP的擴展認證方法,如圖4所示,包括以下步驟 步驟401 :需要發(fā)送第一條路由消息時,發(fā)起者向響應者發(fā)送SA載荷;步驟402 響應者向發(fā)起者發(fā)送SA載荷;至此,發(fā)起者與響應者協(xié)商建立ISAKMP SA。步驟403 :發(fā)起者向響應者發(fā)送KE載荷及NONCE載荷;步驟404 :響應者向發(fā)起者發(fā)送KE載荷及NONCE載荷;這里,步驟401 404的過程可以稱為ISAKMP SA建立過程,步驟401 404執(zhí)行的目的是發(fā)起者和響應者相互交換協(xié)商crytographic algorithms、交換NONCE、以及進行D-H交換等,為發(fā)起者和響應者隨后的交換提供安全通道;步驟401 404的具體處理過程為現(xiàn)有技術,這里不再贅述。步驟405 :在ISAKMP SA的保護下,發(fā)起者向響應者發(fā)送HDR載荷及IDii載荷;這里,發(fā)起者讓AUTH載荷為空,以此告知響應者想?yún)f(xié)商使用EAP方法進行認證。步驟406 :響應者收到KE載荷及NONCE載荷后,依據(jù)Diameter-ΕΑΡ協(xié)議,向Diameter服務器發(fā)送EAP Start消息;具體地,在Diameter-EAP-Request消息中發(fā)送空的EAP載荷來提示Diameter服務器。這里,由于發(fā)起者與響應者之間未配置信任關系,且響應者與Diameter服務器之間事先已配置信任關系kb。,因此,響應者收到EAP載荷后,會向Diameter服務器發(fā)送EAPStart消息;其中,響應者Diameter服務器之間建立初始連接的過程見Diameter協(xié)議,即RFC3588文件中的規(guī)定,在實際應用時,一般,只需要配置名字和信任關系即可;建立連接的方式可以是響應者與Diameter服務器可利用域名系統(tǒng)(DNS, Domain Name System)服務器就可以完成動態(tài)連接建立,響應者與Diameter服務器也可以通過手動配置的方式建立連接。步驟407 :Diameter服務器收到EAP Start消息后,將EAP Request封裝在EAP載荷中,之后向響應者返回包含EAP載荷的Diameter-EAP-Answer消息;步驟408 :響應者將收到的EAP Request封裝在ISAKMP的擴展載荷EAP載荷中,發(fā)送給發(fā)起者;
步驟409 :發(fā)起者根據(jù)收到的EAP Request向響應者返回相應的EAP Response ;這里,所述EAP Response同樣封裝在ISAKMP的擴展載荷EAP載荷中。步驟410 :響應者再將收到的EAP Response封裝在Diameter-EAP-Request消息的EAP載荷中,發(fā)送給Diameter服務器,進行EAP認證過程;這里,EAP認證所采用的方法可以是現(xiàn)有的認證方法,比如TLS、或MD5,等;在實際應用時,可以依據(jù)需要選擇進行EAP認證過程所采用的方法;根據(jù)采用的認證方法的不同,發(fā)起者與響應者之間需要交互多次EAP載荷,換句話說,根據(jù)所采用的認證方法,發(fā)起者可能需要向響應者發(fā)送多個EAP載荷,相應的,響應者需要向發(fā)起者發(fā)送多個EAP載荷,相應的,Diameter服務器與響應者之間需要交互多次EAP消息以完成EAP認證過程。建議使用能夠實現(xiàn)雙向認證的EAP方法。步驟411 EAP認證過程成功,Diameter服務器將EAP Success消息及EAP認證過 程生成的MSK或共享密鑰封裝在Diameter-EAP-Answer消息中,發(fā)送給響應者;步驟412 :響應者收到Diameter-EAP-Answer消息后,向發(fā)送者返回EAP載荷;這里,所述EAP載荷為EAP Success,包含EAP認證的過程生成MSK或共享密鑰。步驟413 :發(fā)起者收到EAP載荷后,依據(jù)所述MSK或共享密鑰,計算AUTH載荷中的HMAC值,并將AUTH載荷發(fā)送給響應者,以便與計算出的HMAC值進行比較;步驟414 :響應者依據(jù)所述MSK或共享密鑰,計算AUTH載荷中的HMAC值,并將AUTH載荷發(fā)送給發(fā)起者,以便與計算出的HMAC值進行比較。至此,雙方完成ISAKMP認證。實施例三本實施例的應用場景為發(fā)起者與響應者之間未配置信任關系,發(fā)起者與Diameter服務器之間事先已配置信任關系ka。,響應者與Diameter中繼服務器之間事先已配置信任關系kbd,Diameter中繼服務器與Diameter服務器之間事先已配置信任關系kcd。由于Diameter中繼服務器與發(fā)起者之間未事先配置信任關系。其中,發(fā)起者是指發(fā)送路由消息的路由器,響應者為接收路由消息的路由器。本實施例引入Diameter中繼服務器的基于ISAKMP的擴展認證方法,如圖5所示,包括以下步驟步驟501 :需要發(fā)送第一條路由消息時,發(fā)起者向響應者發(fā)送SA載荷;步驟502 響應者向發(fā)起者發(fā)送SA載荷;至此,發(fā)起者與響應者協(xié)商建立ISAKMP SA。步驟503 :發(fā)起者向響應者發(fā)送KE載荷及NONCE載荷;步驟504 :響應者向發(fā)起者發(fā)送KE載荷及NONCE載荷;這里,步驟501 504的過程可以稱為ISAKMP SA建立過程,步驟501 504執(zhí)行的目的是發(fā)起者和響應者相互交換協(xié)商crytographic algorithms、交換NONCE、以及進行D-H交換等,為發(fā)起者和響應者隨后的交換提供安全通道;步驟501 504的具體處理過程為現(xiàn)有技術,這里不再贅述。步驟505 :在ISAKMP SA的保護下,發(fā)起者向響應者發(fā)送HDR載荷及IDii載荷;這里,發(fā)起者讓AUTH載荷為空,以此告知響應者想?yún)f(xié)商使用EAP方法進行認證。步驟506 :響應者收到KE載荷及NONCE載荷后,依據(jù)Diameter-EAP協(xié)議,向Diameter中繼服務器發(fā)送EAP Start消息;
具體地,在Diameter-EAP-Request消息中發(fā)送空的EAP載荷來提示Diameter中繼服務器。這里,由于發(fā)起者與響應者之間未配置信任關系,且響應者與Diameter中繼服務器之間事先已配置信任關系kbd,因此,響應者收到EAP載荷后,會向Diameter中繼服務器發(fā)送認證請求消息;其中,響應者與Diameter中繼服務器之間建立初始連接的過程見diameter協(xié)議,即RFC3588文件中的規(guī)定,在實際應用時,一般,只需要配置名字和信任關系即可;建立連接的方式可以是響應者與Diameter中繼服務器可利用DNS服務器就可以完成動態(tài)連接建立,響應者與Diameter中繼服務器也可以通過手動配置的方式建立連接。步驟507 Diameter中繼服務器直接向Diameter服務器轉發(fā)EAP Start消息;
步驟508 :Diameter服務器收到EAP Start消息后,將EAP Request封裝在EAP載荷中,之后向Diameter中繼服務器返回包含EAP載荷的Diameter-EAP-Answer消息;步驟509 =Diameter中繼服務器收到消息后,向響應者轉發(fā)收到的包含EAP載荷的Diameter-EAP-Answer 消息;步驟510 :響應者將收到的EAP Request封裝在ISAKMP的擴展載荷EAP載荷中,發(fā)送給發(fā)起者;步驟511 :發(fā)起者根據(jù)收到的EAP Request向響應者返回相應的EAP Response ;這里,所述EAP Response同樣封裝在ISAKMP的擴展載荷EAP載荷中。步驟512 :響應者將收到的EAP Response封裝在Diameter-EAP-Request消息的EAP載荷中,發(fā)送給Diameter中繼服務器;步驟513 Diameter中繼服務器向Diameter服務器轉發(fā)收到的EAP Response,進行EAP認證過程;這里,EAP認證所采用的方法可以是現(xiàn)有的認證方法,比如TLS、或MD5,等;在實際應用時,可以依據(jù)需要選擇進行EAP認證過程所采用的方法;根據(jù)采用的認證方法的不同,發(fā)起者與響應者之間需要交互多次EAP載荷,換句話說,根據(jù)所采用的認證方法,發(fā)起者可能需要向響應者發(fā)送多個EAP載荷,相應的,響應者需要向發(fā)起者發(fā)送多個EAP載荷,相應的,Diameter中繼服務器與響應者之間需要交互多次EAP消息,Diameter中繼服務器與Diameter服務器之間同樣需要交互多次EAP消息,以完成EAP認證過程。建議使用能夠實現(xiàn)雙向認證的EAP方法。步驟514 EAP認證過程成功,Diameter服務器將EAP Success消息及EAP認證過程生成的MSK或共享密鑰封裝在Diameter-EAP-Answer消息中,發(fā)送給Diameter中繼服務器;步驟515 Diameter中繼服務器收到Diameter-EAP-Answer消息后,向響應者轉發(fā)收到的 Diameter-EAP-Answer 消息;步驟516 :響應者收到Diameter-EAP-Answer消息后,向發(fā)送者返回EAP載荷;這里,所述EAP載荷為EAP Success,包含EAP認證的過程生成MSK或共享密鑰。步驟517 :發(fā)起者收到EAP載荷后,依據(jù)所述MSK或共享密鑰,計算AUTH載荷中的HMAC值,并將AUTH載荷發(fā)送給響應者,以便與計算出的HMAC值進行比較;步驟518 :響應者依據(jù)所述MSK或共享密鑰,計算AUTH載荷中的HMAC值,并將AUTH載荷發(fā)送給發(fā)起者,以便與計算出的HMAC值進行比較。這里,本實施例中的消息的定義和作用與實施例二中的消息的定義和作用完全相同。至此,雙方完成ISAKMP認證。為實現(xiàn)上述方法,本發(fā)明還提供了一種基于ISAKMP的擴展認證系統(tǒng),如圖6所示,該系統(tǒng)包括第一路由設備61、及第二路 由設備62 ;其中,第一路由設備61,用于需要發(fā)送第一條路由消息時,與第二路由設備62協(xié)商使用EAP進行認證;并在EAP認證成功后,依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷的值,并向第二路由設備62發(fā)送AUTH載荷,在ISAKMP中完成認證;第二路由設備62,用于與第一路由設備61協(xié)商使用EAP進行認證;并在EAP認證成功后,依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷的值,并向第一路由設備61發(fā)送AUTH載荷,在ISAKMP中完成認證。這里需要說明的是第一路由設備61為充當發(fā)起者的路由設備,第二路由設備62為充當響應者的路由設備;其中,所述發(fā)起者是指發(fā)起第一條消息的路由設備,所述響應者是指為向發(fā)起者反饋第一條消息的路由設備。當在第一路由設備61與第二路由設備62之間協(xié)商使用EAP進行認證時,且當?shù)谝宦酚稍O備與第二路由設備62之間未配置信任關系,而第一路由設備61與第二路由設備62均與Diameter服務器之間事先已配置信任關系時,該系統(tǒng)還可以進一步包括第一Diameter服務器,用于收到第二路由設備62發(fā)送的EAP Start消息后,與第二路由設備62進行EAP認證信息交互,以使第一路由設備61與第二路由設備62之間通過Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給第二路由設備62 ;所述第二路由設備62,還用于依據(jù)Diameter-EAP協(xié)議,向第一 Diameter服務器發(fā)送EAP Start消息,與第一 Diameter服務器進行EAP認證信息交互,以使第一路由設備61與第二路由設備62之間通過第一 Diameter服務器進行EAP認證過程,并接收第一Diameter服務器發(fā)送的生成的MSK或共享密鑰。在第一路由設備61與第二路由設備62之間協(xié)商使用EAP進行認證時,且當?shù)谝宦酚稍O備61與第二路由設備62之間未配置信任關系,第一路由設備61與第二路由設備62之間通過兩個以上Ddiameter服務器建立信任關系時,該系統(tǒng)進一步包括第二 Diameter服務器,用于收到第二路由設備62發(fā)送的EAP Start消息后,向第一 Diameter服務器轉發(fā)EAP Start消息;與第一 Diameter服務器進行EAP認證信息交互,以使第一路由設備61與第二路由設備62之間通過第一 Diameter服務器、及第二 Diameter服務器進行EAP認證過程;并將收到的第一 Diameter服務器發(fā)送的生成的MSK或共享密鑰發(fā)送給第二路由設備62 ;所述第一 Diameter服務器,還用于收到第二 Diameter服務器發(fā)送的EAP Start消息后,與第二 Diameter服務器進行EAP認證信息交互,以使第一路由設備61與第二路由設備62之間通過第一 Diameter服務器、及第二 Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給第二 Diameter服務器;所述第二路由設備62,還用于依據(jù)Diameter-EAP協(xié)議,向第二Diameter服務器發(fā)送EAP Start消息,并接收第二 Diameter服務器發(fā)送的生成的MSK或共享密鑰。這里,需要說明的是所述第二 Diameter服務器的個數(shù)可以為一個以上。這里,本發(fā)明所述系統(tǒng)中的第一路由器、第二路由器、第一 Diameter服務器及第
二Diameter服務器的具體處理過程已在上文中詳述,不再贅述。
以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。
權利要求
1.一種基于因特網安全聯(lián)盟和密鑰管理協(xié)議(ISAKMP)的擴展認證方法,其特征在于,該方法包括 需要發(fā)送第一條路由消息時,發(fā)起者與響應者協(xié)商使用擴展認證協(xié)議(EAP)進行認證; EAP認證過程成功后,所述發(fā)起者與所述響應者依據(jù)EAP過程生成的主會話密鑰(MSK)或共享密鑰,計算AUTH載荷中的帶密鑰的消息認證碼(HMAC)值,并向對方發(fā)送AUTH載荷,在ISAKMP中完成認證。
2.根據(jù)權利要求I所述的方法,其特征在于,所述發(fā)起者與響應者協(xié)商使用EAP進行認證,包括 所述發(fā)起者向所述響應者發(fā)送不包含AUTH載荷的EAP消息; 所述響應者收到EAP消息后,通過EAP載荷向所述發(fā)起者發(fā)送EAP請求(Request); 所述發(fā)起者收到EAP Request后,通過EAP載荷向所述響應者發(fā)送EAP響應(Response),與所述響應者進行EAP認證過程。
3.根據(jù)權利要求2所述的方法,其特征在于,在所述發(fā)起者向所述響應者發(fā)送EAP消息之前,該方法進一步包括 所述發(fā)起者與所述響應者進行初始安全聯(lián)盟(SA)建立過程。
4.根據(jù)權利要求I、2或3所述的方法,其特征在于,在所述發(fā)起者與所述響應者之間協(xié)商使用進行EAP認證時,且當所述發(fā)起者與所述響應者之間未配置信任關系,所述發(fā)起者與所述響應者均與Diameter服務器之間事先已配置信任關系時,該方法進一步包括 所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter服務器發(fā)送EAP啟動(Start)消息;Diameter服務器收到EAP Start消息后,與所述響應者進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給所述響應者。
5.根據(jù)權利要求4所述的方法,其特征在于,所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter服務器發(fā)送EAP Start消息,為 所述響應者向Diameter服務器發(fā)送包含空的EAP載荷的Diameter-EAP-Request消息; 所述發(fā)起者與所述響應者進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器進行EAP認證過程,為 Diameter服務器將EAP Request封裝在EAP載荷中,之后向所述響應者返回包含EAP載荷的 Diameter-EAP-Answer 消息; 所述響應者將收到的EAP Request封裝在ISAKMP的擴展載荷EAP載荷中,發(fā)送給所述發(fā)起者; 所述發(fā)起者根據(jù)收到的EAP Request向所述響應者返回相應的EAP Response ; 所述響應者將收到的EAP Response封裝在Diameter-EAP-Request消息的EAP載荷中,發(fā)送給Diameter服務器,如此往復,直至Diameter服務器確認EAP認證過程結束。
6.根據(jù)權利要求5所述的方法,其特征在于,在所述響應者依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值之前,該方法進一步包括 EAP認證過程成功后,Diameter服務器將EAP成功消息及EAP認證過程生成的MSK或共享密鑰發(fā)送給所述響應者。
7.根據(jù)權利要求I、2或3所述的方法,其特征在于,在所述發(fā)起者與所述響應者之間協(xié)商使用進行EAP認證時,且當所述發(fā)起者與所述響應者之間未配置信任關系,所述發(fā)起者與所述響應者之間通過兩個以上Diameter服務器建立信任關系時,該方法進一步包括 所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter中繼服務器發(fā)送EAP Start消息; Diameter中繼服務器向Diameter服務器轉發(fā)EAP Start消息; Diameter服務器收到EAP Start消息后,與Diameter中繼服務器進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器、及Diameter中繼服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給Diameter中繼服務器;Diameter中繼服務器將收到的MSK或共享密鑰發(fā)送給所述響應者。
8.根據(jù)權利要求7所述的方法,其特征在于,所述響應者依據(jù)Diameter-EAP協(xié)議,向Diameter服務器發(fā)送EAP Start消息,為 所述響應者向Diameter服務器發(fā)送包含空的EAP載荷的Diameter-EAP-Request消息; 所述與Diameter中繼服務器進行EAP認證信息交互,以使所述發(fā)起者與所述響應者之間通過Diameter服務器、及Diameter中繼服務器進行EAP認證過程,為 Diameter服務器將EAP Request封裝在EAP載荷中,之后向Diameter中繼服務器返回包含 EAP 載荷的 Diameter-EAP-Answer 消息; Diameter中繼服務器向所述響應者轉發(fā)收到的包含EAP載荷的Diameter-EAP-Answer消息; 所述響應者將收到的EAP Request封裝在ISAKMP的擴展載荷EAP載荷中,發(fā)送給所述發(fā)起者; 所述發(fā)起者根據(jù)收到的EAP Request向所述響應者返回相應的EAP Response ; 所述響應者將收到的EAP Response封裝在Diameter-EAP-Request消息的EAP載荷中,發(fā)送給Diameter中繼服務器; Diameter中繼服務器向Diameter服務器轉發(fā)收到的EAP Response,如此往復,直至Diameter服務器確認EAP認證過程結束。
9.根據(jù)權利要求8所述的方法,其特征在于,在所述響應者依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷中的HMAC值之前,該方法進一步包括 EAP認證過程成功后,Diameter服務器將EAP成功消息及EAP認證過程生成的MSK或共享密鑰發(fā)送給Diameter中繼服務器; Diameter中繼服務器將收到的EAP成功消息及EAP認證過程生成的MSK或共享密鑰轉發(fā)給所述響應者。
10.一種基于ISAKMP的擴展認證系統(tǒng),其特征在于,該系統(tǒng)包括第一路由器、及第二路由器;其中, 第一路由器,用于需要發(fā)送第一條路由消息時,與第二路由設備協(xié)商使用EAP進行認證;并在EAP認證成功后,依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷的值,并向第二路由設備發(fā)送AUTH載荷,在ISAKMP中完成認證; 第二路由器,用于與第一路由設備協(xié)商使用EAP進行認證;并在EAP認證成功后,依據(jù)EAP過程生成的MSK或共享密鑰,計算AUTH載荷的值,并向第一路由設備發(fā)送AUTH載荷,在ISAKMP中完成認證。
11.根據(jù)權利要求10所述的系統(tǒng),其特征在于,當在第一路由設備與第二路由設備之間協(xié)商使用EAP進行認證時,且當?shù)谝宦酚稍O備與第二路由設備之間未配置信任關系,而第一路由設備與第二路由設備均與Diameter服務器之間事先已配置信任關系時,該系統(tǒng)進一步包括第一 Diameter服務器,用于收到第二路由設備發(fā)送的EAP Start消息后,與第二路由設備進行EAP認證信息交互,以使第一路由設備與第二路由設備之間通過Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給第二路由設備; 所述第二路由設備,還用于依據(jù)Diameter-EAP協(xié)議,向第一 Diameter服務器發(fā)送EAPStart消息,與第一Diameter服務器進行EAP認證信息交互,以使第一路由設備與第二路由設備之間通過第一 Diameter服務器進行EAP認證過程,并接收第一 Diameter服務器發(fā)送的生成的MSK或共享密鑰。
12.根據(jù)權利要求11所述的系統(tǒng),其特征在于,在第一路由設備與第二路由設備之間協(xié)商使用EAP進行認證時,且當?shù)谝宦酚稍O備與第二路由設備之間未配置信任關系,第一路由設備與第二路由設備之間通過兩個以上Diameter服務器建立信任關系時,該系統(tǒng)進一步包括第二 Diameter服務器,用于收到第二路由設備發(fā)送的EAP Start消息后,向第一Diameter服務器轉發(fā)EAP Start消息;與第一 Diameter服務器進行EAP認證信息交互,以使第一路由設備與第二路由設備之間通過第一 Diameter服務器、及第二 Diameter服務器進行EAP認證過程;并將收到的第一 Diameter服務器發(fā)送的生成的MSK或共享密鑰發(fā)送給第二路由設備; 所述第一 Diameter服務器,還用于收到第二 Diameter服務器發(fā)送的EAP Start消息后,與第二 Diameter服務器進行EAP認證信息交互,以使第一路由設備與第二路由設備之間通過第一 Diameter服務器、及第二 Diameter服務器進行EAP認證過程,并在EAP認證過程成功后,將生成的MSK或共享密鑰發(fā)送給第二 Diameter服務器; 所述第二路由設備,還用于依據(jù)Diameter-EAP協(xié)議,向第二 Diameter服務器發(fā)送EAPStart消息,并接收第二 Diameter服務器發(fā)送的生成的MSK或共享密鑰。
13.根據(jù)權利要求12所述的系統(tǒng),其特征在于,所述第二Diameter服務器的個數(shù)為一個以上。
全文摘要
本發(fā)明公開了一種基于因特網安全聯(lián)盟和密鑰管理協(xié)議(ISAKMP)的擴展認證方法,包括需要發(fā)送第一條路由消息時,發(fā)起者與響應者協(xié)商使用擴展認證協(xié)議(EAP)進行認證;EAP認證過程成功后,所述發(fā)起者與所述響應者依據(jù)EAP過程生成的主會話密鑰(MSK)或共享密鑰,計算AUTH載荷中的帶密鑰的消息認證碼(HMAC)值,并向對方發(fā)送AUTH載荷,在ISAKMP中完成認證。本發(fā)明同時公開了一種基于ISAKMP的擴展認證系統(tǒng),采用本發(fā)明的方法及系統(tǒng),能在ISAKMP中靈活選擇認證方法,進而能跟進現(xiàn)代認證技術的發(fā)展。
文檔編號H04L9/08GK102904861SQ201110213510
公開日2013年1月30日 申請日期2011年7月28日 優(yōu)先權日2011年7月28日
發(fā)明者梁小萍, 韋銀星 申請人:中興通訊股份有限公司