亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

移動ip中的動態(tài)會話密鑰產生及密鑰重置的方法和裝置的制作方法

文檔序號:7581569閱讀:268來源:國知局
專利名稱:移動ip中的動態(tài)會話密鑰產生及密鑰重置的方法和裝置的制作方法
技術領域
本發(fā)明涉及移動IP網絡技術。更具體而言,本發(fā)明涉及在移動IP中執(zhí)行動態(tài)會話密鑰產生。
背景技術
移動IP是一種協(xié)議,該協(xié)議允許膝上型計算機或其他移動計算機單元(這里被稱為“移動節(jié)點”)在位于各個位置的各個子網之間漫游,并同時保持互聯(lián)網和/或WAN連接。沒有移動IP或相關協(xié)議,移動節(jié)點將無法在各個子網之間進行漫游的同時保持連接。這是因為任意節(jié)點通過互聯(lián)網進行通信所需的IP地址是位置專有的。每個IP地址具有用于指定節(jié)點所處特定子網的字段。如果用戶想要采用一臺平常附接于一個節(jié)點的計算機并且利用其漫游,從而使其穿過不同子網,那么這臺計算機無法使用它的歸屬基本IP地址。這樣一來,在國家間旅行的商人無法僅僅利用他或她的計算機在地理上分離的網段或無線節(jié)點之間漫游,而同時保持互聯(lián)網上的連接。在便攜式計算設備的時代,這是一種無法接受的事態(tài)。
為了解決這個問題,已經開發(fā)并實現(xiàn)了移動IP協(xié)議。移動IP的實現(xiàn)方法在網絡工作組的RFC 3344(C.Perkins,Ed.,“IP Mobility Support forIPv4”,2002年8月)中有所描述。在Prentice Hall中由J.Solomon所著的文章“Mobile IP Unplugged”中也描述了移動IP。這里為所有目的而并入了這兩個參考資料的全部內容,以作為參考。
在圖1中示出了移動IP的過程和環(huán)境。如圖所示,移動IP環(huán)境2包括互聯(lián)網(或WAN)4,通過互聯(lián)網4,移動節(jié)點6可以經由歸屬代理8和外部代理10的協(xié)調而與遠端進行通信。通常,歸屬代理和外部代理是執(zhí)行適當移動IP功能的路由器或其他網絡連接設備,其中所述移動IP功能是由軟件、硬件和/或固件來實現(xiàn)。插入到其歸屬網段中的具體移動節(jié)點(例如膝上型計算機)與互聯(lián)網相連。當移動節(jié)點漫游時,它經由互聯(lián)網而通過可獲得的外部代理進行通信。假設,在地理上分離的位置上可獲得很多外部代理,從而允許經由移動IP協(xié)議的廣泛互聯(lián)網連接。注意,移動節(jié)點也可能直接注冊到其歸屬代理。
如圖1所示,移動節(jié)點6一般位于(或“基于”)網段12,該網段12允許其網絡實體通過互聯(lián)網4進行通信。注意,歸屬代理8不需要直接連接到互聯(lián)網。例如,如圖1所示,它可以通過另一路由器(在本示例中的路由器R1)來連接。路由器R1可以接著利用互聯(lián)網而連接一個或多個其他的路由器(例如路由器R3)。
現(xiàn)在,假設從移動節(jié)點6的歸屬基本網段12中將其移走,并且該移動節(jié)點6漫游到遠端網段14。網段14可以包括諸如PC 16的各種其他節(jié)點。網段14上的節(jié)點通過兼作外部代理10的路由器與互聯(lián)網進行通信。移動節(jié)點6可以通過構成移動IP協(xié)議一部分的各種請求和通告來識別外部代理10。當移動節(jié)點6與網段14交互時,外部代理10將注冊請求中繼到歸屬代理8(如虛線“注冊”所指出的)。然后歸屬代理和外部代理可以針對移動節(jié)點附接到外部代理10的條件進行協(xié)商。例如,該附接可以局限于一段時間,例如兩個小時。當協(xié)商成功完成時,歸屬代理8更新內部的“移動綁定表”,該表指定了與移動節(jié)點6的身份相關聯(lián)的轉交地址(例如配置轉交地址或外部代理的IP地址)。此外,外部代理10更新內部的“訪問者表”,該表指定了移動節(jié)點的地址、歸屬代理的地址等等。這樣一來,已經將移動節(jié)點的歸屬基本IP地址(與網段12相關聯(lián))轉移到外部代理的IP地址(與網段14相關聯(lián))。
現(xiàn)在,假設移動節(jié)點6想要從其新位置向對端節(jié)點18發(fā)送消息。然后,根據標準互聯(lián)網協(xié)議,來自移動節(jié)點的輸出消息被打包,并經由互聯(lián)網4通過外部代理10而被轉發(fā)到對端節(jié)點18(如虛線“來自MN的分組”所指出的)。如果對端節(jié)點18想要向移動節(jié)點發(fā)送消息(回復來自移動節(jié)點的消息或者出于任意其他原因),那么它將該消息尋址到子網12上的移動節(jié)點6的IP地址。然后,該消息的分組通過互聯(lián)網4而被轉發(fā)到路由器R1,并被最終傳遞到歸屬代理8(如虛線“去往MN的分組(1)”所指出的)。歸屬代理8從其移動綁定表中得知移動節(jié)點6不再附接到網段12。然后它根據移動IP協(xié)議封裝來自對端節(jié)點18的分組(它們被尋址到網段12上的移動節(jié)點6),并且將這些經封裝的分組轉發(fā)到移動節(jié)點6的“轉交”地址(如虛線“去往MN的分組(2)”所指出的)。轉交地址例如可以是外部代理10的IP地址。然后外部代理10解開封裝,并且將消息轉發(fā)到子網14上的移動節(jié)點6。這種由歸屬代理和外部代理所實現(xiàn)的分組轉發(fā)機制通常被稱為“隧道操作”(tunneling)。
在移動節(jié)點注冊到其歸屬代理期間,對注冊請求的發(fā)送方(例如移動節(jié)點)的身份和注冊回復的發(fā)送方(例如歸屬代理)的身份進行驗證。在注冊過程期間,通常將移動-歸屬驗證擴展附接到注冊請求和注冊回復中。在由歸屬代理接收到注冊請求,并且由移動節(jié)點接收到注冊回復時,通過應用移動-歸屬驗證擴展來驗證發(fā)送方的身份。
RFC 3344指定了在移動節(jié)點和歸屬代理之間發(fā)送的注冊請求和注冊回復分組的分組格式。如圖2所示,注冊請求分組202和注冊回復分組204都包括必備的移動-歸屬驗證擴展(MHAE)206。更具體而言,必備的移動-歸屬驗證擴展(MHAE)206包括類型字段208、長度字段210、安全參數(shù)索引(SPI)字段212和驗證符214。類型字段208指示出擴展(即移動-歸屬驗證擴展)的類型,并且長度字段210指示出擴展的長度(例如字節(jié))。安全參數(shù)索引212是指定接收者用于解釋接收到的分組的安全關聯(lián)(或者安全關聯(lián)表中的“行”)的標識符。在下文中將更詳細描述的安全關聯(lián)定義了在驗證過程期間將應用的密鑰和算法。注冊請求分組202和注冊回復分組204兩者都包括受保護區(qū)域216,該區(qū)域包括注冊請求202/注冊回復204、類型字段208、長度字段210和安全參數(shù)索引(SPI)字段212。通常移動節(jié)點和歸屬代理兩者都以安全關聯(lián)所提供的相同秘密密鑰被配置,所述密鑰用于對該受保護區(qū)域216進行散列(hash)操作,從而創(chuàng)建驗證符214。
圖3示出了在移動節(jié)點的驗證期間所執(zhí)行的過程步驟的處理流程圖。如圖所示,過程開始于步驟302,并且在步驟304處,移動節(jié)點構造包括受保護區(qū)域的注冊請求。在步驟306處,移動節(jié)點通過應用指定算法而利用密鑰對受保護區(qū)域進行散列操作,而產生驗證符。然后,在步驟308處,移動節(jié)點將包括了受保護區(qū)域和驗證符的注冊請求發(fā)送到歸屬代理。然后在步驟310處,歸屬代理從對應于注冊請求的SPI的安全關聯(lián)中識別出所有必要信息,例如密鑰和用來產生其驗證符的算法。接下來,在步驟312處,歸屬代理通過使用由SPI所識別的算法而利用密鑰對注冊請求的受保護區(qū)域進行散列操作,來產生其驗證符。然后,歸屬代理將由移動節(jié)點所產生的驗證符與由歸屬代理所產生的驗證符進行比較。如果在步驟314處判定驗證符匹配,那么在步驟316處,移動節(jié)點得到驗證,并且過程在步驟318處結束。但是,如果驗證符不匹配,那么在步驟320處,移動節(jié)點未得到驗證,并且過程在步驟322處結束。在接收到歸屬代理所發(fā)送的注冊回復時,移動節(jié)點可以執(zhí)行類似的驗證。但是,在歸屬代理的驗證期間,可能應用不同的SPI,從而應用不同的安全關聯(lián)。
如根據驗證過程所描述的,安全關聯(lián)在驗證過程期間提供了用于產生驗證符的信息。圖4示出了通常在每個歸屬代理上配置的傳統(tǒng)安全關聯(lián)表的圖。如圖所示,對于該歸屬代理所支持的每個移動節(jié)點,安全關聯(lián)表402通常包括至少一個條目404。作為示例,多個安全關聯(lián)可被應用于具有不同安全需求的不同類型的數(shù)據傳輸。每個條目404可以包括用于移動節(jié)點的移動節(jié)點標識符406(例如移動節(jié)點的IP地址),以及識別安全關聯(lián)表內的的安全關聯(lián)的SPI 408。另外,還提供了在移動節(jié)點和歸屬代理之間共享的驗證密鑰410(例如秘密密鑰)(例如密鑰化MD5)。還提供了用于創(chuàng)建驗證符的算法412(例如RSA消息摘要算法MD5)。此外,諸如前綴、后綴或前綴-后綴之類的模式414指示出在驗證期間所使用的模式。該模式指示出利用密鑰對其進行散列操作的受保護區(qū)域的部分。另外,每個條目404還包括重放計時器416或時間戳,其指示出可以在其間重放注冊請求的最長時間。重放計時器防止出于破壞驗證目的的未經授權的注冊請求的復制和“重放”。
雖然重放計時器可以降低重放注冊請求的風險,但是存在危及被靜態(tài)配置的密鑰的風險。具體而言,當在歸屬代理和移動節(jié)點處靜態(tài)配置共享密鑰時,共享密鑰被重復再利用。這樣一來,存在通過多次通信而發(fā)現(xiàn)被靜態(tài)配置的密鑰的可能性。從而還會危及可以經由該共享密鑰來解密的經加密的信息。
安全關聯(lián)表可能包括幾千個條目,從而消耗大量存儲器。如上所述,在這樣的安全關聯(lián)表中,通常為由相應歸屬代理所支持的每個移動節(jié)點至少提供一個條目。此外,這些安全關聯(lián)表通常被存儲在非易失性存儲器中,以防止該信息被破壞。當歸屬代理是具有非常大的硬盤或其他形式的非易失性存儲器的工作站時,這不會帶來問題。但是,當諸如路由器或交換機之類的網絡設備充當歸屬代理時,存儲器(尤其是非易失性存儲器)是珍貴的資源。雖然非易失性存儲器的使用確保安全關聯(lián)將不會無法挽回地丟失,但是典型路由器中的非易失性RAM是有限的。作為示例,在典型路由器中,非易失性RAM可以具有大約128千字節(jié)。由于每個安全關聯(lián)大約消耗存儲器中的80個字節(jié),因此可以被存儲在歸屬代理中的安全關聯(lián)數(shù)目被限定為約1500個。實際上,路由器的NVRAM中的一部分必須被另外設置為用于其他目的,因此它能夠存儲的安全關聯(lián)的實際數(shù)目將比理論上的最大值少得多。簡而言之,存儲器中的物理限制導致無法存儲歸屬代理不然的話應能支持的所有移動節(jié)點的安全關聯(lián)。
另外,通常以手工方式為每個歸屬代理配置安全關聯(lián)表。圖5示出了移動IP網段和相關環(huán)境的框圖。移動IP環(huán)境502包括互聯(lián)網(或者WAN)504,各種移動節(jié)點可以經由相應歸屬代理的協(xié)調(經由被記作R1的被適當配置的路由器)而通過所述互聯(lián)網504來進行遠端通信。諸如公司、企業(yè)或政府之類的實體可以提供多個歸屬代理。這里,示出了第一歸屬代理506、第二歸屬代理508、第三歸屬代理510、第四歸屬代理512和第五歸屬代理514。如圖所示,這樣的環(huán)境缺乏安全關聯(lián)的集中源。因此,每個歸屬代理都必須為該歸屬代理所支持的移動節(jié)點而單獨配置。此外,可以提供冗余的歸屬代理,從而允許一個歸屬代理充當備份來避免主要歸屬代理的故障的影響。作為示例,第四歸屬代理512和第五歸屬代理514可以在歸屬代理之一發(fā)生故障的情況下存儲同樣的安全關聯(lián)。這樣,當安全關聯(lián)被更新(例如密鑰被修改)時,必須在所有冗余的歸屬代理上更新安全關聯(lián)。因此,這樣的系統(tǒng)需要相當多的管理開銷。
鑒于以上問題,則希望能夠實現(xiàn)共享密鑰的集中源。此外,如果能夠減少或消除發(fā)現(xiàn)共享密鑰的風險將非常有益。

