專利名稱:使用ibe的高效nemo安全的制作方法
技術領域:
概括地說,本公開內容涉及移動計算機網絡,具體地說,本公開內容是關于向網絡移動性(NEMO)提供高效的安全方案。
背景技術:
移動IP可以允許對互聯網協議(IP)數據報(或分組)進行獨立于位置的路由。在IPv4和IPv6網絡中均可以使用移動IP。在互聯網工程任務組(IETF)請求注解(RFC) 3344 中描述了 IPv4網絡的移動IP,并在IETFRFC 4721中添加了更新,在IETF RFC 3775中描述了 IPv6網絡的移動IP (簡稱為移動IPv6)。在移動IP中,當移動節點位于其歸屬網絡時,其可以與歸屬代理(home agent,HA)相關聯,并可以被分配有歸屬地址。HA可以存儲與歸屬地址位于該HA的網絡中的移動節點有關的信息。當移動節點漫游出其歸屬網絡時,其可以與外地代理(foreign agent,FA)相關聯,并被分配有標識其在外地網絡中的當前位置的轉交地址(CoA)。即使移動節點可以與歸屬地址和CoA均相關聯,但不管其在互聯網中的當前位置怎樣,該移動節點都可以由其歸屬地址進行標識。網絡移動性(NEMO)是移動IP協議的擴展。IETF網絡移動性工作組在RFC 3963中公布了網絡移動性基本支持協議。NEMO被設計為支持整個移動網絡(即,移動并連接到互聯網中的不同點的移動網絡)的移動性。當移動網絡移動時,NEMO可以允許該網絡中的每ー個節點的會話連續性。為了安全目的,NEMO建議使用互聯網協議安全(IPSec)和安全關聯(SA)。但是,對于基于NEMO的網絡來說,IPSec和SA可能引入處理開銷,包括與認證、返回路由能力(RR)、協議封裝等等有關的開銷,這些對于NEMO安全結構設計的效率可能具有負面影響。
通過附圖中所示的示例性說明(而不是限制)描述了本公開內容的實施例,其中,相同的參考標記表示相似的元件,其中圖I示出了根據本公開內容的各個實施例適合于基于NEMO和IBE進行通信的示例性設備;圖2示出了根據本公開內容的各個實施例基于NEMO和IBE的示例性通信系統;圖3的流程圖示出了根據本公開內容的各個實施例在NEMO中使用IBE的示例性操作的一部分;圖4示出了適合用于實現本公開內容的各個實施例的示例性計算機系統。
具體實施例方式在下面的詳細描述中參照了附圖,所述附圖形成了詳細描述的一部分,并且其中,通過可以在其中實現本公開內容的示例性實施例來進行示出。應當理解的是,可以使用其它實施例,并且可以進行結構或者邏輯上的改變,而不脫離本公開內容的范圍。因此,下面進行的詳細描述并不是限制性的,并且根據本公開內容的實施例的范圍是由所附權利要求及其等同形式來限定的。以有助于理解本公開內容的實施例的方式,將各操作描述成依次的多個分立的操作;但是,不應當將描述順序解釋為意味著這些操作是依賴于順序的。可以使用術語“耦合的”和“連接的”以及它們的派生詞。應當理解的是,這些術語并不是要作為彼此的同義詞。相反,在特定的實施例中,“連接的”可以用于表示兩個或更多個元件彼此直接物理或電接觸。“耦合的”可以表示兩個或更多個元件直接物理或電接觸。 但是,“耦合的”也可以表示兩個或更多個元件并不是彼此直接接觸的,但是彼此之間仍進行協作或交互。為了描述目的,“A/B”形式或者“A和/或B”形式的短語表示(A)、⑶或者(A和B)。為了描述目的,“ A、B和C中的至少ー個”形式的短語表示(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或者(A、B和C)。為了描述目的,“ (A)B”形式的短語表示⑶或者(AB),也就是說,A是可選兀件。本描述可以使用短語“在一個實施例中”或者“在實施例中”,其中每ー個可以指代一個或多個相同的或不同的實施例。此外,如關于本公開內容的實施例所使用的,術語“包括”、“包含”、“具有”等等是同義的。為了安全目的,NEMO建議使用互聯網協議安全(IPSec)和安全關聯(SA)。基于ΝΕΜ0,整個子網絡(包括該子網絡的移動節點)可以從其歸屬網絡漫游到外地網絡,并連接到該外地網絡。根據NEMO/移動IP,可以向該移動節點提供CoA。移動節點可以通過ー個或多個綁定更新,向其在歸屬網絡中的HA發送該CoA,以向該HA通知該移動節點的當前位置。之后,可以在歸屬網絡和外地網絡之間建立端到端的、IPSec封裝安全載荷(ESP)保護的雙向隧道。但是,由于該移動節點仍然與其歸屬網絡中的歸屬地址相關聯,因此對端節點(correspondent node)可以通過向該移動節點的歸屬地址發送分組來繼續與該移動節點進行通信。這些分組可以由該移動節點的在其歸屬網絡中的HA接收,并經由IPSec隧道被轉發到處于外地網絡中的該移動節點。具體而言,HA可以使用IPSec隧道的入口點和出口點作為源地址和目的地址,來構造IP報頭的外層。但是,如果包括該移動節點的子網絡通過ー個或多個另外的跳(hop)漫游到另ー網絡,則可以沿著該路線在這些網絡中的每ー個之間建立単獨的IPSec隧道。之后,來自對端節點的分組在到達該移動節點之前,可能經過許多IPSec隧道。如果可以將連接到接近于網絡邊緣的接入路由器(AR)的移動節點視為頂層的樹節點,則在漫游η次之后,到達該移動節點的路徑可能需要沿著該樹向下進入更深的第η層。當移動節點進ー步遠離吋,HA和/或網絡可能會負荷過重,并具有深度為η的路由分支,從而增加了路由成本,并降低了基于NEMO的網絡的可擴展性。此外,當連接到使用IPSec的不同隧道之間的不同安全關聯(SA)時,這些SA可能需要各自與彼此協商所支持的加密關聯。同樣,IPSec使用的SA機制可能對于遵循NEMO的網絡施加了另外的開銷。因此,使用IPSec和SA作為在NEMO中提供安全的方法所產生的開銷,對于NEMO網絡的移動性和可靠性來說可能是繁重的。在本公開內容的各個實施例中,可以使用基于身份的加密(IBE)來潛在地減少由于過多的IPSec封裝所造成的開銷。在IETF所公布的RFC 5408中公開了 IBE的基本概念。圖I示出了根據本公開內容的各個實施例適合于基于NEMO和IBE的通信網絡的示例性設備。設備100可以包括接收機110、發射機120、密鑰生成器130、加密引擎140和解密引擎150,這些部件通過所示的總線160與彼此耦合,并具有用于實現本公開內容的方法的邏輯,這些方法將在下文中進ー步描述。雖然圖I列出了不同的組件,但應當理解的是,這些組件中的一個或多個可以集成到單ー組件中,或者被進ー步細分。例如,可以將加密引擎140和解密引擎150組合成単一的密碼引擎。設備100可以包括圖I中沒有示出的其它組件,例如電源、天線、存儲器等。在各個實施例中,可以用諸如專用集成電路(ASIC)、現場可編程門陣列(FPGA)之類的硬件、或者用在通用處理器(或處理器核)上運行的軟件 或者其組合,來實現組件110到150。此外,組件110到150可以通過其它類型的互連(例如,點到點連接等)來與彼此耦合。圖2示出了根據本公開內容的各個實施例基于NEMO和IBE的示例性無線通信系統。如所示的,通信系統200可以包括多個遵循NEMO的通信網絡210、220和230等。遵循NEMO的通信網絡210到230可以通過ー個或多個其它網絡205與彼此耦合。所述ー個或多個網絡205可以包括任意大小和拓撲的網絡(其可以遵循NEMO或可以不遵循NEMO),并且可以是ー個或多個專用網絡和/或公共網絡(包括通常稱為互聯網的網絡云)或者其混合。圖2中的遵循NEMO的通信網絡的數量只是用于說明目的。雖然圖2示出了 3個遵循NEMO的通信網絡,但是通信系統200可以包括更多或者更少的遵循NEMO的通信網絡。在各個實施例中,通信網絡210可以包括歸屬代理(HA)211和對端節點(CN)212。通信網絡220可以包括HA 221、移動路由器(MR) 222和移動網絡節點(MNN) 223。MR 222、MNN 223和CN 212可以是基于設備100的設備,合并有本公開內容的教導,如圖I中所示。通信系統200還可以包括私鑰/公鑰生成器(PKG)服務器201。在各個實施例中,PKG服務器201可以持有主公鑰和相對應的主私鑰。主公鑰/主私鑰可以靜態地創建或者動態地生成。在接收到對主公鑰的請求吋,PKG服務器201可以在必要的認證和授權之后,向請求者公布主公鑰,而保留主私鑰。類似地,在接收到對主私鑰的請求吋,PKG服務器201可以在認證和對授權的驗證之后,向請求者公布主私鑰,而保留主公鑰。PKG服務器201可以是專用的服務,或者可以集成為存在于通信系統200中的另一服務(包括web服務)的一部分。PKG服務器201可以用軟件或者硬件來實現,并且可以是集中式的或分布式的。在各個實施例中,PKG服務器201進行的認證以及對授權的驗證是可選的。在各個實施例中,通信系統200的實體,包括CN 212,MR 222,MNN 223,HA 211和/或HA 221,可以與PKG服務器201進行通信,以獲得主公鑰或者主私鑰,并且可以通過密鑰生成器130生成必要的加密/解密密鑰。在各個實施例中,MR 222可以充當MNN 223的路由器,并向MNN 223提供網絡接入。如果MNN 223希望與CN 212通信,則MNN 223可以首先向MR 222發送指定給CN 212的分組。MR 222可以通過其接收機110從MNN 223接收分組,并通過其發射機120將這些分組轉發給CN 212。這些分組在到達CN 212之前可能經過ー個或多個中間路由器和HA。在各個實施例中,MR 222和MNN 223可以從網絡220漫游到網絡230。MR 222可以連接到網絡230的MR 232。網絡230的FA (沒有示出)可以向MNN 223和MR 222中的每ー個都提供CoA。在各個實施例中,如果MR 222和/或MNN 223想要與CN 212進行通信,則MR 222和/或MNN 223可以使用CN 212的歸屬地址作為CN 212的標識。MR 222和/或MNN 223可以確定其是否具有CN 212的有效的遵循IBE的公鑰。如果MR 222和/或MNN 223尚不具有CN 212的遵循IBE的公鑰,或者如果現有的遵循IBE的公鑰是無效的(例如,到期的),則MR 222和/或MNN 223可以聯系PKG服務器201,以請求主公鑰(MPubK)。MR 222和/或MNN 223可以通過密鑰生成器130生成CN 212的唯一的遵循IBE的公鑰。可以通過各種方法來生成CN 212的遵循IBE的公鑰。在一個實施例中,MR 222和/或MNN 223的密鑰生成器130可以通過對所述MPubK與CN 212的標識(即,其歸屬地址)執行異或(XOR)運算,來生成CN 212的遵循IBE的公鑰。隨后,MR 222和/或MNN 223可以通過由加密引 擎140用CN 212的遵循IBE的公鑰對要向CN 212發送的明文消息進行加密,來生成密文。隨后,MR 222和/或MNN 223可以根據NEMO和移動IP,通過發射機120向CN 212發送加密的消息。在各個實施例中,當CN 212通過其接收機110接收到加密的消息吋,CN 212可以首先確定其是否具有有效的遵循IBE的私鑰。如果CN 212尚不具有遵循IBE的私鑰,或者如果現有的遵循IBE的私鑰是無效的(例如,到期的),則CN 212可以聯系PKG服務器201,以獲得主私鑰(MPrvK)。隨后,CN 212可以通過密鑰生成器130來生成其遵循IBE的私鑰,例如,通過對所述MPrvK與CN 212的歸屬地址執行異或運算。在獲得其遵循IBE的私鑰之后,CN 212可以使用該遵循IBE的私鑰,通過解密引擎150對來自MNN 223的消息進行解密。由于這些消息是基于IBE進行加密的,因此可以在無需在CN 212與MR 222和/或MNN223之間建立隧道和使用昂貴的封裝的情況下發送這些消息,從而提高了通信的效率。在各個實施例中,產生遵循IBE的私鑰的方法可以不與產生遵循IBE的公鑰的方法相同或者對稱,只要所產生的遵循IBE的私鑰可以成功地對遵循IBE的公鑰所編碼的消息進行解密即可。在各個實施例中,如果CN 212想要與MR 222和/或MNN 223進行通信,則CN 212可以同樣地執行上面描述的類似的IBE加密方法。可以使用MNN 223和MR 222的CoA作為MNN 223和MR 222的標識。例如,CN 212可以通過CN 212的密鑰生成器130對MPubK與MNN 223和/或MR 222的Cok執行異或運算,來計算遵循IBE的公鑰。隨后,CN 212可以基于所生成的公鑰,通過其加密引擎140對消息進行加密。CN 212可以通過發射機120來發送加密的消息。同樣,MR 222和/或MNN 223可以通過其接收機110來接收該消息;通過密鑰生成器130對MPrvK與MR 222和/或MNN 223的CoA執行異或運算,來計算其遵循IBE的私鑰;并使用該私鑰通過解密引擎150對來自CN 212的消息進行解密。在各個實施例中,可以只在需要的時候才進行對遵循IBE的公鑰/私鑰的計算和/或聯系PKG服務器201。例如,可以僅當CN 212或者MR 222獲得新的CoA時,或者當遵循IBE的公鑰/私鑰到期時,才執行對遵循IBE的公鑰/私鑰的計算。此外,在NEMO中使用IBE,可以不必一次性地向通信網絡200的所有實體分發主公鑰/主密鑰,這是因為可以即時地提供這些密鑰。在各個其它實施例中,CN 212可以使用MR 222的歸屬地址或者MNN 223的歸屬地址作為其標識,而不管它們的位置。CN 212可以通過獲得MPubK并進行與MR 222或MNN223的歸屬地址的異或,來計算MR 222或MNN 223的遵循IBE的公鑰。由于MR 222或MNN223的歸屬地址可以保持不變,而不管MR 222和/或MNN 223的實際位置,因此這消除了CN 212知曉MR 222或MNN 223的Cok的需要,提供了會話連續性,并進ー步簡化了通信過程。圖3的流程圖示出了根據本公開內容的各個實施例在NEMO中使用IBE的示例性操作的一部分。在向CN 212進行發送之前,MR 222可以確定需要CN 212的遵循IBE的加密密鑰。在310,為了生成CN 212的遵循IBE的加密密鑰,MR 222可以聯系PKG服務器201以獲得主公鑰,并且PKG服務器201可以向MR 222授予主公鑰。在320,MR 222可以通過密鑰生成器130來計算CN 212的遵循IBE的加密密鑰,例如,通過獲得主公鑰并執行與CN 212的歸屬地址的異或(XOR)運算。在330,MR 222可以通過發射機120向CN 212發送密文。CN 212可以確定需要CN 212的遵循IBE的解密密鑰。在340,在接收到該消息之后,CN 212可以聯系PKG服務器201以獲得主私鑰,并且PKG服務器201可以向CN 212授予主私鑰。隨后,在350,CN 212可以使用該主私鑰來通過其密鑰生成器130生成CN 212的遵循IBE的加密密鑰,并通過解密引擎150對加密的消息進行解密。CN 212可以例如通過在主私鑰和CN 212的歸屬地址之間執行異或運算,來生成遵循IBE的私鑰。圖4示出了適合用于實現本公開內容的各個實施例的示例性計算機系統。如所示的,計算系統400可以包括多個處理器或者處理器核402、系統存儲器404和通信接ロ 410。對于本申請(包括權利要求書),除非上下文以另外的方式明確地要求,否則可以將術語“處理器”和“處理器核”視作為同義的。另外,計算系統400可以包括有形的非臨時性的大容量存儲設備406 (例如包括磁盤、硬盤驅動器、光盤只讀存儲器(CDROM)等等的制品)、輸入/輸出設備408(例如鍵盤、光標控制等等)。這些元件可以通過系統總線412彼此耦合,其中系統總線412表示一個或多個總線。在多個總線的情況下,通過ー個或多個總線橋(沒有示出)來橋接這些總線。這些元件中的每ー個可以執行其在本領域中公知的常規功能。具體而言,系統存儲器404和有形的非臨時性的大容量存儲406可以用于存儲編程指令的工作拷貝和永久拷貝(本文將其統一表示為422),其中所述編程指令實現ー個或多個操作系統、驅動程序、由遵循NEMO的通信網絡中的各種實體(其包括移動路由器、公鑰/私鑰生成器、歸屬代理、夕卜地代理等等中的ー個或多個)所實現的應用。可以在エ廠或者在現場,通過例如諸如光盤(CD)之類的分發介質(沒有示出),或者通過(來自分發服務器(沒有示出)的)通信接ロ 410,將編程指令的永久拷貝放置在永久存儲406中。也就是說,可以使用具有代理程序的實現的ー個或多個分發介質,來將該代理和程序分發到各個計算設備。這些元件402-412的其余結構是公知的,故不再進ー步描述。雖然本文已經示出并描述了特定的實施例,但本領域普通技術人員應當理解的是,可以用多種多樣的替代和/或等同實現來替換所示出并描述的特定實施例,而不脫離本公開內容的實施例的范圍。本申請g在涵蓋對本文討論的實施例的任何調整或變型。因此,本公開內容的實施例顯然是要僅由權利要求及其等同形式來限 定。
權利要求
1.一種方法,包括 移動路由器從移動網絡節點接收要通過外地通信網絡向對端節點發送的消息,其中,所述移動路由器被配置為當所述移動路由器和所述移動網絡節點處于歸屬通信網絡或者處于外地通信網絡時,向所述移動網絡節點提供網絡接入; 所述移動路由器基于所述對端節點的標識來生成加密密鑰; 所述移動路由器基于所述加密密鑰對所述消息進行加密;以及 所述移動路由器向所述對端節點發送加密的消息。
2.根據權利要求I所述的方法,還包括 所述移動路由器基于從所述移動網絡節點接收到所述消息,向密鑰服務器請求主公鑰;以及 所述移動路由器從所述密鑰服務器接收響應于所述請求的主公鑰; 其中,生成所述加密密鑰包括進一步基于所述主公鑰來生成所述加密密鑰。
3.根據權利要求2所述的方法,其中,生成所述加密密鑰包括對所述主公鑰和所述對端節點的標識執行異或運算。
4.根據權利要求1-3中的任何一個所述的方法,其中,所述對端節點的標識包括與所述對端節點相關聯的歸屬網絡地址。
5.根據權利要求1-4中的任何一個所述的方法,還包括 所述移動路由器接收指示所述移動路由器和所述外地通信網絡之間的關聯的轉交地址(CoA),以及 所述移動路由器向所述移動路由器的歸屬代理提供所述CoA。
6.根據權利要求1-5中的任何一個所述的方法,還包括 所述移動路由器從所述對端節點接收第二加密的消息; 所述移動路由器基于所述移動路由器的標識和主私鑰來生成解密密鑰; 所述移動路由器對所述第二加密的消息進行解密。
7.根據權利要求6所述的方法,其中,所述移動路由器的標識包括所述移動路由器的在所述外地通信網絡中的轉交地址。
8.根據權利要求6所述的方法,其中,所述移動路由器的標識包括所述移動路由器的在所述歸屬通信網絡中的歸屬地址。
9.一種制品,包括 用于使對端節點執行包括以下的操作的模塊 從移動路由器接收加密的消息,其中,所述移動路由器通信地耦合到移動網絡節點,并且其中,所述移動路由器被配置為與所述移動網絡節點一起從歸屬通信網絡漫游到外地通信網絡,并被配置為在所述歸屬通信網絡和所述外地通信網絡中向所述移動網絡節點提供網絡接入; 基于所述對端節點的標識和主私鑰來生成解密密鑰;以及 基于所述解密密鑰,對所述加密的消息進行解密。
10.根據權利要求9所述的制品,其中,所述操作還包括 基于從所述移動路由器接收到所述消息,向密鑰服務器請求主私鑰;以及 從所述密鑰服務器接收基于所述請求的主私鑰;其中,生成所述解密密鑰包括進一步基于所述主私鑰來生成所述解密密鑰。
11.根據權利要求10所述的制品,其中,生成所述加密密鑰包括對所述主公鑰和所述移動路由器的標識執行異或運算。
12.根據權利要求9-11中的任何一個所述的制品,其中,所述操作還包括 基于移動路由器的標識來生成加密密鑰; 基于所述加密密鑰對消息進行加密;以及 向所述移動路由器發送所述消息。
13.根據權利要求12所述的制品,其中,所述對端節點的標識包括所述對端節點的在其歸屬網絡中的網絡地址。
14.根據權利要求13所述的制品,其中,所述對端節點的在其歸屬網絡中的網絡地址是IPv6地址。
15.一種裝置,包括 接收機,其被配置為從對端節點接收第一消息,其中所述裝置被配置為與移動節點一起從所述移動節點的歸屬網絡漫游到所述移動節點的外地網絡,并且其中,所述第一消息是使用基于所述移動節點的標識的第一加密密鑰進行加密的; 耦合到所述接收機的密鑰生成器,其被配置為基于所述移動節點的標識來生成解密密鑰,并基于所述對端節點的標識來生成第二加密密鑰; 耦合到所述密鑰生成器的解密引擎,其被配置為基于所述解密密鑰對所述第一消息進行解密; 耦合到所述密鑰生成器的加密引擎,其被配置為基于所述第二加密密鑰對第二消息進行加密;以及 發射機,其被配置為向所述對端節點發送所述第二消息。
16.根據權利要求15所述的裝置,其中,所述密鑰生成器還被配置為 基于所述第二消息,從密鑰服務器獲得主公鑰;以及 基于所述主公鑰和所述對端節點的標識的異或運算,生成所述第二加密密鑰。
17.根據權利要求15-16中的任何一個所述的裝置,其中,所述對端節點的標識是所述對端節點的在所述對端節點的歸屬網絡中的網絡地址。
18.根據權利要求15-17中的任何一個所述的裝置,其中,所述移動節點的歸屬網絡和外地網絡是遵循網絡移動性(NEMO)的通信網絡。
19.根據權利要求18所述的裝置,其中,所述接收機通信地耦合到移動路由器,并且所述移動路由器的標識包括所述移動路由器的在所述移動節點的外地網絡中的轉交地址。
20.根據權利要求19所述的裝置,其中,所述移動路由器的標識包括所述移動路由器的在所述移動節點的歸屬網絡中的歸屬地址。
全文摘要
提供了在遵循移動IP和/或網絡移動性(NEMO)的通信網絡中使用基于身份的加密(IBE),以便當選定的實體和其相關聯的裝置/系統在這些通信網絡之中漫游時,使這些通信網絡的各個實體之間的通信安全的裝置、方法和系統。還可以公開并要求保護其它實施例。
文檔編號H04W12/08GK102859928SQ201180002740
公開日2013年1月2日 申請日期2011年12月8日 優先權日2010年12月22日
發明者T·K·譚 申請人:英特爾公司