發(fā)明內容
本發(fā)明公開了用于提供由歸屬代理和移動節(jié)點所共享的會話密鑰的集中源的方法和裝置。這是部分地通過使用AAA服務器來實現(xiàn)的,所述AAA服務器用于將相關密鑰信息提供到歸屬代理。以這種方式,移動節(jié)點和其歸屬代理可以分別導出共享密鑰,從而消除了發(fā)送共享密鑰的需求以及共享密鑰被解密的風險。
根據本發(fā)明的一個方面,移動節(jié)點通過向歸屬代理發(fā)送注冊請求而注冊到支持移動IP的歸屬代理。當移動節(jié)點接收到來自歸屬代理的注冊回復時,該注冊回復指示出移動節(jié)點將要導出在移動節(jié)點和歸屬代理之間共享的密鑰。然后,移動節(jié)點從存儲在移動節(jié)點上的密鑰信息中導出在移動節(jié)點和歸屬代理之間共享的密鑰。
根據本發(fā)明的另一方面,適用于驗證、授權和計費(AAA)的服務器接收來自歸屬代理的請求消息(例如訪問請求消息),該請求消息標識出移動節(jié)點。然后AAA服務器從與移動節(jié)點相關聯(lián)的密鑰或密碼中導出密鑰信息??梢詮牧硪环掌?例如微軟WindowsTM域控制器)獲得所述密鑰或密碼。然后AAA服務器將回復消息發(fā)送到歸屬代理,從而使歸屬代理能夠從密鑰信息中導出在移動節(jié)點和歸屬代理之間共享的共享密鑰,所述回復消息包括與移動節(jié)點相關聯(lián)的密鑰信息。
根據本發(fā)明的又一方面,歸屬代理接收來自移動節(jié)點的注冊請求,該注冊請求標識出移動節(jié)點。歸屬代理將請求消息(例如訪問請求消息)發(fā)送到AAA服務器,該請求消息標識出移動節(jié)點。歸屬代理接收來自AAA服務器的回復消息(例如訪問回復消息),該回復消息包括與移動節(jié)點相關聯(lián)的密鑰信息。歸屬代理從密鑰信息中導出密鑰,該密鑰是在移動節(jié)點和歸屬代理之間的共享密鑰。然后將注冊回復發(fā)送到移動節(jié)點。
根據本發(fā)明的又一方面,移動節(jié)點可以通過向歸屬代理發(fā)送后續(xù)注冊請求來啟動重置密鑰操作。然后,歸屬代理和移動節(jié)點可以從之前使用的會話密鑰中導出密鑰。密鑰可以在每次清除綁定時(例如在移動節(jié)點的壽命過期或者移動節(jié)點解除注冊時)產生。


圖1示出了移動IP網段和相關環(huán)境的圖。
圖2示出了具有移動-歸屬驗證擴展的傳統(tǒng)注冊請求和注冊回復分組格式的圖。
圖3示出了在移動節(jié)點的驗證期間執(zhí)行的過程步驟的處理流程圖。
圖4示出了傳統(tǒng)的安全關聯(lián)的圖。
圖5示出了不帶安全密鑰集中源的移動IP網段和相關環(huán)境的框圖。
圖6示出了可以在其中實現(xiàn)本發(fā)明的示例性系統(tǒng)的框圖。
圖7示出了根據本發(fā)明的各種實施例執(zhí)行動態(tài)密鑰產生的一般方法的事務處理流程圖。
圖8示出了根據本發(fā)明的各種實施例執(zhí)行動態(tài)密鑰產生的具體方法的事務處理流程圖。
圖9示出了如圖8的方框812所示的制作注冊請求的方法的流程圖。
圖10A示出了根據本發(fā)明的各種實施例,可以由移動節(jié)點發(fā)送的示例性注冊請求消息的圖。
圖10B示出了根據本發(fā)明的各種實施例,可以由歸屬代理發(fā)送到移動節(jié)點的示例性注冊回復消息的圖。
圖11A示出了根據本發(fā)明的各種實施例,可以隨后由移動節(jié)點發(fā)送的示例性注冊回復消息的圖。
圖11B示出了根據本發(fā)明的各種實施例,可以隨后由歸屬代理發(fā)送到移動節(jié)點以啟動后續(xù)密鑰重置操作(rekeying)的示例性注冊回復消息的圖。
圖12是可以被配置為實現(xiàn)本發(fā)明多個方面的網絡設備的框圖。
具體實施例方式
在以下描述中,為了提供對本發(fā)明的完整理解而提出了多個具體細節(jié)。但是,本領域的技術人員將會發(fā)現(xiàn),無需這些具體細節(jié)中的一些或全部,就可以實施本發(fā)明。在其他示例中,沒有描述公知的過程步驟,以免不必要地模糊本發(fā)明。
圖6示出了可以在其中實現(xiàn)本發(fā)明的示例性系統(tǒng)的框圖。當移動節(jié)點602沒有與其歸屬代理604共享安全關聯(lián)時,移動節(jié)點602和歸屬代理604兩者都可以分別動態(tài)地產生共享密鑰。在這種情況下,可以在注冊過程期間驗證它們的身份。
如圖6所示,注冊可以借助外部代理606來執(zhí)行,或者也可以在無需外部代理606的情況下執(zhí)行注冊。換句話說,移動節(jié)點602可以經由配置轉交地址(collocated care-of address)來注冊。為了簡化以下描述,假設移動節(jié)點602經由配置轉交地址來注冊。
為了獨立地產生共享密鑰,利用諸如密鑰“根密鑰”(root key)之類的密鑰信息或者諸如WindowTM密碼之類的密碼來配置移動節(jié)點。從這種密鑰信息中,移動節(jié)點可以導出共享密鑰。移動節(jié)點優(yōu)選地響應于從歸屬代理接收到的注冊回復來導出共享密鑰。例如,注冊回復可以指示由移動節(jié)點導出共享密鑰。
移動性密鑰可以被存儲在驗證、授權和計費(AAA)服務器上,所述AAA服務器可以通過使用TACACS+或RADIUS協(xié)議來訪問。驗證過程判斷實體是誰,而授權過程判斷允許用戶執(zhí)行或訪問什么服務??梢詫崿F(xiàn)諸如遠程撥入用戶驗證服務(RADIUS)和TACACS+之類的各種協(xié)議來提供這樣的服務器。另外,這種協(xié)議可以被類似地實現(xiàn)在與服務器通信的每個歸屬代理上。RFC 2138描述了RADIUS協(xié)議,在此通過參考將RFC 2138結合于此。相似地,RFC 1492描述了TACACS,并且在http//www.ietf.org/internet-drafts/draft-grant-tacacs-02.txt處可獲得的互聯(lián)網草案“The TACACS+Protocol Version 1.78”描述了TACACS+。這里為了所有目的通過參考將這些文件結合于此。
歸屬代理從AAA服務器608獲得其密鑰信息的集合。如上所述,AAA服務器608可以存儲共享密鑰或安全關聯(lián)。但是,根據本發(fā)明的各種實施例,AAA服務器存儲了可以從其導出共享密鑰的密鑰信息,而不是共享密鑰或安全關聯(lián)。如上所述,密鑰信息可以包括“根密鑰”或者諸如WindowTM密碼之類的密碼。可替換地,可以由AAA服務器608訪問輔助設備610和/或存儲介質以檢索密鑰信息。由于共享密鑰沒有被傳輸,因此傳輸?shù)谋O(jiān)聽者無法容易地分辨出共享密鑰。
除了不發(fā)送共享密鑰之外,最好也不發(fā)送初始密鑰信息。這樣,AAA服務器608優(yōu)選地導出將要發(fā)送到歸屬代理604的中間密鑰材料。然后歸屬代理可以從該中間密鑰材料中導出共享密鑰。
根據一個實施例,輔助設備610是在輕權目錄訪問協(xié)議(LDAP)下運行的域控制器。域控制器使用MS-Chap版本2(MS-Chapv2)進行操作。為了驗證移動節(jié)點,歸屬代理代表移動節(jié)點向AAA服務器608發(fā)送請求。歸屬代理指定用于驗證移動節(jié)點的協(xié)議是MS-CHAPv2。然后AAA服務器608為了導出用于傳輸?shù)綒w屬代理604的中間密鑰材料,從輔助設備610中檢索出密鑰信息。
這里描述的方法可以使用MS-Chapv2來實現(xiàn),以完成移動節(jié)點和歸屬代理之間的動態(tài)密鑰產生過程。MS-Chapv2提供了客戶端(移動節(jié)點)和網絡接入服務器(歸屬代理)之間的雙向驗證。但是,雖然這里公開的方法是參考MS-CHAPv2協(xié)議來描述的,但是可以使用各種協(xié)議來執(zhí)行移動IP的密鑰產生過程。
一旦歸屬代理和移動節(jié)點已經分別動態(tài)地產生了共享密鑰,該共享密鑰就可被用于將在歸屬代理和移動節(jié)點之間的傳輸中使用的后續(xù)密鑰。例如,可以由移動節(jié)點的取消注冊或者移動節(jié)點的壽命過期來觸發(fā)后續(xù)密鑰的導出。因此,后續(xù)密鑰的產生可以阻礙外來者發(fā)現(xiàn)共享密鑰并且解密經加密的消息的能力。
在以下描述中,參考圖7描述了執(zhí)行動態(tài)密鑰產生的一般方法,而執(zhí)行動態(tài)密鑰產生的更具體的方法將在下面參考圖8進行描述。圖7示出了根據本發(fā)明的各種實施例執(zhí)行動態(tài)密鑰產生的一般方法的事務處理流程圖。由移動節(jié)點、歸屬代理、AAA服務器和域控制器所執(zhí)行的步驟分別由垂直線702、704、706和708來代表。如上所述,在710處,將諸如根密鑰或密碼之類的密鑰信息x安裝在移動節(jié)點上。另外,在711處,將密鑰信息x安裝在AAA服務器或者域控制器上。
在712處,移動節(jié)點制作注冊請求,該注冊請求將在714處被發(fā)送到歸屬代理。該注冊請求分組可以指示出歸屬代理為了動態(tài)地產生共享密鑰所需的特殊處理。下面將參考圖10A來更詳細地描述示例性注冊請求分組。為了獲得移動節(jié)點的密鑰信息,歸屬代理在716處將請求消息發(fā)送到AAA服務器。例如,請求消息可以是RADIUS訪問請求消息??商鎿Q地,請求消息可以經由TACACS+協(xié)議來發(fā)送。
當AAA服務器接收到請求消息時,如果它沒有在本地存儲密鑰信息x,那么它可以從域控制器獲得密鑰信息x。這樣,在718處,AAA服務器將對于與移動節(jié)點相關聯(lián)的密鑰信息x的請求發(fā)送到域控制器。然后在720處,域控制器將密鑰信息x發(fā)送到AAA服務器。
一旦AAA服務器獲得或接收到密鑰信息x,AAA服務器就可以導出將被發(fā)送到歸屬代理的密鑰材料x′或x″。換句話說,雖然可以將密鑰信息x發(fā)送到歸屬代理,但是存在密鑰信息x被通信的監(jiān)聽者解密的風險。如果密鑰信息x被發(fā)現(xiàn),也就可以產生共享密鑰。因此,勝于發(fā)送密鑰信息x的做法是產生密鑰材料x′或x″。根據一個實施例,AAA服務器在722處導出x′,以驗證之前在716處接收到的訪問請求消息。然后AAA服務器導出將要發(fā)送到歸屬代理704的密鑰材料x″。具體而言,AAA服務器在724處將包括了密鑰材料x″的回復消息(例如RADIUS或者TACACS+訪問回復消息)發(fā)送到歸屬代理。
如725處所示,歸屬代理產生共享會話密鑰。一旦產生會話密鑰Skey,歸屬代理就可以在726處丟棄用于產生會話密鑰的密鑰材料x″。然后,在由歸屬代理導出共享密鑰之后,歸屬代理在727處將注冊回復發(fā)送到移動節(jié)點。具體而言,如果訪問回復消息指示出移動節(jié)點的驗證沒有成功,歸屬代理則不發(fā)送注冊回復。但是,如果訪問回復消息指示出移動節(jié)點的驗證成功,歸屬代理則將注冊回復發(fā)送到移動節(jié)點。下面將參考圖11A來更詳細地描述示例性注冊回復。
當移動節(jié)點接收到注冊回復時,它從其密鑰信息(例如根密鑰或密碼)中導出共享會話密鑰。例如,注冊回復可以指示出移動節(jié)點將要動態(tài)地產生共享會話密鑰。在該示例中,移動節(jié)點在728處使用單向散列函數(shù)來導出密鑰材料x′和x″。這時,如在730處所示,移動節(jié)點和歸屬代理擁有相同的密鑰材料x″。如732處所示,移動節(jié)點可以從該密鑰材料中獨立地產生共享會話密鑰。
可以使用多種公式來產生共享會話密鑰(在歸屬代理和移動節(jié)點處)。唯一要求是移動節(jié)點和歸屬代理經由相同的公式產生共享會話密鑰。在該示例中,從以下公式中導出共享會話密鑰Skey(1)Skey=散列(密鑰材料x″+隨機數(shù))所述“散列”函數(shù)可以是任意安全的單向散列函數(shù),例如MD5或HMAC-MD5。一旦產生會話密鑰Skey,移動節(jié)點就可以在734處丟棄用于產生會話密鑰的密鑰材料x″。
如下面將參考圖8來詳細描述的,可以從主Skey中導出后續(xù)的導出會話密鑰Skey′。導出Skey′的使用可以使使用主Skey驗證的消息數(shù)量最小化,以維持主Skey的秘密性。然后可以周期性的“刷新”該導出會話密鑰Skey′。具體而言,在736處,移動節(jié)點可以將后續(xù)的注冊請求發(fā)送到歸屬代理,以便“刷新”共享的會話密鑰Skey′。示例性后續(xù)注冊請求將在下面參考圖10B進行更詳細的描述。由于移動節(jié)點和歸屬代理現(xiàn)在共享一個會話密鑰(Skey),因此歸屬代理無需聯(lián)系AAA服務器,就能夠驗證移動節(jié)點。如上所述,Skey是使用x″產生的。一旦壽命過期,歸屬代理和移動節(jié)點優(yōu)選地丟棄所有動態(tài)密鑰(例如Skey和Skey′),并且因此移動節(jié)點發(fā)送如圖10A所示的注冊請求,以重新啟動密鑰產生。通常,移動節(jié)點在壽命過期之前發(fā)送注冊請求。因此,可以在Skey依然存在時導出Skey′,并且使用Skey來驗證這樣的消息,如圖10B和圖11B所示。
然后在737處,歸屬代理在產生共享密鑰之前或之后,將后續(xù)注冊回復發(fā)送到移動節(jié)點。使用Skey來驗證該注冊回復,并且因此與在發(fā)送后續(xù)注冊回復之前是否已經導出Skey′無關。如前所述,后續(xù)注冊回復優(yōu)選地對移動節(jié)點指出它將要產生新的會話密鑰。下面將參考圖11B來更詳細地描述示例性的后續(xù)注冊回復。
可能希望在成功地重新注冊移動節(jié)點時產生新的會話密鑰。這樣,在738處,歸屬代理和移動節(jié)點從之前使用的會話密鑰中獨立地產生導出會話密鑰。在該示例中,從以下公式中導出導出會話密鑰Skey′(2)Skey′=散列(Skey+隨機數(shù))一旦歸屬代理和移動節(jié)點已經獨立地導出新的會話密鑰Skey′,如在740處和圖10A所示,歸屬代理和移動節(jié)點就可以丟棄之前的會話密鑰Skey′(如果存在的話)。但是,Skey保持不變,并且不被丟棄。因此,Skey隨后可以被用于通過發(fā)送如圖10B所示的注冊請求來產生新的Skey′。在MN重新啟動在712處重新啟動驗證(如圖10A所示)之前,Skey保持不變。在移動節(jié)點每次解除與歸屬代理的注冊時也可能丟棄密鑰,從而如742處所示,需要在隨后重新注冊到相同或不同的歸屬代理時,基于之前的會話密鑰而根據上述過程來執(zhí)行密鑰產生。
圖8示出了根據本發(fā)明的各種實施例執(zhí)行動態(tài)密鑰產生的具體方法的事務處理流程圖。由移動節(jié)點、歸屬代理、AAA服務器和在LDAP下運行的域控制器所執(zhí)行的步驟分別由垂直線802、804、806和808來代表。WindowsTM密碼在810處被安裝在移動節(jié)點上,并且在811處被安裝在域控制器上。
通常,NAS服務器將NAS質詢(NAS-challenge)發(fā)送到客戶端??蛻舳嘶谝韵赂黜棶a生對等質詢和質詢響應用戶名(該項可以通過從網絡接入標識符(NAI)中去掉域名和“@”而導出)、NAS質詢、對等質詢和散列化密碼k的MD5散列。在WindowsTM環(huán)境中,用于響應計算的用戶名具有以下形式域\用戶名。2000年1月由G.Zorn編著的“Microsoft PPP CHAP Extensions,Version 2”,即RFC-2759公開了在微軟WindowsTM環(huán)境中實現(xiàn)的PPP CHAP擴展的格式,并且這里出于所有目的通過參考將該文件結合于此。由于根據移動IP,移動節(jié)點在發(fā)送注冊請求之前,不向歸屬代理發(fā)送指出它想要注冊的指示(它不得不被驗證),因此歸屬代理不知道移動節(jié)點的出現(xiàn)或意圖,因此無法發(fā)送NAS質詢。這樣,解決方案是移動節(jié)點產生NAS質詢,并且將其嵌入到注冊請求消息中。用戶名被隱式地承載在NAI擴展中。域名信息(如果可獲得,并被用于響應計算)承載在單獨的擴展中。在對質詢響應擴展值進行零填充之后,通過計算注冊請求的散列(MD5)來計算對等質詢。質詢響應被填入到歸屬代理/AAA/后端數(shù)據庫中,以驗證注冊請求。域名、對等質詢、驗證協(xié)議和用于密鑰的SPI信息承載在移動IP擴展中。這些項都具有TLV(類型/長度/值)的形式,并且如RFC 3115(2001年四月由Dommety等編著的“Mobile IP Vendor/Organization-SpoecificExtensions”)中所指定的那樣被導出,這里為了所有目的通過參考而將該文件結合于此。
為了啟動移動IP會話,移動節(jié)點在812處制作注冊請求,并且在814處將其發(fā)送到歸屬代理。制作注冊請求的方法將在下文中參考圖9進行更詳細的描述。具體而言,為了使移動節(jié)點能夠被驗證,移動節(jié)點在注冊請求中提供了CHAP信息,例如CHAP質詢和響應。在下文中將參考圖10A來更詳細地描述示例性注冊請求。
當在816處,歸屬代理接收到注冊請求分組時,歸屬代理判斷是否需要對注冊請求進行特殊處理。例如,這可以從注冊請求中是否存在一個或多個擴展和/或特定SPI(例如移動-歸屬驗證擴展(MHAE))來判定。以這種方式,歸屬代理可以確定歸屬代理想要導出移動節(jié)點和歸屬代理之間的共享密鑰。例如,可以從獲得自AAA服務器的密鑰信息中導出共享密鑰。
為了保持跟蹤未決的注冊請求以及從AAA服務器接收到的密鑰信息,歸屬代理在817處,存儲與注冊請求相關聯(lián)的狀態(tài)信息。例如,狀態(tài)信息可以包括在注冊請求中提供的信息。然后在818處,歸屬代理可以將標識出移動節(jié)點的請求消息(例如RADIUS或TACACS+訪問請求)發(fā)送到AAA服務器。訪問請求優(yōu)選地包括在供應商專用屬性(VSA)中的CHAP信息。CHAP信息可以包括CHAP質詢和響應。
如上所述,密碼或密鑰k在移動節(jié)點以及AAA服務器(或域控制器)處被配置。例如,密碼或密鑰可以包括與移動節(jié)點相關聯(lián)的WindowsTM密碼。
在存在域控制器的情況下,AAA服務器在820處將訪問請求消息中的用戶名、域名和CHAP質詢和響應發(fā)送到域控制器,以用于驗證移動節(jié)點。如果驗證成功,那么如822和824處所示,AAA服務器接收作為訪問回復的密鑰材料k″和成功代碼。以這種方式,AAA服務器將密鑰材料k″返回到歸屬代理。
在不存在域控制器的情況下,AAA服務器知道k(并且因此知道k′)。具體而言,AAA服務器或者在822處從域控制器接收密鑰或密碼,它可以在824處從中導出密鑰信息k′,并且產生密鑰材料k″,或者AAA服務器在本地驗證CHAP請求,并且如果成功,則在訪問接受消息中將k″返回到HA。
如上所述,為歸屬代理、AAA服務器或后端數(shù)據庫填入質詢響應,以驗證注冊請求。如果AAA服務器或后端數(shù)據庫的驗證成功,歸屬代理則間接驗證了注冊請求。
如果驗證成功,AAA或域控制器則可以隨后從密鑰信息中導出密鑰材料k″。然后在826處,AAA服務器將回復消息(例如訪問接受消息或訪問拒絕消息)發(fā)送到歸屬代理,所述回復消息包括與移動節(jié)點相關聯(lián)的密鑰材料k″(在成功驗證時),從而使歸屬代理能夠導出在歸屬代理和移動節(jié)點之間共享的共享密鑰。訪問接受消息包括用于密鑰材料(k″)的VSA。例如,VSA可以是根據RFC 2548(1999年3月由G.Zorn編著的“Microsoft Vendor-specific RADIUS Attributes”)的點對點加密AAA屬性,這里為了所有目的通過參考將該文件結合于此。
在歸屬代理接收到指出移動節(jié)點已被驗證的回復消息(例如訪問接受消息)時,在827處,歸屬代理在移動綁定表中創(chuàng)建移動節(jié)點和在注冊請求中指定的轉交地址之間的綁定。然后歸屬代理可以從密鑰材料k″中導出共享密鑰。根據一個實施例,為了導出共享密鑰,在828處,歸屬代理從注冊請求中獲得CHAP質詢和響應。然后在830處,歸屬代理使用CHAP質詢和響應以及密鑰材料k″來產生共享會話密鑰。具體而言,歸屬代理對密鑰材料k″以及CHAP質詢和響應執(zhí)行MD5散列函數(shù)。為了存儲安全關聯(lián),并且使移動節(jié)點能夠產生相應的安全關聯(lián),在832處,歸屬代理從注冊請求中獲得Skey和Skey′擴展,以便將這些擴展附加到注冊回復上。例如,Skey和Skey′擴展可以指定SPI和其他相關信息。這些擴展將在下文中參考圖10A和圖10B來進行更詳細的描述。然后在834處,歸屬代理在安全關聯(lián)表中安裝共享密鑰Skey和來自Skey擴展的相關Skey信息。另外,歸屬代理優(yōu)選地在安全關聯(lián)中安裝導出共享密鑰Skey′,以及來自Skey′擴展的相關Skey′信息。這使Skey′能夠被用于驗證后續(xù)注冊請求,從而使Skey的使用和危及Skey的可能性最小化。具體而言,歸屬代理在安全關聯(lián)中安裝密鑰/導出密鑰、SPI、重放保護時間戳以及加密算法。然后,使用共享會話密鑰(Skey)來計算MHAE。然后在838處,可以丟棄密鑰材料k″。
然后在840處,制作具有Skey和Skey′擴展的注冊回復,并且在842處,將其發(fā)送到移動節(jié)點。注意,這些擴展與在注冊請求中接收到的擴展相同。具體而言,歸屬代理可能已經為每個擴展選擇了不同的SPI,以用于建立單向安全關聯(lián)。在這些擴展中,沒有發(fā)送實際密鑰Skey和Skey′。歸屬代理還可以在注冊回復的擴展中提供信息,該信息使MN能夠驗證HA(如果需要雙向驗證的話)。下面將參考圖10B來更詳細地描述示例性注冊回復。
響應于其注冊請求,移動節(jié)點在844處接收來自歸屬代理的注冊回復。然后,移動節(jié)點可以從注冊回復中判斷移動節(jié)點是否將要執(zhí)行特定處理。換句話說,注冊回復可以指示出移動節(jié)點將要導出在移動節(jié)點和歸屬代理之間共享的密鑰。例如,移動節(jié)點可以從注冊回復中一個或多個擴展的存在中確定,和/或注冊回復中的特定SPI(例如MHAE)可以指示出移動節(jié)點將要導出移動節(jié)點和歸屬代理之間的共享密鑰。
如以上在810處所述,密鑰信息k被存儲在移動節(jié)點上。密鑰信息例如可以是根密鑰,或者諸如WindowsTM密碼之類的密碼。從該密鑰信息中,移動節(jié)點可以導出共享會話密鑰。另外,如在下文中將參考步驟856-864來更詳細描述的,可以從之前的會話密鑰中導出后續(xù)的會話密鑰。
如上所述,為了導出共享會話密鑰,MN在846處使用單向散列函數(shù)導出k′和k″。另外,在848處,MN從注冊回復中獲得CHAP質詢和響應。具體而言,MN可以基于在注冊請求和回復中的ID字段使之前發(fā)送的注冊請求與注冊回復相關。然后,如以上參考歸屬代理所描述的,移動節(jié)點在850處從密鑰信息k中產生共享會話密鑰,并且丟棄k″。然后在852處,移動節(jié)點使用共享密鑰來驗證注冊回復,并且將結果與MHAE中的驗證符相比較。在854處,一旦移動節(jié)點已經驗證了注冊回復,它就在安全關聯(lián)中安裝會話密鑰Skey和導出會話密鑰Skey′,以及從Skey和Skey′信息中獲得的信息,其中所述Skey和Skey′信息分別從Skey和Skey′擴展中獲得。具體而言,移動節(jié)點在安全關聯(lián)中安裝密鑰/導出密鑰、SPI、重放保護時間戳以及算法。
一旦安裝了主Skey和導出Skey′,就可以發(fā)送后續(xù)的注冊請求以刷新/再協(xié)商導出的Skey′。使用主Skey來驗證這樣的消息。另外,注冊請求包含指出將要產生Skey′的Skey′擴展。在這種情況下,使用主Skey來驗證注冊回復,并且注冊回復包含Skey′擴展,以指示將要產生Skey′。
為了刷新共享密鑰以用于移動節(jié)點和歸屬代理之間的后續(xù)傳輸,可能希望從之前導出的共享會話密鑰中導出后續(xù)的會話密鑰。換句話說,由于共享會話密鑰已被使用了一段時間,或者已被用于多次傳輸,因此存在監(jiān)聽者可能攔截這些通信并且確定所使用的會話密鑰的風險。這樣,可能希望從之前使用的會話密鑰中周期性地(例如在一段指定時間或者指定傳輸次數(shù)之后)產生新的會話密鑰。
為了刷新會話密鑰,在856處,移動節(jié)點將后續(xù)注冊請求發(fā)送到歸屬代理。在下文中將參考圖11A來更詳細描述示例性的后續(xù)注冊請求。在858處,歸屬代理和移動節(jié)點獨立地產生導出會話密鑰Skey′。例如,通過使用Skey和隨機數(shù)(例如從注冊請求中獲得的時間戳)的MD5散列函數(shù)來產生導出會話密鑰Skey′。這樣,為了刷新導出會話密鑰Skey′而使用Skey。另外,初始的未經改變的Skey被用于驗證該后續(xù)的注冊請求。然后在860處,可以丟棄之前的導出會話密鑰Skey′。如上所述,在862處,可以在每次清除綁定時(例如在移動節(jié)點的壽命過期或者移動節(jié)點解除注冊時)產生后續(xù)會話密鑰。在864處,歸屬代理將后續(xù)注冊回復發(fā)送到移動節(jié)點。在下文中將參考圖11B來更詳細描述示例性的后續(xù)注冊回復。
圖9示出了如圖8的方框812所示的制作注冊請求的方法的處理流程圖。如方框902處所示,為了制作不具有與其歸屬代理之間的共享安全關聯(lián)的移動節(jié)點的注冊請求,移動節(jié)點出于驗證目的需要具有用于建立MHAE的機制。因此,在方框904處,移動節(jié)點計算k′,并且產生CHAP質詢。然后在方框906處,移動節(jié)點使用k′來產生CHAP響應/驗證符,其中在方框908處,至少使用識別字段、注冊請求頭部和NAI字段(如果存在)來計算CHAP響應。然后在方框910處,移動節(jié)點制作注冊請求,該注冊請求包括移動節(jié)點到歸屬代理的SPI、質詢和驗證符。另外,注冊請求包括用于對歸屬代理指出需要特殊處理(例如使用基于MS-CHAP的驗證)的特殊SPI和/或指示符。
圖10A示出了如圖8中的814處所示,根據本發(fā)明的各種實施例,可以由移動節(jié)點發(fā)送的示例性注冊請求消息的圖。如圖所示,注冊請求1000包括頭部1002、包含包括用戶名在內的網絡接入標識符(NAI)1004的NAI擴展,以及S-Key擴展1006,該S-Key擴展1006包括SPI1、重放保護時間戳,并且標識出將被用于驗證注冊請求的算法。注冊請求1000還包括S′-Key擴展1008,該S′-Key擴展1008包括SPI2、重放保護時間戳以及將被用于后續(xù)再注冊的算法,該算法還被用于使移動節(jié)點能夠通過使用導出會話密鑰Skey′而被驗證,其中所述Skey′在初始注冊期間建立??梢詫⒁恍└郊有畔⑻砑拥阶哉埱蠛妥曰貜椭幸暂o助特定協(xié)議。例如,為了使用MS-Chapv2,在域名擴展中,將“域名”名稱發(fā)送到歸屬代理。因此,注冊請求1000還包括運載“對等”質詢的CHAP“對等”質詢1010、驗證協(xié)議1012、驗證符/質詢響應1014和包括特定SPI的MHAE 1016。在RFC 3115(2001年4月Dommety等編著的“Mobile IP Vendor/Organization-Specific Extensions”)中提出了注冊擴展和回復擴展的格式,這里出于所有目的通過參考將該文件結合于此。另外,在RFC 3012(2000年11月Perkins等編著的“Mobile IPv4Challenge/Response Extensions”)中提出了質詢和響應擴展,這里出于所有目的通過參考將該文件結合于此。例如,注冊請求中的驗證協(xié)議擴展1012的存在指示出將被用于驗證注冊請求并且導出共享密鑰的協(xié)議。在本申請中描述的用于使用AAA基礎構架來驗證移動節(jié)點和導出(多個)共享密鑰的示例性協(xié)議是MS-CHAPv2。
圖10B示出了如842處所示,根據本發(fā)明的各種實施例,可以被隨后發(fā)送到移動節(jié)點的示例性注冊回復消息的圖。如圖所示,注冊回復1017包括注冊回復頭部1018、如上所述的S-Key擴展1022和S′-Key擴展1024,以及包括與Skey相關聯(lián)的特殊SPI在內的MHAE 1026。具體而言,注冊回復中Skey擴展的存在可以指示出需要導出Skey,而注冊回復中Skey′的存在可以指示出需要導出Skey′或者需要使用Skey來刷新Skey′。
圖11A示出了根據本發(fā)明的各種實施例,如856處所示,可以由移動節(jié)點發(fā)送以啟動后續(xù)重置密鑰操作的示例注冊性注冊請求消息的圖。注冊請求1100包括注冊請求頭部1102、NAI 1104、S′-Key擴展1106以及使用Skey計算的MHAE 1108。通過在注冊請求中提供時間戳1110來實現(xiàn)重放保護。由于移動節(jié)點未產生質詢1010,因此歸屬代理沒有驗證質詢1010,因此提供了這個時間戳。
圖11B示出了根據本發(fā)明的各種實施例,如864處所示,可以由歸屬代理隨后發(fā)送到移動節(jié)點以啟動后續(xù)重置密鑰操作(例如導出會話密鑰Skey′的重置操作)的示例性注冊回復消息的圖。注冊回復1120包括注冊回復頭部1122(其包括時間戳)、NAI 1124、S′-Key擴展1126以及使用Skey計算的MHAE 1128。
其他實施例一般而言,可以在軟件和/或硬件上實現(xiàn)本發(fā)明的技術。例如,它們可以被實現(xiàn)在操作系統(tǒng)內核中、單獨的用戶過程中、綁定到網絡應用的庫數(shù)據包中、特別構建的機器上,或者網絡接口卡上。在本發(fā)明的具體實施例中,本發(fā)明的技術被實現(xiàn)在諸如操作系統(tǒng)的軟件中或者運行在操作系統(tǒng)上的應用中。
本發(fā)明的技術的軟件或軟硬件混合實現(xiàn)方式可以被實現(xiàn)在通用可編程機器上,所述通用可編程機器可由存儲在存儲器中的計算機程序來重配置或選擇性激活。這樣的可編程機器可以是被設計為處理網絡流量的網絡設備,例如路由器或交換機。這樣的網絡設備可以具有多個網絡接口,例如包括幀中繼和ISDN接口。這種網絡設備的具體示例包括路由器和交換機。例如,本發(fā)明的接入點可以被實現(xiàn)在特別配置的路由器或服務器上,以及可從加州San Jose的Cisco Systems公司獲得的Cisco Aironet接入點。在以下描述中,將出現(xiàn)這些機器中的一些機器的一般體系結構。在可替換的實施例中,本發(fā)明的技術可以被實現(xiàn)在通用網絡主機(例如個人計算機或工作站)上。此外,本發(fā)明可以至少被部分實現(xiàn)在用于網絡設備或通用計算設備的卡(例如接口卡)上。
現(xiàn)在參考圖12,適合于實現(xiàn)本發(fā)明技術的網絡設備1560包括主中央處理單元(CPU)1562、接口1568以及總線1567(例如PCI總線)。當在適當軟件或固件的控制下工作時,CPU 1562可以負責實現(xiàn)與所需網絡設備的功能相關聯(lián)的特定功能。例如,當被配置為中間路由器時,CPU1562可以負責分析分組、封裝分組和轉發(fā)分組,以用于傳輸?shù)綑C頂盒。CPU 1562優(yōu)選地在包括操作系統(tǒng)(例如Windows NT)在內的軟件和任意適當?shù)膽密浖目刂葡?,實現(xiàn)所有這些功能。
CPU 1562可以包括一個或多個處理器1563,該處理器1563例如是來自Motorola微處理器族或MIPS微處理器族的處理器。在可替換的實施例中,處理器1563被特別設計為用于控制網絡設備1560的操作的硬件。在具體實施例中,存儲器1561(例如非易失性RAM和/或ROM)也構成CPU 1562的一部分。但是,存在很多可以將存儲器耦合到系統(tǒng)的不同方式。存儲器塊1561可以被用于多種目的,例如緩存和/或存儲數(shù)據、編程指令等等。
接口1568通常被設置為接口卡(有時被稱為“線路卡”)。一般而言,它們控制網絡上數(shù)據分組的發(fā)送和接收,并且有時支持網絡設備1560所使用的其他外設??梢蕴峁┑慕涌诎ㄒ蕴W接口、幀中繼接口、有線接口、DSL接口、令牌環(huán)接口等等。另外,可以提供各種非常高速的接口,例如快速以太網接口、千兆位以太網接口、ATM接口、HSSI接口、POS接口、FDDI接口、ASI接口、DHEI接口等等。一般而言,這些接口可以包括適合與適當媒體進行通信的端口。在某些情況下,它們還可以包括獨立的處理器,并且在某些情況下,還可以包括易失性RAM。所述獨立的處理器可以控制諸如分組交換、媒體控制和管理之類的通信密集型任務。通過提供用于通信密集型任務的分離處理器,這些接口允許主微處理器1562有效地執(zhí)行路由計算、網絡診斷、安全功能等等。
雖然未示出,但是可以使用各種可移動的天線來進一步提高接入點的范圍和可靠性,另外,在Cisco Aironet接入點系列上的無線發(fā)射功率(例如1、5、20、30、50和100mW)可被配置為滿足覆蓋需求并且使干擾最小化。另外,Cisco Aironet AP可被配置為相同覆蓋區(qū)域中的另一AP的冗余熱備份。熱備份AP持續(xù)在相同信道上監(jiān)控主要AP,并且在主要AP發(fā)生故障的罕見情況下承擔主要AP的任務。
雖然圖12所示的系統(tǒng)示出了本發(fā)明的一個具體網絡設備,但是這并不意味著本發(fā)明只可被實現(xiàn)在這種網絡設備體系結構上。例如,經常使用具有單個處理器的體系結構,所述單個處理器處理通信以及路由計算等等。此外,該網絡設備還可以使用其他類型的接口和介質。
無論網絡設備的配置如何,它都可以采用一個或多個存儲器或存儲模塊(例如存儲器塊1565),所述存儲器或存儲模塊被配置為存儲用于通用網絡操作的數(shù)據和程序指令和/或關于這里所描述的技術的功能的其他信息。程序指令例如可以控制操作系統(tǒng)的操作和/或一種或多種應用。
由于這樣的信息和程序指令可以用來實現(xiàn)這里所描述的系統(tǒng)/方法,因此本發(fā)明涉及用于執(zhí)行這里所描述的各種操作的機器可讀介質,其包括程序指令、狀態(tài)信息等等。機器可讀介質的示例包括但不局限于諸如硬盤、軟盤和磁帶之類的磁介質;諸如CD-ROM盤之類的光介質;諸如軟磁盤之類的磁光介質;以及被特別配置為存儲和執(zhí)行程序指令的硬件設備,例如只讀存儲設備(ROM)和隨機訪問存儲器(RAM)。本發(fā)明還可以被包含在穿過適當介質的載波中,所述介質例如是無線電波、光線路、電線路等等。程序指令的示例包括例如由編譯器生成的機器代碼,以及包含可以由計算機通過使用解釋器來執(zhí)行的更高級代碼的文件。
雖然這里示出和描述了本發(fā)明的示例性實施例和應用,但是在本發(fā)明的概念、范圍和精神內可以有很多變化和修改,并且在細讀本申請之后,本領域的普通技術人員將對這些變化更加清楚。例如,雖然說明書已經描述了在初始注冊和再注冊期間,使用主會話密鑰Skey以及導出會話密鑰Skey′,但是,在初始注冊過程和/或再注冊過程中也可以使用同一會話密鑰Skey。但是,那樣就必須使用AAA服務器來刷新Skey。這樣,通過使用主Skey和導出Skey′,可以在不使用AAA服務器的情況下刷新Skey′。因此,本實施例將被看作示例性而非限制性的,并且本發(fā)明并不局限于這里所給出的細節(jié),而是可以在所附權利要求的范圍和等同物內進行修改。
權利要求
1.一種在適用于驗證、授權和計費的服務器中產生歸屬代理和移動節(jié)點之間的共享密鑰的方法,包括接收來自歸屬代理的請求消息,所述請求消息標識出所述移動節(jié)點;從與所述移動節(jié)點相關聯(lián)的密鑰或密碼中導出密鑰信息;以及將回復消息發(fā)送到所述歸屬代理,從而使所述歸屬代理能夠從所述密鑰信息中導出在所述移動節(jié)點和所述歸屬代理之間共享的共享密鑰,其中所述回復消息包括與所述移動節(jié)點相關聯(lián)的所述密鑰信息。
2.如權利要求1所述的方法,其中導出密鑰信息的步驟包括從導出自所述密鑰或密碼的第二組密鑰信息中導出所述密鑰信息。
3.如權利要求1所述的方法,其中導出密鑰信息的步驟包括從域控制器或服務器中獲得所述導出密鑰信息。
4.如權利要求1所述的方法,其中所述請求消息是訪問請求消息,并且所述回復消息是訪問回復消息。
5.如權利要求1所述的方法,其中所述密鑰或密碼包括與所述移動節(jié)點相關聯(lián)的Windows密碼。
6.如權利要求5所述的方法,還包括從域控制器中獲得所述密鑰或密碼。
7.如權利要求6所述的方法,其中從所述域控制器獲得所述密鑰或密碼的步驟包括向所述域控制器發(fā)送對于與所述移動節(jié)點相關聯(lián)的密鑰或密碼的請求;以及從所述域控制器接收與所述移動節(jié)點相關聯(lián)的所述密鑰或密碼。
8.如權利要求1所述的方法,還包括應用所述密鑰信息來驗證所述請求消息。
9.如權利要求1所述的方法,其中所述密鑰或密碼被存儲在所述移動節(jié)點上,從而使所述移動節(jié)點能夠從所述密鑰或密碼中導出所述密鑰信息。
10.一種在支持移動IP的歸屬代理中驗證移動節(jié)點的方法,包括接收來自移動節(jié)點的注冊請求,所述注冊請求標識出所述移動節(jié)點;將請求消息發(fā)送到驗證、授權和計費服務器,所述請求消息標識出所述移動節(jié)點;接收來自所述驗證、授權和計費服務器的回復消息,所述回復消息包括與所述移動節(jié)點相關聯(lián)的密鑰信息;從所述密鑰信息中導出密鑰,該密鑰是在所述移動節(jié)點和所述歸屬代理之間的共享密鑰;以及將注冊回復發(fā)送到所述移動節(jié)點。
11.如權利要求10所述的方法,其中所述注冊請求包括CHAP質詢和響應。
12.如權利要求10所述的方法,其中從所述密鑰信息中導出密鑰的步驟包括從所述密鑰信息和CHAP質詢和響應中導出所述密鑰,所述CHAP質詢和響應是從所述注冊請求中獲得的。
13.如權利要求10所述的方法,其中當從所述驗證、授權和計費服務器接收到的所述回復消息指示出所述移動節(jié)點被成功驗證時,執(zhí)行所述導出密鑰,以及將所述注冊回復發(fā)送到所述移動節(jié)點的步驟。
14.如權利要求10所述的方法,其中所述請求消息是訪問請求消息,并且所述回復消息是訪問回復消息。
15.如權利要求10所述的方法,其中所述移動節(jié)點從存儲在所述移動節(jié)點上的第二組密鑰信息中導出所述共享密鑰。
16.如權利要求15所述的方法,其中所述密鑰信息等同于所述第二組密鑰信息。
17.如權利要求15所述的方法,其中存儲在所述移動節(jié)點上的所述第二組密鑰信息是根密鑰、密碼或在之前會話中在所述移動節(jié)點和所述歸屬代理之間共享的密鑰。
18.如權利要求17所述的方法,其中所述注冊請求包括安全參數(shù)索引、重放保護時間戳,并且指示出將被用于驗證所述注冊回復的算法,其中所述安全參數(shù)索引、所述重放保護時間戳和所述算法與所述第二組密鑰信息相關聯(lián)。
19.如權利要求18所述的方法,還包括將所述導出密鑰、所述安全參數(shù)索引、所述重放保護時間戳和所述算法安裝到安全關聯(lián)中。
20.如權利要求17所述的方法,其中所述注冊回復包括安全參數(shù)索引、重放保護時間戳,并且指示出將被用于驗證所述注冊回復的算法,其中所述安全參數(shù)索引、所述重放保護時間戳和所述算法與所述第二組密鑰信息相關聯(lián)。
21.如權利要求10所述的方法,其中所述注冊回復指示出所述移動節(jié)點將要導出在所述移動節(jié)點和所述歸屬代理之間的所述共享密鑰。
22.如權利要求21所述的方法,其中所述注冊回復中一個或多個擴展的存在和所述注冊回復中安全參數(shù)索引的存在這兩者中的至少一個指示出所述移動節(jié)點將要導出在所述移動節(jié)點和所述歸屬代理之間的所述共享密鑰。
23.如權利要求10所述的方法,其中所述注冊請求指示出所述歸屬代理將要從所述密鑰信息中導出所述移動節(jié)點和所述歸屬代理之間的所述共享密鑰。
24.如權利要求23所述的方法,其中所述注冊請求中一個或多個擴展的存在和所述注冊請求中安全參數(shù)索引的存在這兩者中的至少一個指示出所述歸屬代理將要導出在所述移動節(jié)點和所述歸屬代理之間的所述共享密鑰。
25.如權利要求23所述的方法,其中所述注冊請求中驗證協(xié)議擴展的存在指示出將要用于驗證所述注冊請求和導出所述共享密鑰的協(xié)議。
26.如權利要求23所述的方法,其中所述注冊請求中會話密鑰擴展和導出會話密鑰擴展的存在指示出將要產生和安裝會話密鑰和導出會話密鑰兩者。
27.如權利要求26所述的方法,還包括接收來自所述移動節(jié)點的后續(xù)注冊請求,以刷新所述導出會話密鑰。
28.如權利要求27所述的方法,還包括使用所述會話密鑰來驗證所述后續(xù)注冊請求。
29.如權利要求27所述的方法,還包括將包括所述導出會話密鑰擴展的后續(xù)注冊回復發(fā)送到所述移動節(jié)點,其中所述注冊回復將由所述移動節(jié)點使用所述會話密鑰來驗證。
30.如權利要求10所述的方法,其中所述密鑰信息是在所述移動節(jié)點和所述歸屬代理之間共享的之前使用的會話密鑰。
31.如權利要求10所述的方法,其中從與所述移動節(jié)點相關聯(lián)的密碼中導出所述密鑰信息。
32.如權利要求31所述的方法,其中所述密碼是Windows密碼。
33.如權利要求10所述的方法,還包括從所述共享密鑰中導出后續(xù)密鑰。
34.如權利要求33所述的方法,其中當清除與所述移動節(jié)點相關聯(lián)的綁定時,執(zhí)行從所述共享密鑰中導出所述后續(xù)密鑰的步驟。
35.如權利要求34所述的方法,其中在所述移動節(jié)點的壽命過期或者所述移動節(jié)點解除注冊時,清除與所述移動節(jié)點相關聯(lián)的綁定。
36.一種在移動節(jié)點中注冊到支持移動IP的歸屬代理的方法,包括將注冊請求發(fā)送到所述歸屬代理;接收來自所述歸屬代理的注冊回復,所述注冊回復指示出所述移動節(jié)點將要導出在所述移動節(jié)點和所述歸屬代理之間共享的密鑰;以及從存儲在所述移動節(jié)點上的密鑰信息中導出在所述移動節(jié)點和所述歸屬代理之間共享的密鑰。
37.如權利要求36所述的方法,其中從所述密鑰信息中導出密鑰的步驟包括從所述密鑰信息和CHAP質詢和響應中導出所述密鑰,所述CHAP質詢和響應是從所述注冊回復中獲得的。
38.如權利要求36所述的方法,其中所述密鑰信息是根密鑰、密碼或在之前會話中在所述移動節(jié)點和所述歸屬代理之間共享的密鑰。
39.如權利要求38所述的方法,其中所述注冊請求包括安全參數(shù)索引、重放保護時間戳,并且指示出將被用于驗證所述注冊請求的算法,其中所述安全參數(shù)索引、所述重放保護時間戳和所述算法與所述密鑰信息相關聯(lián)。
40.如權利要求38所述的方法,其中所述注冊回復包括安全參數(shù)索引、重放保護時間戳,以及將被用于驗證所述注冊回復的算法,其中所述安全參數(shù)索引、所述重放保護時間戳和所述算法與所述密鑰信息相關聯(lián)。
41.如權利要求36所述的方法,其中所述注冊回復指示出所述移動節(jié)點是否將要導出所述移動節(jié)點和所述歸屬代理之間的所述共享密鑰,所述方法還包括從所述注冊回復中判斷所述移動節(jié)點是否將要導出所述密鑰;其中當從所述注冊回復中判斷出所述移動節(jié)點將要導出所述密鑰時,執(zhí)行所述導出密鑰的步驟。
42.如權利要求41所述的方法,其中所述注冊回復中一個或多個擴展的存在和所述注冊回復中安全參數(shù)索引的存在這兩者中的至少一個指示出所述移動節(jié)點將要導出在所述移動節(jié)點和所述歸屬代理之間的所述共享密鑰。
43.如權利要求36所述的方法,其中所述注冊請求指示出所述歸屬代理將要從所述歸屬代理所接收的第二組密鑰信息中導出所述移動節(jié)點和所述歸屬代理之間的所述共享密鑰。
44.如權利要求43所述的方法,其中所述注冊請求中一個或多個擴展的存在和所述注冊請求中安全參數(shù)索引的存在這兩者中的至少一個指示出所述歸屬代理將要導出在所述移動節(jié)點和所述歸屬代理之間的所述共享密鑰。
45.一種在其上存儲計算機可讀指令的計算機可讀介質,其中所述計算機可讀指令用于在適用于驗證、授權和計費的服務器中產生歸屬代理和移動節(jié)點之間的共享密鑰,所述計算機可讀介質包括用于接收來自歸屬代理的請求消息的指令,所述請求消息標識出所述移動節(jié)點;用于從與所述移動節(jié)點相關聯(lián)的密鑰或密碼中導出密鑰信息的指令;以及用于將回復消息發(fā)送到所述歸屬代理,從而使所述歸屬代理能夠從所述密鑰信息中導出在所述移動節(jié)點和所述歸屬代理之間共享的共享密鑰的指令,其中所述回復消息包括與所述移動節(jié)點相關聯(lián)的所述密鑰信息。
46.一種適用于驗證、授權和計費的服務器,該服務器適合于產生在歸屬代理和移動節(jié)點之間的共享密鑰,所述服務器包括處理器;以及存儲器,所述處理器和所述存儲器中的至少一個適合于接收來自歸屬代理的請求消息,所述請求消息標識出所述移動節(jié)點;從與所述移動節(jié)點相關聯(lián)的密鑰或密碼中導出密鑰信息;以及將回復消息發(fā)送到所述歸屬代理,從而使所述歸屬代理能夠從所述密鑰信息中導出在所述移動節(jié)點和所述歸屬代理之間共享的共享密鑰,其中所述回復消息包括與所述移動節(jié)點相關聯(lián)的所述密鑰信息。
47.一種適用于驗證、授權和計費的服務器,該服務器適合于產生在歸屬代理和移動節(jié)點之間的共享密鑰,所述服務器包括用于接收來自歸屬代理的請求消息的裝置,所述請求消息標識出所述移動節(jié)點;用于從與所述移動節(jié)點相關聯(lián)的密鑰或密碼中導出密鑰信息的裝置;以及用于將回復消息發(fā)送到所述歸屬代理,從而使所述歸屬代理能夠從所述密鑰信息中導出在所述移動節(jié)點和所述歸屬代理之間共享的共享密鑰的裝置,其中所述回復消息包括與所述移動節(jié)點相關聯(lián)的所述密鑰信息。
48.一種在其上存儲計算機可讀指令的計算機可讀介質,所述計算機可讀指令用于在支持移動IP的歸屬代理中驗證移動節(jié)點,所述計算機可讀介質包括用于接收來自移動節(jié)點的注冊請求的指令,所述注冊請求標識出所述移動節(jié)點;用于將請求消息發(fā)送到驗證、授權和計費服務器的指令,所述請求消息標識出所述移動節(jié)點;用于接收來自所述驗證、授權和計費服務器的回復消息的指令,所述回復消息包括與所述移動節(jié)點相關聯(lián)的密鑰信息;用于從所述密鑰信息中導出密鑰的指令,該密鑰是在所述移動節(jié)點和所述歸屬代理之間的共享密鑰;以及用于將注冊回復發(fā)送到所述移動節(jié)點的指令。
49.一種支持移動IP的歸屬代理,該歸屬代理適合于驗證移動節(jié)點,所述歸屬代理包括處理器;以及存儲器,所述處理器和所述存儲器中的至少一個適合于接收來自移動節(jié)點的注冊請求,所述注冊請求標識出所述移動節(jié)點;將請求消息發(fā)送到驗證、授權和計費服務器,所述請求消息標識出所述移動節(jié)點;接收來自所述驗證、授權和計費服務器的回復消息,所述回復消息包括與所述移動節(jié)點相關聯(lián)的密鑰信息;從所述密鑰信息中導出密鑰,該密鑰是在所述移動節(jié)點和所述歸屬代理之間的共享密鑰;以及將注冊回復發(fā)送到所述移動節(jié)點。
50.一種支持移動IP并且適合于驗證移動節(jié)點的歸屬代理,所述歸屬代理包括用于接收來自移動節(jié)點的注冊請求的裝置,所述注冊請求標識出所述移動節(jié)點;用于將請求消息發(fā)送到驗證、授權和計費服務器的裝置,所述請求消息標識出所述移動節(jié)點;用于接收來自所述驗證、授權和計費服務器的回復消息的裝置,所述回復消息包括與所述移動節(jié)點相關聯(lián)的密鑰信息;用于從所述密鑰信息中導出密鑰的裝置,該密鑰是在所述移動節(jié)點和所述歸屬代理之間的共享密鑰;以及用于將注冊回復發(fā)送到所述移動節(jié)點的裝置。
51.一種在其上存儲計算機可讀指令的計算機可讀介質,所述計算機可讀指令用于將移動節(jié)點注冊到支持移動IP的歸屬代理,所述計算機可讀介質包括用于將注冊請求發(fā)送到所述歸屬代理的指令;用于接收來自所述歸屬代理的注冊回復的指令,所述注冊回復指示出所述移動節(jié)點將要導出在所述移動節(jié)點和所述歸屬代理之間共享的密鑰;以及用于從存儲在所述移動節(jié)點上的密鑰信息中導出在所述移動節(jié)點和所述歸屬代理之間共享的密鑰的指令。
52.一種適合于注冊到支持移動IP的歸屬代理的移動節(jié)點,所述移動節(jié)點包括處理器;以及存儲器,所述處理器和所述存儲器中的至少一個適合于將注冊請求發(fā)送到所述歸屬代理;接收來自所述歸屬代理的注冊回復,所述注冊回復指示出所述移動節(jié)點將要導出在所述移動節(jié)點和所述歸屬代理之間共享的密鑰;以及從存儲在所述移動節(jié)點上的密鑰信息中導出在所述移動節(jié)點和所述歸屬代理之間共享的密鑰。
53.一種適合于注冊到支持移動IP的歸屬代理的移動節(jié)點,所述移動節(jié)點包括用于將注冊請求發(fā)送到所述歸屬代理的裝置;用于接收來自所述歸屬代理的注冊回復的裝置,所述注冊回復指示出所述移動節(jié)點將要導出在所述移動節(jié)點和所述歸屬代理之間共享的密鑰;以及用于從存儲在所述移動節(jié)點上的密鑰信息中導出在所述移動節(jié)點和所述歸屬代理之間共享的密鑰的裝置。
全文摘要
本發(fā)明公開了提供歸屬代理和移動節(jié)點所共享的會話密鑰的集中源的方法和裝置。根據本發(fā)明一個方面,移動節(jié)點向歸屬代理發(fā)送注冊請求從而注冊到支持移動IP的歸屬代理。歸屬代理將請求消息(例如訪問請求消息)發(fā)送到AAA服務器,該請求消息標識移動節(jié)點。然后AAA服務器從與移動節(jié)點相關聯(lián)的密鑰或密碼中導出密鑰信息。然后AAA服務器將回復消息(例如訪問回復消息)發(fā)送到歸屬代理,從而使歸屬代理能從密鑰信息中導出在移動節(jié)點和歸屬代理之間共享的共享密鑰,所述回復消息包括與移動節(jié)點相關聯(lián)的密鑰信息。歸屬代理從密鑰信息中導出密鑰,該密鑰是移動節(jié)點和歸屬代理之間的共享密鑰。然后將注冊回復發(fā)送到移動節(jié)點。當移動節(jié)點接收到來自歸屬代理的注冊回復時,該注冊回復指示出移動節(jié)點將要導出在移動節(jié)點和歸屬代理之間共享的密鑰。然后移動節(jié)點從存儲在移動節(jié)點上的密鑰信息中導出在移動節(jié)點和歸屬代理之間共享的密鑰。移動節(jié)點可通過向歸屬代理發(fā)送后續(xù)注冊請求來啟動“密鑰重置”操作。
文檔編號H04L29/06GK1714560SQ200380103939
公開日2005年12月28日 申請日期2003年11月17日 優(yōu)先權日2002年11月22日
發(fā)明者阿爾菲施·佩特爾, 肯特·K·萊翁, 斯特凡·拉布, 戈帕爾·多梅提 申請人:思科技術公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1