優先權要求
本申請要求享受以下申請的優先權:
2015年1月27日提交的、標題為“groupkeyannouncementand/ordistributionforagroup”的共同擁有的美國臨時專利申請no.62/108,374;
2015年8月24日提交的、標題為“groupkeyannouncementanddistributionforagroup”的美國臨時專利申請no.62/209,326;
2016年1月26日提交的、標題為“groupkeyannouncementanddistributionforadatalinkgroup”的美國非臨時專利申請no.15/006,881,
故以引用方式將上述申請中的每一份申請的內容明確地并入本文。
概括地說,本公開內容涉及組密鑰的通告和分發。
背景技術:
包括在鄰居感知網絡(nan)或無線網狀網絡的數據鏈路組中的設備使用諸如組密鑰(例如,公共組密鑰)之類的安全證書來加密組尋址的業務。為了安全原因起見,數據鏈路組的設備所使用的特定組密鑰(例如,活動組密鑰)在相對應的時間段之后到期。定期地,生成新的組密鑰并將其安全地分發到數據鏈路組的每個設備。為了說明起見,生成新的組密鑰的特定設備可以向數據鏈路組中的其它設備發送密鑰通告消息,并且使用對等交換消息(例如,點對點(p2p)通信)向數據鏈路組中的一個或多個設備(例如,一個或多個相鄰設備)發送該新的組密鑰。可以使用另外的關聯操作和數據鏈路組中的設備之間的單播消息交換來將新的組密鑰分發給數據鏈路組中的每個設備。執行關聯操作或者單播消息交換來分發組密鑰可能向nan或者無線網狀網絡增加顯著的業務和開銷。
技術實現要素:
在特定的方面,一種設備包括密鑰邏輯,后者配置為獲得與數據鏈路組相對應的候選組密鑰。此外,該設備還包括無線接口,后者配置為在指定用于該數據鏈路組的尋呼窗期間,向該數據鏈路組的一個或多個設備發送通告消息。該通告消息包括多播消息,指示候選組密鑰的可用性。
在另一個特定的方面,一種方法包括:在數據鏈路組的第一設備處,獲得候選組密鑰。此外,該方法還包括:從第一設備向該數據鏈路組的第二設備發送用于指示候選組密鑰的可用性的通告消息。該通告消息包括多播消息,是在指定用于該數據鏈路組的尋呼窗期間發送的。
在特定的方面,一種設備包括密鑰邏輯,后者配置為在指定用于數據鏈路組的尋呼窗期間,監測第一通信信道。此外,該設備還包括無線接口,后者配置為在尋呼窗期間,從數據鏈路組的第一設備接收通告消息。該通告消息包括多播消息,指示候選組密鑰的可用性。
在另一個特定的方面,一種方法包括:在數據鏈路組的第二設備處,在指定用于該數據鏈路組的尋呼窗期間,監測第一通信信道。此外,該方法還包括:在尋呼窗期間,在第二設備處,從數據鏈路組的第一設備接收通告消息。該通告消息包括多播消息,指示候選組密鑰的可用性。
在另一個特定的方面,一種設備包括密鑰邏輯,后者配置為獲得與數據鏈路組相對應的候選組密鑰。此外,該設備還包括無線接口,后者配置為在第一通信信道的發現窗期間,向該數據鏈路組的一個或多個設備發送通告消息。該通告消息包括多播消息,指示候選組密鑰的可用性。
在另一個特定的方面,一種方法包括:在數據鏈路組的第一設備處,獲得候選組密鑰。此外,該方法還包括:從第一設備向該數據鏈路組的設備發送用于指示候選組密鑰的可用性的通告消息。該通告消息包括多播消息,是經由第一通信信道在發現窗期間發送的。
在另一個特定的方面,一種設備包括密鑰邏輯,后者配置為在與數據鏈路組相對應的發現窗期間,監測第一通信信道。此外,該設備還包括無線接口,后者配置為在發現窗期間,從數據鏈路組的第一設備接收通告消息。該通告消息包括多播消息,指示候選組密鑰的可用性。
在另一個特定的方面,一種方法包括:在數據鏈路組的第二設備處,在與數據鏈路組相對應的發現窗期間,監測第一通信信道。此外,該方法還包括:在發現窗期間,在第二設備處從數據鏈路組的第一設備接收通告消息。該通告消息包括多播消息,指示候選組密鑰的可用性。
附圖說明
圖1是支持通告消息的傳輸和數據鏈路組的組密鑰的分發的系統的特定實現的圖;
圖2是配置為生成候選組密鑰的設備的框圖;
圖3是與數據鏈路組相對應的通信的說明性示例的時序圖;
圖4是使用分發密鑰的說明性方法的梯形圖;
圖5是與數據鏈路組相對應的通信的說明性示例的時序圖;
圖6是尋呼屬性字段的各方面的說明性示例的圖;
圖7是數據鏈路組的設備處的第一說明性操作方法的流程圖;
圖8是數據鏈路組的設備處的第二說明性操作方法的流程圖;
圖9是數據鏈路組的設備處的第三說明性操作方法的流程圖;
圖10是數據鏈路組的設備處的第四說明性操作方法的流程圖;
圖11是數據鏈路組的設備處的第五說明性操作方法的流程圖;
圖12是數據鏈路組的設備處的第六說明性操作方法的流程圖;以及
圖13是可用于支持本文所公開的一種或多種方法、系統、裝置和計算機可讀介質的各種實現的無線設備的圖。
具體實施方式
下面參照附圖來描述本公開內容的具體實施方式。在描述中,貫穿所有附圖,通過通用附圖標記來表示共同特征。如本文所使用的,用于修改元素(例如結構、組件、操作等等)的順序項(例如,“第一”、“第二”、“第三”等等)本身并不表示該元素相對于另一個元素的任何優先級或者順序,而僅僅是將該元素與具有相同名稱的另一元素區分開(但是用于序數項的使用)。
如本文所使用的,各種術語只是用于描述特定的實現,而不是旨在對實施方式進行限制。例如,單數形式的“一個(a)”、“某個(an)”和“該(the)”也旨在包括復數形式,除非上下文明確地指出。此外,還應當理解的是,術語“包括”和“包含”可以與“含有”或“涵蓋”互換地使用。另外,應當理解的是,術語“其中(wherein)”可以與“在此處(where)”互換地使用。
在本公開內容中,鄰居感知網絡(nan)或者無線網狀網絡的數據鏈路組中的設備可以通告和分發組密鑰,例如,新的組密鑰(或者候選組密鑰)。數據鏈路組的第一設備可以向該數據鏈路組中的一個或多個設備發送通告消息。例如,第一設備可以在與該數據鏈路組相對應的組傳輸窗的尋呼窗期間將通告消息作為多播消息進行發送。再舉一個例子,可以在與nan相對應的發現窗期間發送該通告消息。該通告消息可以包括用于指示候選組密鑰(例如,潛在的“下一個”活動組密鑰)的可用性的標志。數據鏈路組的每個設備都可以在尋呼窗期間被喚醒(例如,處于活動模式),這可能增加第一設備的相鄰設備接收到通告消息的可能性。
數據鏈路組的第二設備可以從第一設備接收通告消息,并且響應于該通告消息,第二設備可以判斷該第二設備是否與第一設備相關聯。如果第二設備與第一設備相關聯(例如,第一設備和第二設備成功地完成了安全關聯(例如,認證過程),并且建立了成對密鑰來用于安全的對等(p2p)通信),則第二設備可以經由p2p通信從第一設備接收候選組密鑰。
如果第一設備和第二設備不相關聯,則第二設備可以等待從與該第二設備相關聯的第三設備接收第二通告消息(其對應于候選組密鑰)。例如,在從與第二設備不相關聯的第一設備接收到通告消息之后,第二設備可以等待從與該第二設備相關聯的第三設備接收第二通告消息。響應于接收到第二通告消息,第二設備可以從第三設備請求候選組密鑰。第二設備可以等待從相關聯的設備接收第二通告消息,直到數據鏈路組的活動組密鑰被設置為過期之前的預定時間為止。為了說明起見,當檢測到該預定的時間時,活動組密鑰的到期被認為是緊迫的,并且第二設備可以發起與諸如第一設備的無關聯設備的安全關聯,并且可以從新關聯的設備(例如,第一設備)請求候選組密鑰。通過等待從關聯的設備接收通告消息,直到檢測到預定的時間,第二設備并不自動地響應于該通告消息來發起與第一設備的安全關聯。因此,與自動地進行關聯并且從發送通告消息的設備請求組密鑰的數據鏈路組的設備相比,可以減少與一個或多個設備進行安全關聯(例如,執行認證過程)以獲得候選組密鑰相對應的業務量。
參見圖1,該圖示出了包括數據鏈路組的一個或多個設備的系統100的特定實現。系統100包括諸如nan或者無線網狀網絡之類的無線網絡102,其中無線網絡102支持數據鏈路組的組密鑰的分發以及與該組密鑰相對應的通告消息的傳輸。此外,無線網絡102還可以包括或者對應于一個或多個數據鏈路組。
無線網絡102可以包括一個或多個設備,例如,第一設備104、第二設備106、第三設備108和第四設備110。設備104到110中的每一個可以是配置為向無線網絡102中包括的一個或多個其它無線通信設備發送數據,以及從其接收數據的無線通信設備。每個無線設備可以包括或者對應于無線網絡102的一個站(例如,無線站或者無線通信設備)。無線網絡102可以是基礎設施網絡或者無基礎設施網絡(例如,對等網絡(如,ad-hoc網絡))。例如,無線網絡102(例如,nan)的設備104到110中的每一個可以被配置為經由與該nan相對應的一個或多個無線信道,執行關聯操作(例如,安全關聯操作)、安全信息交換操作、同步操作和其它操作。在一些實現中,作為說明性非限制性示例,設備104到110可以根據諸如電氣和電子工程師協會(ieee)802.11標準(例如,ieee802.11s標準)、wi-fi聯盟標準、nan標準或者其組合之類的一個或多個標準來執行這些操作。雖然將無線網絡102示出成包括四個設備,但在其它實現中,無線網絡102可以包括四個以上的設備,或者小于四個的設備。
無線網絡102可以包括或者對應于一個或多個數據鏈路組(例如,一個或多個網格)。如本文所使用的,數據鏈路組可以包括無基礎設施對等網絡(例如,ad-hoc網絡)。數據鏈路組可以包括能夠形成網絡(例如,非集中式無線網絡)的多個設備。另外,數據鏈路組中的每個設備可以使用共同安全證書,其中所述共同安全證書可以在與該數據鏈路組所使用的一個或多個通信信道的帶內或者帶外進行交換。在一些實現中,可以對數據鏈路組中的設備進行同步,以便具有定期的蘇醒時間,例如,喚醒這些設備中的每一個以廣告和接收業務和其它消息的時間周期。
無線網絡102可以包括或者對應于數據鏈路組,其中該數據鏈路組包括一個或多個設備(例如,設備104到110)。數據鏈路組還可以稱為數據鏈路、數據鏈路網絡、組網絡、nan數據鏈路(ndl)、ndl網絡、數據路徑組、數據路徑組網絡、nan數據路徑、nan數據路徑組或者nan數據路徑組網絡。在一些實現中,作為說明性而非限制性示例,數據鏈路組可以是網狀網絡(例如,“社交wi-fi網狀網絡”或者電氣和電子工程師協會(ieee)802.11s網狀網絡)中包括網格組。再舉一個例子,數據鏈路組可以包括無基礎設施對等(p2p)網絡。
作為數據鏈路組的一部分,數據鏈路組的設備104到110可以經由無線通信來執行數據交換(例如,而不涉及一個或多個無線運營商、一個或多個wi-fi接入點、互聯網或者其組合)。例如,數據鏈路組的設備104到110可以共享諸如組密鑰(例如,公共組密鑰)之類的安全證書,以實現通信。為了說明起見,數據鏈路組的每個設備可以使用組密鑰,對組消息進行編碼和解碼。在一些實現中,數據鏈路組的設備104到110中的一個或多個可以提供一個或多個服務,例如,音樂服務、社交媒體共享服務、文件共享服務、游戲服務或者其它服務。在一些實現中,可以對數據鏈路組的設備104到110進行同步,以便具有定期的蘇醒時間,例如,喚醒設備104到110中的每一個(例如,處于活動操作模式)以通告服務、接收業務或其它消息或者其組合的時間周期。在一些實現中,無線網絡102可以包括多個數據鏈路組,并且無線網絡102的每個數據鏈路組可以具有相應的組標識符,例如唯一值(如,字節值、組地址、或者其組合)。當無線網絡102包括多個數據鏈路組時,特定的設備可以包括在一個以上的數據鏈路組中。雖然將無線網絡102描述成具有包括在一個數據鏈路組中的四個設備,但在其它實現中,無線網絡102可以包括四個以上的設備,或者小于四個的設備。
第一設備104可以包括密鑰邏輯112和消息邏輯114。密鑰邏輯112可以包括(或者存儲)活動密鑰集130、候選密鑰集140和一個或多個成對密鑰145。活動密鑰集130可以包括與該數據鏈路組相對應、并被設置為由該數據鏈路組中的設備進行使用的一個或多個密鑰。為了說明起見,活動密鑰集130可以包括第一組密鑰132、第一分發密鑰134、第一組完整性密鑰131、或者其組合。在特定的實現中,活動密鑰集130可以包括密鑰131、132、和134中的兩個,這兩個密鑰可以稱為密鑰對。在另一種特定的實現中,活動密鑰集130可以包括所有的密鑰131、132、和134,這三個密鑰可以稱為密鑰三元組(trio)。類似地,候選密鑰集140可以包括第二組密鑰142、第二分發密鑰144、第二組完整性密鑰141、或者其組合。雖然描述成單一活動密鑰集130和單一候選密鑰集140,但在一些實現中,密鑰邏輯112可以被配置為存儲多個活動密鑰集、多個候選密鑰集、或者二者。例如,密鑰邏輯112可以被配置為存儲與第一數據鏈路組相對應的第一活動密鑰集和與第二數據鏈路組相對應的第二活動密鑰集。
活動密鑰集130可以包括第一組密鑰132,后者被設置成數據鏈路組的活動組密鑰。第一組密鑰132可以實現對于在該數據鏈路組的設備之間傳輸的數據鏈路組消息的加密(或編碼)和解密(或解碼)。
可選地,活動密鑰集130可以包括第一分發密鑰134,后者被設置成數據鏈路組的活動分發密鑰。第一分發密鑰134可以對應于第一組密鑰132,使得第一組密鑰132和第一分發密鑰134構成第一密鑰對。當第一分發密鑰134被設置成活動分發密鑰時,第一分發密鑰134可以用于對候選組密鑰、候選分發密鑰、候選組完整性密鑰、或者其組合進行加密,以便傳輸給數據鏈路組的其它設備,如本文所進一步描述的。
另外,活動密鑰集130可以包括第一完整性組密鑰131,后者被設置成數據鏈路組的活動完整性組密鑰。第一完整性組密鑰131可以對應于第一組密鑰132、第一分發密鑰134、或者二者。在活動密鑰集130包括第一組密鑰132、第一分發密鑰134、和第一完整性組密鑰131的實現中,第一組密鑰132、第一分發密鑰134、和第一完整性組密鑰131構成第一密鑰三元組。當第一完整性組密鑰131被設置成活動完整性組密鑰時,第一完整性組密鑰131可以用于未加密(或者未編碼)的組尋址業務的完整性保護。例如,具有要作為未加密的組尋址消息的消息進行發送的設備可以基于該消息和第一完整性組密鑰131來生成一個值。該值可以包括在該消息的特定字段中。在特定的實現中,將該值包括在根據ieee802.11標準的消息完整性編碼(mic)字段中。接收到該未加密的組尋址消息的設備,可以使用第一組完整性密鑰131來驗證該未加密(或者未編碼)的組尋址消息,這可以提供用于防止設備改變該組尋址業務,以及防止對改變后的組尋址業務進行中繼的安全。為了說明起見,第一設備104的密鑰邏輯112可以基于第一組完整性密鑰131和所接收的第一未加密(或者未編碼)的多播消息來生成第一值,密鑰邏輯112可以將第一值與該消息中的特定值(例如,所接收的未加密(或者未編碼)的多播消息的mic字段中的特定值)進行比較。密鑰邏輯112可以對第一未加密的多播消息進行驗證,判斷第一值是否與該特定值相匹配。如果第一值與該特定值不匹配,則密鑰邏輯112沒有通過對第一未加密的多播消息的驗證。在特定的實現中,沒有通過驗證的消息不被轉發,并且將被丟棄或者擦除。
所述一個或多個成對密鑰145可以用于第一設備104和與第一設備104相關聯的設備之間的對等(p2p)通信。例如,所述一個或多個成對密鑰145可以包括能夠用于第一設備104和第二設備106(與第一設備104相關聯的設備)之間的p2p通信的成對密鑰146,如本文所進一步描述的。設備和第一設備104可以執行關聯過程以變得相關聯。與第一設備104相關聯的設備還可以稱為處于與第一設備104的關聯狀態。
可以將活動密鑰集130中包括的每個密鑰設置成相應的時間周期的活動密鑰。例如,可以將第一組密鑰132設置成活動組密鑰,并且其可以包括在用于第一時間周期的活動密鑰集130中。再舉一個例子,可以將第一分發密鑰134設置成活動分發密鑰,并且其可以包括在用于第二時間周期的活動密鑰集130中。再舉一個例子,可以將第一組完整性密鑰131包括在用于第三時間周期的活動密鑰集130中。在其它實現中,第一時間周期、第二時間周期、和第三時間周期可以是相同的時間周期。第一時間周期、第二時間周期、第三時間周期、或者其組合,可以是數據鏈路組中包括的每個設備都已知(或者可確定的)預定時間周期。在一些實現中,第一時間周期、第二時間周期、或者第三時間周期可以與密鑰驗證時間周期中的另一個部分地重疊。在特定的實現中,在諸如ieee802.11標準、wi-fi聯盟標準、nan標準或者其組合之類的無線通信標準中,規定了第一時間周期。在其它實現中,第一時間周期和第二時間周期可以由數據鏈路組的設備進行協商。在一些實現中,第一時間周期可以與其它組密鑰的時間周期相重疊。在特定的實現中,第一組密鑰132和第一時間周期不會到期。例如,第一時間周期可以指示不受限的生命期,或者可以不指示結束時間,并且因此第一組密鑰132可以具有不受限的生命期并且可能不會到期。當第一組密鑰132不到期時,設備104到110可以不生成候選密鑰來替換第一組密鑰132。
候選密鑰集140可以包括:可用于被設置成活動密鑰集130的活動密鑰的一個或多個密鑰。候選密鑰集140可以包括第二組密鑰142(例如,候選組密鑰)、第二分發密鑰144(例如,候選分發密鑰)、第二組完整性密鑰141(例如,候選組完整性)、或者其組合。第二分發密鑰144可以對應于第二組密鑰142,使得第二組密鑰142和第二分發密鑰144構成第二密鑰對。第二組密鑰142可以用作(例如,設置為)活動組密鑰,并且可以在第一時間周期到期之后包括在活動密鑰集130中。因此,第二組密鑰142可以追隨(例如,替換)第一組密鑰132作為活動組密鑰。第二分發密鑰144可以用作(例如,設置為)活動分發密鑰,并且可以在第二時間周期到期之后包括在活動密鑰集130中。因此,第二分發密鑰144可以追隨(例如,替換)第一分發密鑰134作為活動組密鑰。在第三時間周期到期之后,第二組完整性密鑰141可以追隨(例如,替換)第一組完整性密鑰131。
第二組完整性密鑰141(例如,候選組完整性密鑰)可以對應于第二組密鑰142、第二分發密鑰144、或者二者,使得第二組密鑰142、第二分發密鑰144、和第二組完整性密鑰141構成第二密鑰三元組。第二組完整性密鑰141可以追隨(例如,替換)第一組完整性密鑰131,并且可以用于未加密(或未編碼)的組尋址業務的完整性保護。
在活動密鑰集130到期之前,第一設備104可以獲得候選密鑰集140。例如,在第一時間周期到期之前(例如,在第一組密鑰132作為活動組密鑰到期之前),第一設備104可以獲得第二組密鑰142。為了獲得候選密鑰集140,第一設備104可以被配置為生成候選密鑰集140,如參照圖2所描述的。另外地或替代地,候選密鑰集140可以由數據鏈路組的另一個設備生成,并且使用密鑰傳輸消息180來傳輸(例如,分發)給第一設備104,如本文所進一步描述的。
消息邏輯114可以被配置為生成和處理在無線網絡102的設備之間傳輸的消息。消息邏輯114可以包括編碼器/解碼器118,后者配置為對在無線網絡102的設備104到110之間傳輸的消息進行編碼和解碼。例如,編碼器/解碼器118可以使用活動密鑰集130中的一個(例如,132或134)對要傳輸給數據鏈路組的另一個設備的消息進行編碼(例如,加密)。在其它實現中,消息邏輯114可以包括與該編碼器不同的編碼器和解碼器。
在一些實現中,消息邏輯114可以被配置為對于在第一設備104與和第一設備相關聯的設備(例如,第二設備106)之間傳輸的安全消息進行編碼和解碼(如通過實線181所指示的)。為了說明起見,第一設備104和第二設備106可以進行或者執行安全關聯(例如,執行認證過程),以便在第一設備104和第二設備106之間實現對等(p2p)通信。作為認證過程的一部分,可以生成成對密鑰146來實現第一設備104和第二設備106之間的安全通信。可以將成對密鑰146存儲在第一設備104和第二設備106中的每一個處。例如,第一設備104可以將成對密鑰146包括在所述一個或多個成對密鑰145中。只要第一設備104與第二設備106相關聯,所述一個或多個成對密鑰145就可以包括成對密鑰146。消息邏輯114可以使用成對密鑰146來對在第一設備104和第二設備106之間傳輸的一個或多個p2p消息進行編碼和解碼。
另外地或替代地,在無線網絡102的設備104到110之間傳輸的消息中的一個或多個可以不進行編碼(例如,加密)。例如,消息邏輯114可以生成一個消息,并且第一設備104可以在不使用編碼器/解碼器118對該消息進行編碼的情況下,向無線網絡102的另一個設備發送該消息。為了說明起見,第一設備104可以與第四設備110不相關聯(如通過虛線182所指示的),并且第一設備104可以向第四設備110發送非安全消息(例如,未編碼的消息或者未加密的消息)。另外,第一設備104可以向一個或多個關聯的設備發送非安全消息。
在操作期間,第一設備104可以被配置為在第一組密鑰132的到期之前,生成第二組密鑰142。例如,第一設備104可以響應于完成從某個隨機值或者偽隨機值的倒計數,來生成第二組密鑰142,如參照圖2所進一步描述的。第二組密鑰142可以替換第一組密鑰132作為數據鏈路組的活動組密鑰,以使數據鏈路組中的每個設備都能對組消息進行加密和解密(例如,組傳輸)。
在一些實現中,數據鏈路組的設備104到110可以通過隨機數生成,來生成組密鑰。例如,第一設備104可以被配置為通過使用隨機數發生器、偽隨機數發生器或者其它隨機數生成方法,來生成第二組密鑰142。第二組密鑰142可以包括256個隨機生成的或者偽隨機生成的比特。無線網絡102的每個數據鏈路組可以包括唯一性組密鑰。數據鏈路組的設備可以不使用先前已使用的組密鑰。例如,數據鏈路組的設備可以存儲到達的密鑰(例如,到期的活動密鑰集)和候選密鑰(例如,候選密鑰集),以防止組密鑰的重用。為了說明起見,第一設備104可以生成第一組密鑰132,并且將第一組密鑰132與第二組密鑰142進行比較,以判斷第二組密鑰142是否是唯一的。響應于確定第二組密鑰142不是唯一的,第一設備104可以隨機地生成另一個候選密鑰(例如,第二候選組密鑰)。響應于確定第二組密鑰142是唯一的,第一設備104可以發送與第二組密鑰142的生成相對應的通告消息,或者用于指示第二組密鑰142的生成的通告消息。在特定的實現中,可以響應于從隨機值的倒計數來生成第二組密鑰142。
在一些實現中,數據鏈路組的專用設備可以被配置為生成候選組密鑰。該設備可以稱為數據鏈路組的密鑰發生器設備。為了說明起見,當特定的設備操作成密鑰發生器設備時,數據鏈路組的其它設備可以不生成組密鑰(或者候選組密鑰)。此外,密鑰發生器設備還可以稱為數據鏈路組的“引導”設備。在一些實現中,密鑰發生器設備可以是數據鏈路組的服務(例如,一對一服務、一對多服務或者二者)的提供者。在一些實現中,數據鏈路組的特定設備可以基于滿足一個或多個標準,而確定操作成密鑰發生器設備。例如,第一設備104可以基于第一設備104是數據鏈路組的發起方、基于第一設備104處于與該數據鏈路組中的更多設備的關聯狀態(與該數據鏈路組中的任何其它設備相比)、基于第一設備104比數據鏈路組中的其它設備在nan中花費了更多的時間、基于處于與第一設備104的關聯狀態的設備的數量、基于nan的拓撲、基于第一設備104包括在nan中的持續時間、基于第一設備104在nan中的排名、基于第一設備104的電池電平或者其組合,來確定操作成密鑰發生器設備。在特定的實現中,在數據鏈路組的發起方生成該數據鏈路組之后,可以指示密鑰發生器設備。例如,發起方可以向數據鏈路組中的設備發送用于指示一個特定的設備要操作成密鑰發生器設備的消息。
在另一種特定的實現中,數據鏈路組中的設備可以選舉數據鏈路組的一個特定設備操作成密鑰發生器設備。該選舉可以是基于上面所列出的標準中的一個或多個。例如,可以基于一個特定的設備比數據鏈路組中的其它設備在數據鏈路拓撲中具有更“有利的”位置,而選擇該特定的設備操作成密鑰發生器設備。數據鏈路組的拓撲中的有利位置可以對應于該特定設備與數據鏈路組中的每個其它設備具有小于門限數量的跳數。再舉一個例子,可以基于一個特定的設備處于與更多設備的關聯狀態(與數據鏈路組中的任何其它設備相比),而選擇該特定的設備。
在特定的實現中,如果當前的密鑰發生器設備變得不可用或者終止了密鑰生成操作的執行,則配置為生成候選密鑰的設備可以成為密鑰發生器設備。例如,如果當前操作成密鑰發生器設備的特定設備與數據鏈路組或者nan去關聯,或者如果該特定的設備指示不能夠執行密鑰生成操作,則可以選擇數據鏈路組的不同設備來操作成密鑰發生器設備。在特定的實現中,在特定的設備變得不可用之前,該特定的設備可以選擇不同的設備操作成密鑰發生器設備,該特定的設備可以向所選定的設備發送消息。在另一種實現中,一個設備可以確定該特定的設備不再執行密鑰生成操作,并且該設備可以開始執行密鑰生成操作。替代地,數據鏈路組中的設備可以選舉數據鏈路組的一個不同設備操作成密鑰發生器設備。
此外,數據鏈路組中的設備還可以被配置為發送或者接收與組密鑰相對應的消息。為了說明起見,消息邏輯114可以被配置為生成和處理在數據鏈路組的設備之間進行傳輸的消息。在一些實現中,消息邏輯114可以被配置為對于在第一設備104和與第一設備104相關聯的設備(例如,第二設備106)之間傳輸的安全消息進行編碼和解碼或者加密和解密(如通過實線181所指示的)。在一些實現中,可以使用第一組密鑰132來對組尋址數據(例如,多播數據或廣播數據)進行加密或解密。
第一設備104可以被配置為生成與第二組密鑰142的生成相對應的通告消息160。例如,消息邏輯114可以被配置為生成通告消息160。通告消息160可以指示候選密鑰集140的至少一個密鑰是可用的。例如,通告消息160指示候選組密鑰(例如,第二組密鑰142)是可用的,并且將替換第一組密鑰132作為活動組密鑰。響應于生成第二組密鑰142并且在將第二組密鑰142分發給數據鏈路組的其它設備106到110之前,第一設備104可以生成通告消息160。替代地,可以在完成倒計數之后生成第二組密鑰142,并且可以響應于倒計數的完成并且在第二組密鑰142的生成或者分發之前,生成通告消息160。在一些實現中,消息邏輯114可以使用一種密鑰(例如,第一組密鑰132或者成對密鑰146)對通告消息160進行編碼(或者加密)。在其它實現中,消息邏輯114可以不對通告消息160進行編碼(或者加密)。
通告消息160可以包括標志162、組標識符(id)164和設備id166。標志162可以包括用于指示該通告消息是組密鑰通告消息的一個或多個比特、字段或者其組合。組id164可以是用于唯一地標記數據鏈路組的數據鏈路組的標識符。例如,組id164可以包括與數據鏈路組相對應的一個或多個比特(例如,字節值或者組地址)。設備id166可以是與生成候選組密鑰的設備相對應的媒體訪問控制(mac)地址。例如,通告消息160的設備id166可以是第一設備104的mac地址。在一些實現中,通告消息160可以包括:與生成第二組密鑰142(或者候選密鑰集140)的時間或者發起第二組密鑰142(或者候選密鑰集140)的生成的時間相對應的時間戳。另外地或替代地,通告消息160可以包括:與發送該通告消息160的特定設備相對應的第二設備id。例如,第二設備id可以是發送通告消息160的設備(例如,第一設備104)的mac地址。
在一些實現中,通告消息160還包括密鑰指示符168。密鑰指示符168可以提供與第二組密鑰142有關的信息。例如,密鑰指示符168可以包括基于第二組密鑰142所生成的哈希值、與第二組密鑰142的生成相對應的時間戳、第一設備104的mac地址或者其組合。密鑰指示符168可以使接收到通告消息160的設備能夠判斷第二組密鑰142是否將成為用于該數據鏈路組的下一個活動密鑰,如本文所進一步描述的。
在生成通告消息160之后,第一設備104可以向數據鏈路組中的其它設備發送通告消息160。可以將通告消息160作為安全消息或者非安全消息進行發送。如果將通告消息160作為安全消息進行發送,則通告消息160可以是加密的消息,并且如果將通告消息160作為非安全消息進行發送,則通告消息160可以是未加密的消息。例如,在發送通告消息160之前,編碼器/解碼器118可以使用活動密鑰集130的特定密鑰(例如,第一組密鑰132)對通告消息160進行加密。替代地,編碼器/解碼器118可以不對通告消息160進行加密。如果沒有對通告消息160進行加密,則編碼器/解碼器118可以使用第一組完整性密鑰131來保護通告消息160。
第一設備104可以被配置為將通告消息160作為多播消息來發送給數據鏈路組的設備106到110中的至少一個。可以經由第一無線信道來發送通告消息160。可以向與第一設備104相關聯的設備以及與第一設備104不相關聯的設備發送通告消息160。例如,可以向與第一設備104相關聯的第二設備106發送通告消息160(如通過實線181所指示的)。另外,可以向與第一設備104不相關聯的第四設備110發送通告消息160(如通過虛線182所指示的)。第一無線信道可以對應于nan通信信道、數據鏈路組信道、或者二者。
在特定的實現中,第一設備104可以在第一通信信道的尋呼窗期間發送通告消息160。該尋呼窗可以是針對數據鏈路組所指定的,并且該尋呼窗可以對應于nan通信信道或者數據鏈路組信道。為了說明起見,該尋呼窗可以包括:被指定用于經由nan通信信道或者數據鏈路組信道進行特定的通信的特定時間段。在另一種特定的實現中,第一設備104可以在第一通信信道的發現窗期間發送通告消息160。發現窗可以對應于nan通信信道。另外地或替代地,第一設備104可以將通告消息160作為對等(p2p)通信,發送給與第一設備104相關聯的特定設備(例如,第二設備106)。
數據鏈路組的設備104到110中的每一個可以在尋呼窗、發現窗、或者二者期間處于活動模式,這可以增加第一設備104的相鄰設備接收到通告消息160的可能性。位于第一設備104的通信范圍之內的設備(例如,與第一設備104相距一跳的設備)可以接收該通告消息160。例如,第二設備106和第四設備110可以接收該通告消息160,并且可以稱為第一設備104的“相鄰”設備,這是由于設備106和110位于第一設備104的特定通信范圍(例如,一跳范圍)之內,如ieee802.11s標準、wi-fi聯盟標準或者其組合所描述的。第三設備108不位于該特定的通信范圍之內,并且不被認為是第一設備104的相鄰設備,這是由于第三設備與第一設備104相距多跳。
一個或多個設備可以接收和轉發通告消息160,使得通告消息160到達數據鏈路組中的每個設備。例如,響應于第二設備106從第一設備104接收到通告消息160,第二設備106可以將通告消息160作為通告消息170(例如,轉發的通告消息),來轉發給數據鏈路組中的其它設備。為了說明起見,第二設備106可以向第三設備108和第四設備110發送通告消息170。在一些實現中,從第一設備104接收到通告消息160的另一個設備可以不轉發該通告消息160,直到在其它設備接收到與該通告消息160相對應的第二組密鑰142(或者候選密鑰集140)之后為止。
在一些實現中,消息邏輯114還可以被配置為在發送了通告消息160之后,生成尋呼消息165。尋呼消息165可以指示將調度從特定的設備(例如,第一設備104)向數據鏈路組中的其它設備發送數據。被調度進行發送的數據可以包括候選密鑰集140中的至少一個密鑰(例如,第二組密鑰142)。在一些實現中,尋呼消息165可以是多播消息。例如,可以將尋呼消息165發送給數據鏈路組中的多個設備,并且尋呼消息165可以指示數據被調度發送到數據鏈路組的多個設備。在一些實現中,可以使用第一組密鑰132對尋呼消息165進行加密。尋呼消息165可以可選地包括尋呼屬性169。本文進一步參照圖6來描述尋呼屬性169的細節。
第一設備104可以被配置為向數據鏈路組中的與第一設備104相關聯的相鄰設備發送尋呼消息165。例如,第一設備104可以向第二設備106發送尋呼消息165。在一些實現中,可以經由第一無線信道(nan通信信道)來發送尋呼消息165。在其它實現中,可以經由第二無線信道(數據鏈路組信道)來發送尋呼消息165。可以在被指定用于數據鏈路組(或者與之相對應)的傳輸窗的尋呼窗期間發送尋呼消息165。數據鏈路組中的每個設備都可以被配置為在該尋呼窗期間工作在活動操作模式,使得可以接收和發送尋呼消息。
在一些實現中,第二設備106可以被配置為響應于接收到尋呼消息165,向第一設備104發送觸發消息167。觸發消息167指示在當前傳輸窗或者后續傳輸窗的數據窗期間,調度第二設備106工作在活動操作模式。例如,響應于接收到指示第一設備104具有被調度在數據窗期間向第二設備106發送的數據的尋呼消息165,第二設備106可以發送觸發消息167。另外,第二設備106可以在數據窗期間保持工作在活動操作模式,以便從第一設備104接收數據。可以在尋呼窗或者數據窗期間,經由第二無線信道(數據鏈路組信道)來發送觸發消息167。替代地,可以經由第一無線信道(nan通信信道)來發送觸發消息167。
在接收到觸發消息167之后,第一設備104可以生成密鑰傳輸消息180。密鑰傳輸消息180可以包括:將分發給數據鏈路組的設備106到110的第二組密鑰142。在一些實現中,密鑰傳輸消息180可以包括候選密鑰集140的一個或多個密鑰。第一設備104可以在第一組密鑰132(例如,活動組密鑰)到期之前,向第二設備106發送密鑰傳輸消息180。在一些實現中,密鑰傳輸消息180還可以包括密鑰標識符143,其示出成圖1中的密鑰id。密鑰標識符143可以指示第二組密鑰142的生命期或者到期時間。在一些實現中,密鑰傳輸消息180可以是安全消息,其可以作為從第一設備104到第二設備106的單播消息進行發送。例如,可以基于成對密鑰146對密鑰傳輸消息180進行加密,并且可以經由單播傳輸從第一設備104向第二設備106發送密鑰傳輸消息180。可以在數據窗期間經由第二無線信道(數據鏈路組信道)來發送密鑰傳輸消息180。替代地,可以經由第一無線信道(nan通信信道)來發送密鑰傳輸消息180。
如果第一設備104沒有接收到觸發消息167(例如,如果尋呼消息165或者觸發消息167沒有到達目的地,或者如果第二設備106不能夠對尋呼消息165進行響應),則第一設備104不發送密鑰傳輸消息180。在該例子中,第一設備104可以在第二尋呼窗期間向第二設備106發送第二尋呼消息。用此方式,第一設備104可以不發送密鑰傳輸消息180,直到從第二設備106接收到觸發消息(例如,觸發消息167)為止。在其它實現中,可以不使用尋呼消息、觸發消息或者二者。例如,第一設備104可以生成密鑰傳輸消息180,而不發送尋呼消息165或者接收觸發消息167。在特定的實現中,在發現窗期間發送通告消息160之后,第一設備104可以生成和發送密鑰傳輸消息180。在另一種特定的實現中,第一設備104可以響應于倒計數的完成來生成和發送密鑰傳輸消息180。該倒計數可以與活動組密鑰的到期有關,并且可以在活動組密鑰的到期之前發生。
第二設備106可以被配置為向數據鏈路組的其它設備傳播第二組密鑰142。例如,響應于接收到密鑰傳輸消息180(或者候選密鑰集140中的至少一個密鑰),第二設備106可以向數據鏈路組中的相鄰設備發送尋呼消息190。為了說明起見,第二設備106與第三設備108相關聯(如通過實線184所指示的),并且第二設備106可以向第三設備108發送尋呼消息190。尋呼消息190可以指示第二設備106具有被調度向第三設備108發送的數據(其對應于候選密鑰集140的至少一個密鑰,例如,第二組密鑰142)。響應于從第三設備108接收到觸發消息(沒有示出),第二設備106可以向第三設備108轉發密鑰傳輸消息180。用此方式,第二組密鑰142可以傳播給數據鏈路組的設備。
雖然描述了單一候選組密鑰(例如,第二組密鑰142)的生成,但在一些實現中,如果沒有在特定的時間接收到與第二組密鑰142有關的通告消息,則數據鏈路組的多個設備可以被配置為生成候選組密鑰(或者候選密鑰集)。例如,設備104到110中的每一個可以被配置為從隨機值開始定時器,并且當該定時器達到特定的值時,生成新的候選組密鑰(或者新的候選密鑰集)。設備104到110中的每一個可以被配置為:響應于現有的組密鑰到期(例如,第一組密鑰132)或者候選組密鑰成為活動組密鑰(例如,第二組密鑰142),啟動定時器。如果在定時器達到特定的值之前,特定的設備接收到通告消息,則可以停止該特定設備的定時器,并且該特定的設備不生成候選組密鑰。如果定時器達到特定的值,則該特定的設備發起候選組密鑰的生成。
如果數據鏈路組中的設備接收到多個通告消息或者多個組密鑰(例如,多個候選密鑰集),則數據鏈路組中的這些設備可以基于密鑰指示符,將特定的候選組密鑰(或者特定的候選密鑰集)設置成下一個活動組密鑰(或者下一個活動密鑰集)。為了說明起見,可以基于與同其它候選組密鑰相對應的其它密鑰指示符相比,與一個特定的候選組密鑰相對應的密鑰指示符具有更高的優先級,而將該特定的候選組密鑰選擇成下一個活動組密鑰。舉一個說明性示例,可以將具有最早時間戳的候選組密鑰設置成下一個活動組密鑰。為了說明起見,第二設備106可以執行第一時間戳(例如,第一優先級)和第二時間戳(例如,第二優先級)之間的比較。第二設備106可以基于第一時間戳比第二時間戳更早,選擇與第一時間戳相對應的候選組密鑰。再舉一個例子,可以將具有最高(或者最低)哈希值的候選組密鑰設置成下一個活動組密鑰。再舉一個例子,可以將具有最高優先級mac地址的設備所生成的候選組密鑰設置成下一個活動組密鑰。
與沒有被選擇的候選組密鑰相對應的通告消息,將不被數據鏈路組中的設備進行轉發。例如,如果第二設備106在接收到通告消息160之后接收到第二通告消息,并且第二通告消息包括與另一個候選組密鑰相對應的稍后時間戳,則第二設備106不轉發第二通告消息。在一些實現中,第二設備106可以響應于接收到第二通告消息,或者響應于接收到與第二通告消息相對應的尋呼消息,來發送拒絕消息。
在一些實現中,第一設備104可以將密鑰傳輸消息180作為多播消息,傳輸給數據鏈路組的一個或多個設備。該多播消息可以包括或者對應于公共行動幀或者數據鏈路組消息。當將密鑰傳輸消息180作為多播消息進行傳輸時,第一設備104可以使用數據鏈路組的特定活動密鑰,對密鑰傳輸消息180進行編碼(或者加密)。例如,當活動密鑰集130包括被設置成該數據鏈路組的活動分發密鑰的第一分發密鑰134時,編碼器/解碼器118可以使用第一分發密鑰134對密鑰傳輸消息180進行編碼(或者加密)。使用第一分發密鑰134對密鑰傳輸消息180進行加密可以在發送密鑰傳輸消息180時提供另外的安全。為了說明起見,第一分發密鑰134可以僅僅用于對密鑰傳輸消息(例如,密鑰傳輸消息180)進行編碼和解碼(或者加密和解密),并且第一組密鑰132可以用于其它安全的組通信。由于與第一分發密鑰134相比更頻繁地使用第一組密鑰132,因此第一組密鑰132更容易受到損害(例如,被不是該數據鏈路組的一部分的設備識別)。因此,與使用第一組密鑰132向數據鏈路組的設備分發第二組密鑰142、第二分發密鑰144、或二者相比,使用第一分發密鑰134來分發第二組密鑰142、第二分發密鑰144、或二者,作為向數據鏈路組的設備進行的多播消息可能更安全。
第一設備104可以將密鑰傳輸消息180分發成多播消息,而不管第一設備104是否獲得第二組密鑰142(通過生成第二組密鑰142或者通過從數據鏈路組的另一個設備接收第二組密鑰142)。通過使用第一分發密鑰134對第二組密鑰142進行編碼(或加密),并且發送包括該編碼的第二組密鑰的多播消息,可以將該編碼的第二組密鑰(例如,第二組密鑰142)分發給數據鏈路組的一個或多個設備,而不在第一設備104和該數據鏈路組的另一個設備之間執行安全關聯過程、p2p通信或者其組合。例如,第一設備104可以發送多播消息,以便同時地將編碼的(或者加密的)第二組密鑰142分發給多個設備,而不管所述多個設備與第一設備104相關聯還是不相關聯。為了說明起見,第一設備104可以向與第一設備104相關聯的第二設備106,以及與第一設備104不相關聯的第四設備110多播編碼的(或者加密的)第二組密鑰142。因此,使用第一分發密鑰134來多播編碼的第二組密鑰(第二組密鑰142),可以減少與密鑰有關的業務和與在無線網絡102中的候選組密鑰分發有關的開銷。
另外地或替代地,第一設備104可以將密鑰傳輸消息180作為p2p通信進行傳輸。為了說明起見,在傳輸了通告消息160之后,第一設備104可以從相關聯的設備接收針對第二組密鑰142的請求。在一些實現中,針對第二組密鑰142的請求可以包括針對候選密鑰集140的請求。當第二設備106接收到通告消息160時,第二設備106可以與第一設備104相關聯,第二設備106可以響應于該通告消息160,發送針對第二組密鑰142的請求。第二設備106可以將該請求作為p2p消息進行發送。響應于該請求,第一設備104可以將密鑰傳輸消息180作為p2p消息,發送給第二設備106。在一些實現中,第一設備104可以自動地將密鑰傳輸消息180作為p2p消息,發送給與第一設備104相關聯的一個或多個設備。例如,第一設備104可以自動地將密鑰傳輸消息180作為p2p消息進行發送,而無需從相關聯的設備接收針對第二組密鑰142的請求。
在一些實現中,在向與第一設備104不相關聯的特定設備發送通告消息160之后,第一設備104可以執行安全關聯過程,以變得與該特定的設備相關聯。例如,當第四設備110接收到通告消息160時,第四設備110可以與第一設備104不相關聯。在接收到通告消息160之后,第四設備110可以發起與第一設備104的安全關聯過程,以變得與第一設備104相關聯。在第四設備110與第一設備104相關聯之后,第一設備104可以向第四設備110發送包括第二組密鑰142的p2p通信。例如,第一設備104可以自動地向第四設備110發送第二組密鑰142,或者第一設備104可以響應于從第四設備110接收到針對第二組密鑰142的請求來發送第二組密鑰142。
在特定的實現中,當從第一設備104接收到通告消息160的特定設備與第一設備104不相關聯時,該特定設備可以等待從相關聯的設備接收另一個通告消息(例如,通告消息170),直到該數據鏈路組的活動組密鑰(例如,第一組密鑰132)被設置為到期之前的預定時間為止。當檢測到該預定的時間時,該活動組密鑰的到期被認為是緊迫的。在該特定的設備從不相關聯的設備接收到通告消息160和檢測到該預定的時間之間的時間段可以稱為等待時段。在等待時段期間,該特定的設備可以等待從與該特定設備相關聯的設備接收第二通告消息,使得該特定的設備可以接收第二組密鑰142。如果該特定的設備在該等待時段期間沒有接收到第二通告消息,則該特定設備可以在檢測到該預定時間之后,發起與不相關聯的設備的安全關聯過程,使得該特定的設備可以捕獲第二組密鑰142。
為了說明起見,當第四設備110接收到通告消息160時,第四設備110可以與第一設備104不相關聯。不是響應于接收到通告消息160來發起安全關聯過程與第一設備104進行關聯,而是第四設備110可以等待從數據鏈路組中的與該第四設備110相關聯的另一個設備接收該通告消息的轉發版本(例如,通告消息170)。為了說明起見,第四設備110可以與第二設備106相關聯(如通過實線186所指示的),可以在從第一設備104接收到通告消息160之后,從第二設備106接收通告消息170。在從第二設備106接收到通告消息170之后,第四設備110可以從第二設備106接收作為p2p通信的第二組密鑰142(或者候選密鑰集140)。例如,第二設備106可以自動地或者響應于從第四設備110接收的針對第二組密鑰142的請求,向第四設備110發送第二組密鑰142。通過等待從相關聯的設備106接收另一個通告消息170,第四設備110并不響應于從第一設備104接收到通告消息160而自動地發起與第一設備104的安全關聯。
第四設備110可以等待從相關聯的設備接收第二通告消息(例如,通告消息170),直到該數據鏈路組的活動組密鑰(例如,第一組密鑰132)被設置為到期之前的預定時間為止。為了說明起見,當檢測到該預定的時間時,該活動組密鑰的到期被認為是緊迫的。如果第四設備110沒有從相關聯的設備接收到第二通告消息,則第四設備110可以發起與不相關聯的設備(例如,第一設備104)的安全關聯過程,以便接收第二組密鑰142(或者候選密鑰集140)。為了說明起見,第四設備110可以發起與第一設備104的安全關聯過程,并且在該安全關聯過程完成之后,第四設備110可以從第一設備104接收第二組密鑰142(或者候選密鑰集140)。例如,第一設備104可以自動地或者響應于從第四設備110接收的針對第二組密鑰142的請求,來向第四設備110發送第二組密鑰142。
在另一種特定的實現中,數據鏈路組中的每個設備都可以被配置為在預期活動組密鑰將到期時發起候選組密鑰的生成。為了說明起見,每個設備可以被配置為生成一個隨機值,并且當活動組密鑰的時間周期接近到期時從所生成的隨機值開始倒計數,如參照圖2所描述的。當特定的設備處的倒計數完成時,該特定的設備可以生成候選組密鑰,并且向其它設備發送通告消息。例如,第一設備104可以完成相應的倒計數,生成第二組密鑰142,并且發送通告消息160。其它設備(例如,第二設備106和第四設備110)可以響應于接收到該通告消息(例如,通告消息160)來停止它們相應的倒計數(并避免生成另外的候選組密鑰)。在接收到通告消息160或通告消息170之后,特定的設備還可以有條件地抑制(基于抑制標準)一個或多個另外的通告消息、候選組密鑰、或者其組合的傳播。例如,該抑制標準可以應用于選擇特定的候選組密鑰,其中該特定的候選組密鑰與更舊的時間戳相對應,或者由具有更高值的mac地址的設備生成,作為說明性非限制性示例。通過抑制通告消息、候選組密鑰、或者其組合,數據鏈路組可以避免將多個(沖突的)候選組密鑰設置成活動組密鑰。
在一些實現中,數據鏈路組的兩個設備可以是相鄰設備,可以是不相關聯的。例如,如圖1中所示,第一設備104可以位于第四設備110的通信范圍(例如,一跳范圍)之內,并且可以與第四設備110不相關聯(如通過虛線182所指示的)。第四設備110可以與數據鏈路組的不同設備(例如,第二設備106)相關聯(如通過實線186所指示的)。即使這些設備是不相關聯的,也可以在這些設備之間共享一些消息(例如,多播消息)。例如,當通告消息160是多播的時,第一設備104可以向第四設備110發送通告消息160。
在一些實現中,數據鏈路組中的設備可以被配置為進行等待,直到用于從數據鏈路組的其它設備接收候選組密鑰的特定時間為止。如果沒有在該特定的時間(例如,在當前組密鑰到期之前的特定時間量)接收到候選組密鑰,則設備可以被配置為與該數據鏈路組的另一個設備進行關聯,以便接收候選組密鑰。在當前組密鑰到期之前的該特定時間量可以指示或者對應于組密鑰更新窗的結束、關聯窗的開始、或者二者。該組密鑰更新窗可以包括與密鑰更新操作的執行相對應的特定時間間隔(例如,選擇特定的候選組密鑰,將該特定的候選組密鑰分發給數據鏈路組中的設備)。當第一組密鑰132被設置成活動組密鑰時,數據鏈路組中的設備可以發起倒計數。與第一組密鑰132的有效期相比,該倒計數可以具有更短的持續時間。可以對該倒計數的持續時間(或者初始倒計數值)進行選擇,使得該倒計數的到期和第一組密鑰132的到期之間的時間段,足夠用于一個設備執行與該數據鏈路組的其它設備的一個或多個關聯操作。雖然描述了倒計數,但可以使用任何形式的定時器或者定時電路,來跟蹤與該倒計數相對應的時間段。
在圖1所示出的例子中,當第一組密鑰132被設置成活動密鑰時,第四設備110可以開始倒計數(具有第一持續時間)。在其它實現中,當從第一設備104接收到通告消息160時,可以開始該倒計數,該倒計數可以與第一持續時間具有不同的持續時間。如果倒計數到期,并且第四設備110沒有接收到第二組密鑰142(例如,通過接收密鑰傳輸消息),則第四設備110可以進入“應急模式”(“panicmode”),并且嘗試與第四設備110接收通告消息的設備進行關聯。例如,第四設備110可以嘗試與第一設備104進行關聯,這是由于第四設備110從第一設備104接收到通告消息160。
為了與第一設備104進行關聯,第四設備110可以向第一設備104發送關聯請求175。關聯請求175可以識別第四設備110,并且可以指示第四設備110想要執行與第一設備104的關聯。響應于接收到該關聯請求175,第一設備104可以基于至少一種標準來判斷是否與第四設備110進行關聯。舉一個例子,該標準可以包括第一設備104當前關聯的其它設備的數量。為了說明起見,第一設備104可以被配置為與數據鏈路組的不超過門限數量的其它設備進行關聯。在該例子中,第一設備104可以判斷第一設備104當前是否與門限數量的其它設備相關聯。如果第一設備104與至少門限數量的設備相關聯,則第一設備104可以確定不與第四設備110進行關聯。如果第一設備104與小于門限數量的設備相關聯,則第一設備104可以確定與第四設備110進行關聯。
另外地或替代地,所述至少一個標準可以與“基于需求的”關聯有關。例如,第一設備104可以被配置為在“按需”基礎上與其它設備進行關聯。舉例而言,基于需求的關聯可以包括:與當前沒有同數據鏈路組中的任何其它設備相關聯的設備的關聯。再舉一個例子,可以基于活動業務會話來確定基于需求的關聯。為了說明起見,響應于確定第一設備104在即將的尋呼窗期間沒有用于第二設備106的活動業務會話,第一設備104可以與第二設備106去關聯。再舉一個例子,響應于確定第二設備106已經接收到第二組密鑰142,第一設備104可以與第二設備106去關聯。用此方式,第一設備104可以被配置為與數據鏈路組中的某些設備進行去關聯,從而與具有更大“需要”的其它設備進行關聯。
如果第一設備104確定與第四設備110進行關聯,則第一設備104可以向第四設備110發送關聯響應176。該關聯響應176可以包括用于使第四設備110能夠與第一設備104進行關聯的信息。響應于接收到關聯響應176,第四設備110可以與第一設備104進行關聯。例如,第四設備110可以執行與第一設備104的一個或多個關聯操作。在特定的實現中,所述一個或多個關聯操作可以包括2次握手、4次握手、安全信息的交換、或者其組合。在其它實現中,可以執行其它關聯操作。在關聯操作的執行期間,可以開發第一設備104和第四設備110之間的成對密鑰。
如果第一設備104確定不與第四設備110進行關聯,則第一設備104可以向第四設備110發送關聯拒絕178。該關聯拒絕178可以指示第一設備104不能夠在該時間執行與第四設備110的關聯操作。該關聯拒絕178可以指示與第一設備相關聯的設備集(例如,具有第二組密鑰142的擁有的設備集)。例如,關聯拒絕178可以指示第一設備104與第二設備106相關聯。另外地或替代地,關聯拒絕178可以指示已經接收的或者已經具有第二組密鑰142的擁有的設備集。例如,關聯拒絕178可以指示第二設備106已經接收或者已經擁有第二組密鑰142。響應于在關聯拒絕178中指示的第二設備106,第四設備110可以向第二設備106發送第二關聯請求。可以經由第一無線信道或者第二無線信道,來發送關聯請求175、關聯響應176、和關聯拒絕178。
在一些實現中,第四設備110可以被配置為繼續嘗試與第一設備104進行關聯,直到執行了關聯或者直到第一組密鑰132到期為止。例如,如果第四設備110沒有與已接收到第二組密鑰142的其它設備相關聯,則第四設備110可以向第一設備104發送第二關聯請求(沒有示出)。再舉一個例子,如果第四設備110從第二設備106接收到通告消息170,則第四設備110可以嘗試與第二設備106進行關聯。
在一些實現中,第四設備110在嘗試與第一設備104進行關聯之前,并不等待倒計數的到期。反之,第四設備110可以被配置為響應于接收到通告消息160而與第一設備104進行關聯。例如,第四設備110可以響應于從第一設備104接收到通告消息160,向第一設備104發送關聯請求175。另外地或替代地,當第四設備110與第二設備106不相關聯時,第四設備110可以響應于從第二設備106接收到通告消息170,向第二設備106發送關聯請求。第一設備104(或者第二設備106)可以判斷是否與第四設備110進行關聯,如上所述。由于第四設備110在嘗試與數據鏈路組中的其它設備進行關聯之前并不等待倒計數的到期,因此當關聯嘗試失敗時,第四設備110可以具有更多的時間與不同的設備進行關聯,從而增加第四設備110能夠與不同的設備進行關聯并且在第一組密鑰132到期之前接收第二組密鑰142的可能性。
在一些實現中,數據鏈路組的設備104到110可以將密鑰傳輸消息和候選組密鑰(或者候選密鑰集)作為單播消息,傳輸給數據鏈路組中的其它設備。在特定的實現中,可以使用4次握手在采用單播消息的數據鏈路組的兩個無關聯設備之間交換候選組密鑰(或者候選密鑰集)。這種4次握手可以包括局域網擴展認證協議(eapol)密鑰幀,其使用密鑰加密密鑰(kek)進行加密,使用密鑰確認密鑰(kck)來保護完整性。可以將kek和kck包括在成對密鑰中。eapol密鑰幀可以包括候選組密鑰,例如,第二組密鑰142。在一些實現中,eapol密鑰幀可以包括候選密鑰集140。eapol密鑰幀可以對應于或者包括在兩個無關聯設備之間的第三消息(或者通信)中。
舉一個執行4次握手的說明性示例,第一設備104和第四設備110是無關聯的,第一設備104可以向第四設備110發送第一消息。第一消息可以使第四設備110能夠生成成對密鑰。第一設備104可以從第四設備110接收第二消息,并且基于第二消息來生成成對密鑰。第一設備104可以向第四設備110發送包括eapol密鑰幀的第三消息,該eapol密鑰幀包括第二組密鑰142。該eapol密鑰幀可以基于kek進行加密,并且基于kck來保護完整性。第一設備104可以從第四設備110接收第四消息。第四消息可以包括用于指示第四設備110接收到第二組密鑰142,以及第四設備110現在與第一設備104相關聯的確認消息。
在另一個特定的實現中,可以使用組密鑰握手(例如,2次握手)來在采用單播消息的數據鏈路組的兩個關聯的設備之間交換候選組密鑰。這種組密鑰握手可以包括eapol密鑰幀,其中該eapol密鑰幀可以是加密和完整性保護的。可以將該eapol密鑰幀作為兩個關聯的設備之間的第一消息(或者通信)進行發送。舉一個執行組密鑰握手的說明性示例,第一設備104和第二設備106可以是關聯的,并且第一設備104和第二設備106可能已經擁有成對密鑰146。例如,成對密鑰146可以是在組握手之前發生的關聯操作期間生成的。成對密鑰146可以包括kek和kck。第一設備104可以向第二設備106發送包括eapol密鑰幀的第一消息,其中該eapol密鑰幀具有第二組密鑰142(或者候選密鑰集140)。該eapol密鑰幀可以基于成對密鑰146的kek進行加密,并且基于成對密鑰146的kck進行完整性保護。第一設備104可以從第二設備106接收第二消息。第二消息可以包括確認消息,并且可以指示第二設備106已接收到第二組密鑰142。
在另一個特定的實現中,密鑰傳輸消息180可以包括或者對應于nan管理幀,可以使用nan管理幀在采用單播消息的數據鏈路組的兩個設備之間交換候選組密鑰。該nan管理幀可以封裝(或者包括)eapol密鑰幀。nan管理幀、eapol密鑰幀、或者二者可以基于kek進行加密,并且基于kck來保護完整性。例如,第一設備104可以將密鑰傳輸消息180作為包括eapol密鑰幀的nan管理幀進行發送,其中該eapol密鑰幀具有候選密鑰集140的至少一個密鑰(例如,第二組密鑰142)。第一設備104可以向與第一設備104相關聯的另一個設備(例如,第二設備106)發送nan管理幀。
在另一個特定的實現中,密鑰傳輸消息180可以包括或者對應于公共行動幀,后者可以用于在采用單播消息的數據鏈路組的兩個設備之間交換候選組密鑰。該公共行動幀可以是使用臨時密鑰(tk)來保護的。該tk可以包括在成對密鑰中。可以指定該公共行動幀的特定屬性(例如,特定字段)來攜帶組密鑰。例如,可以指定公共行動幀的第一屬性攜帶組密鑰,例如,在一個或多個無線通信標準中。第一設備104可以將密鑰傳輸消息180作為公共行動幀進行發送,其在該公共行動幀的第一屬性中包括候選密鑰集140的至少一個密鑰(例如,第二組密鑰142)。可以向與第一設備104相關聯的另一個設備(例如,第二設備106)發送密鑰傳輸消息180。
在一些實現中,第一設備104并不發送通告消息(例如,通告消息160)。在這些實現中,響應于生成第二組密鑰142,第一設備104可以向數據鏈路組中的相鄰設備發送尋呼消息165。如上所述,可以在第一無線信道(nan通信信道)或者第二無線信道(數據鏈路組信道)的尋呼窗期間,發送尋呼消息165。在這些實現中,尋呼消息165包括用于指示第二組密鑰142的生成的尋呼屬性169。本文參照圖6進一步描述了尋呼屬性169的細節。在一些實現中,尋呼消息165還可以包括組id164、設備id166、密鑰指示符168、或者其組合。使用尋呼消息而不是使用通告消息(例如,通告消息160)來宣告組密鑰,可以減少第一無線信道、第二無線信道、或者二者上的業務。
響應于接收到尋呼消息165,第二設備106可以向第一設備104發送觸發消息167,如上所述。第一設備104可以響應于接收到觸發消息167,向第二設備106發送包括第二組密鑰142的密鑰傳輸消息180。在接收到第二組密鑰142之后,第二設備106可以向第三設備108發送尋呼消息,并且第二設備106和第三設備108可以交換觸發消息和密鑰傳輸消息,如參照第一設備104和第二設備106所描述的。另外,第二設備106可以響應于接收到密鑰傳輸消息180(其包括第二組密鑰142),向第一設備104發送確認(ack)(如,macack)。另外,由于尋呼消息可以是多播的并且可以是未加密的,因此與第一設備104不相關聯的相信設備(例如,第四設備110)可以接收尋呼消息165,并且可以嘗試與第一設備104進行關聯以接收與尋呼消息165相關聯的數據,例如,候選密鑰集140的至少一個密鑰(例如,第二組密鑰142)。
可以在多個尋呼窗期間對尋呼消息165進行重新發送或者重復。例如,第一設備104可以在多個尋呼窗期間發送尋呼消息165,直到第一組密鑰132到期為止。在一些實現中,如果處于與第一設備104的關聯狀態的每個相鄰設備都接收到第二組密鑰142,則第一設備104可以在第一組密鑰132到期之前停止發送尋呼消息165。為了說明起見,第一設備104可以在多個尋呼窗期間發送尋呼消息165,直到第二設備106接收到第二組密鑰142為止。第一設備104可以基于響應于發送了密鑰傳輸消息180而從第二設備106接收到ack,來確定第二設備106已接收到第二組密鑰142。因此,如果第一設備104從數據鏈路組的每個相鄰設備都接收到ack,則第一設備104可以停止發送尋呼消息165。
另外地或替代地,組密鑰(活動密鑰集130和候選密鑰集140)可以與密鑰索引、密鑰識別號、或二者相關聯。密鑰索引、密鑰識別號、或二者可以包括在nan服務發現幀中,例如,包括在服務信息字段、密鑰傳輸消息180、或二者中。密鑰索引、密鑰識別號、或二者可以指示用于對該數據鏈路組的業務進行加密的活動組密鑰。密鑰識別號可以包括能夠用于識別組密鑰的數字值或者字母數字串。密鑰索引可以包括不活動組密鑰和活動組密鑰的表。在一些實現中,密鑰索引的表可以包括用于每個不活動組密鑰和活動組密鑰的密鑰識別號。
密鑰索引、密鑰識別號、或者其組合可以使數據鏈路組的設備能夠確定活動組密鑰。例如,離開特定的數據鏈路組并且稍后重新加入該特定的數據鏈路組的設備,可以基于密鑰索引、密鑰識別號、或者其組合來判斷先前的活動組密鑰是否仍然有效。如果先前的活動組密鑰仍然有效,則該設備不需要向數據鏈路組的另一個設備進行認證來接收該數據鏈路組的活動組密鑰。再舉一個例子,在從第一組密鑰132到第二組密鑰142作為活動組密鑰的轉換期間,設備可以指示該設備正在使用哪個組密鑰(例如,第一組密鑰132或者第二組密鑰142)來對數據進行加密。例如,第一設備104可以在消息中包括與第一組密鑰132相關聯的密鑰識別號,其中第一設備104正在使用第一組密鑰132對數據進行加密。
雖然參照相應的設備來描述了系統100的某些操作和功能,但設備104到110中的每一個可以被配置為執行參照設備104到110中的另一個所描述的一個或多個操作、功能或者其組合。例如,設備104到110中的每一個可以包括相應的密鑰邏輯和相應的消息邏輯,如分別參照第一設備104的密鑰邏輯112和消息邏輯114所描述的。另外地或替代地,雖然參照第二組密鑰142的分發來描述了一個或多個示例,但這些示例可以應用于候選密鑰集140的一個或多個密鑰的分發。
所公開的方面中的至少一個所提供的一種優點是無線網絡中的與密鑰有關業務和開銷的減少。例如,當nan的設備處于活動操作模式(例如,蘇醒)時,可以通過在尋呼窗或者發現窗期間發送通告消息160來減少與密鑰有關的業務。在尋呼窗或者發現窗期間發送通告消息160,可以增加第一設備104的相鄰設備接收到通告消息160的可能性,這可以減少重傳。再舉一個例子,當數據鏈路組中的設備處于活動操作模式時,可以通過在尋呼窗期間發送具有尋呼屬性169的尋呼消息165來減少與密鑰有關的業務。尋呼屬性169可以指示被調度在即將的數據窗期間從特定的設備接收業務的多個設備,并且可以減少用于組密鑰傳播所需要的尋呼消息的數量。
另一種示例性優點在于:接收到通告消息160(或者其轉發版本)的設備可以實現一個等待時段,直到在活動組密鑰到期之前的預定時間為止。在該等待時段期間,接收到通告消息160(或者其轉發版本)的特定設備可以放棄(避免)發起安全關聯過程來獲得與通告消息160(或者其轉發版本)相對應的第二組密鑰142。通過放棄為了捕獲第二組密鑰142而與另一個設備進行關聯,可以減少與為了獲得第二組密鑰142而執行安全關聯過程的一個或多個設備相對應的業務的量。再舉一個例子,可以使用活動分發密鑰(例如,第一分發密鑰134)對第二組密鑰142進行編碼(或者加密),并且可以向數據鏈路組的一個或多個設備發送(例如,多播)該編碼的第二組密鑰。通過發送編碼的第二組密鑰,可以在無需在具有第二組密鑰142的另一個設備和不具有第二組密鑰142的數據鏈路組的設備之間執行安全關聯過程、p2p通信或者其組合的情況下,向數據鏈路組的一個或多個設備分發第二組密鑰142。
圖2是生成候選組密鑰的系統200的具體說明性實現。系統200包括設備202,例如,無線網絡中包括的設備。設備202可以包括或者對應于圖1的無線網絡102的設備104到110中的一個。
設備202可以包括計數器204、密鑰發生器206、密鑰存儲器208、接收機210和發射機212。接收機210和發射機212可以分別被配置為從無線網絡的其它設備接收一個或多個信號,以及向無線網絡的其它設備發送一個或多個信號。在一些實現中,接收機210和發射機212可以包括單一組件,例如,收發機。密鑰存儲器208可以包括或者對應于存儲設備(例如,存儲器)。計數器204可以耦合到密鑰發生器206和接收機210,密鑰發生器206可以耦合到密鑰存儲器208和發射機212,并且密鑰存儲器208可以耦合到接收機210和發射機212。在一些實現中,計數器204可以包括或者對應于定時器。
計數器204可以被配置為在組密鑰214的生成之前,執行從隨機值220的倒計數,如本文所進一步描述的。密鑰發生器206可以被配置為生成諸如組密鑰214、分發密鑰(沒有示出)、組完整性密鑰、或者其組合之類的一個或多個密鑰,并且向密鑰存儲器208和發射機212提供所述一個或多個密鑰。例如,密鑰發生器可以生成組密鑰214,并且向密鑰存儲器208和發射機212提供組密鑰214。組密鑰214可以包括或者對應于圖1的第一組密鑰132或者第二組密鑰142。分發密鑰可以包括或者對應于圖1的第一分發密鑰134或者第二分發密鑰144。密鑰發生器206可以包括硬件、軟件或者其組合。在一些實現中,密鑰發生器206可以包括或者對應于處理器,其中該處理器配置為執行存儲器中包括的一個或多個指令以生成組密鑰214。
密鑰存儲器208可以被配置為存儲諸如組密鑰214、分發密鑰、成對密鑰、組完整性密鑰、或者其組合之類的一個或多個密鑰。再舉一個例子,密鑰存儲器208可以存儲一個或多個先前的組密鑰,例如,數據鏈路組的一個或多個到期組密鑰、或者由另一個設備生成并在設備202處經由接收機210接收的一個或多個候選組密鑰。
在操作期間,密鑰發生器206可以發起組密鑰214的形成。在特定的實現中,密鑰存儲器208可以存儲先前的組密鑰(例如,活動組密鑰),密鑰發生器406可以基于檢測到活動組密鑰的到期之前的特定預定時間量(例如,被設置成活動組密鑰的先前組密鑰接近到期),來發起組密鑰214的形成。例如,可以基于與活動組密鑰相關聯的定時信息,通過計數器204、密鑰發生器206或者其組合來檢測該特定的預定的時間量。可以對該特定的預定時間量進行選擇,使得在活動組密鑰到期之前剩余的時間量足夠用于生成候選組密鑰,并且在活動組密鑰到期之前傳播給數據鏈路組的每個設備。
此外,圖2還在時序圖230中,示出了與數據鏈路組的組密鑰(例如,活動組密鑰)的到期相對應的時序。如圖所示,在時間t1處生成第一組密鑰(密鑰1)(或者可以發起生成)。在時間t1或者時間t1之后不久,將第一組密鑰(密鑰1)設置成活動組密鑰。可以生成與第一組密鑰(密鑰1)相對應的時間戳,并且在數據鏈路組的設備之間發送第一組密鑰(密鑰1)時包括在具有第一組密鑰(密鑰1)的消息(例如,圖1的密鑰傳輸消息180)中。
在時間t2處,發起第二組密鑰(密鑰2)的生成。在一些實現中,時間t2可以與第一組密鑰(密鑰1)到期之前的特定的預定時間量(或者在第一組密鑰(密鑰1)的生成之后的某個時間量)相關聯。在時間t3,第一組密鑰(密鑰1)到期。雖然示出成在時間t2處生成,但在其它示例中,可以在時間t2處發起第二組密鑰(密鑰2)的生成,并且第二組密鑰(密鑰2)的生成可以在時間t2和時間t3之間的某個時間發生。在生成第二組密鑰(密鑰2)之后,可以在第一組密鑰(密鑰1)的到期之前將第二組密鑰(密鑰2)提供給數據鏈路組的一個或多個設備。第二組密鑰(密鑰2)可以是第一候選組密鑰,并且可以對應于圖1的候選密鑰集140。第二組密鑰(密鑰2)可以在時間t2和時間t3之間的時間段期間成為活動組密鑰。在特定的實現中,在時間t3處,將第二組密鑰(密鑰2)設置成活動組密鑰。
在時間t4處,發起第三組密鑰(密鑰3)的生成,其中時間t4可以與第二組密鑰(密鑰2)到期之前的特定的預定時間量相對應。在時間t5第二組密鑰(密鑰2)可能到期,并且可以將第三組密鑰(密鑰3)設置成活動組密鑰。雖然沒有示出,但可以在時間t6處,在第三組密鑰(密鑰3)到期之前生成第四組密鑰。另外,雖然將該特定的預定時間量描述成每個活動組密鑰到期之前的相同的時間量,但在其它實現中,該特定的預定時間量可以是每個活動組密鑰到期之前的不同的時間量。第三組密鑰(密鑰3)可以是第二候選組密鑰,并且可以對應于圖1的候選密鑰集140。
參照設備202,響應于檢測到活動組密鑰到期之前的該特定的預定時間量,密鑰發生器206可以確定發起組密鑰214的生成。密鑰發生器206可以通過使計數器204發起從隨機值220的倒計數(或者發起計數器向上計數到隨機值220),來發起組密鑰214的生成。可以在設備202處存儲的某個特定范圍的值之內生成(或者選擇)隨機值220。例如,在制造期間,可以使設備202編程有用于指示該特定的值范圍(例如,與一個或多個標準相對應的值范圍)的數據。再舉一個例子,設備202可以在該設備202加入到數據鏈路組時執行的安全關聯過程(例如,關聯過程)期間,從該數據鏈路組的另一個設備接收用于指示該特定的值范圍的數據。
當倒計數達到零時(或者當向上計數到隨機值220時),密鑰發生器206可以生成組密鑰214,并將該組密鑰214提供給密鑰存儲器208、發射機212或者其組合。另外,密鑰發生器206可以生成或者發起通告消息(例如,圖1的通告消息160)的生成,并且密鑰發生器206可以使得在傳輸組密鑰214之前由發射機212發送通告消息。組密鑰214可以作為活動組密鑰存儲在密鑰存儲器208中,以便用于對從設備202向數據鏈路組的其它設備發送的組消息進行加密,對設備202從數據鏈路組的其它設備接收的組消息進行解密,或者二者的組合。另外地或替代地,組密鑰214可以作為候選組密鑰存儲在密鑰存儲器208中,并且可以稍后被設置成活動組密鑰。發射機212可以向該組中的一個或多個其它設備發送組密鑰214(和通告消息)(例如,經由單跳或多跳路由)。在一些實現中,可以在倒計數達到零(或者在向上計數達到隨機值220)之后并且在組密鑰214生成之前發送通告消息。
密鑰發生器206可以被配置為:當在組密鑰214的生成之前接收到另一個通告消息或者另一個組密鑰時,防止(例如,禁止)生成組密鑰214。例如,如果接收機210接收到另一個通告消息或者另一個候選組密鑰(例如,不同設備生成的通告消息、不同設備生成的候選組密鑰或者其組合),計數器204可以停止倒計數。另外,如果已生成了組密鑰214,并且設備202從另一個設備接收到指示已生成另一個組密鑰的特定通告消息,則設備202可以應用抑制標準來判斷在現有的活動組密鑰到期之前,將組密鑰214或者所述其它組密鑰中的哪一個用作潛在的“下一個”活動組密鑰。例如,可以應用該抑制標準以選擇與更早的時間戳相對應的特定的候選組密鑰,或者選擇具有更高值的mac地址的設備所生成的候選組密鑰,作為說明性的非限制性示例。
雖然圖2示出了單一設備202,但數據鏈路組中的每個設備都可以類似地配置成設備202。因此,數據鏈路組中的任何設備都可以生成將被該數據鏈路組中的其它設備使用的相應的候選組密鑰。通過使數據鏈路組中的每個設備都能生成相應的候選組密鑰,數據鏈路組能夠在無需具有單一中央設備的情況下交換數據,其中所述單一中央設備被配置為生成由數據鏈路組中的設備進行使用的候選組密鑰。在無線網絡中使用單一中央設備可能是非期望的,這是由于每個設備(其包括中央設備)都可能在任何時間離開該無線網絡。
圖3是在數據鏈路組中傳輸的消息的時序圖300的特定說明性實現。該數據鏈路組可以包括或者對應于:包括設備104到110的圖1的數據鏈路組。該數據鏈路組可以包括多個設備,例如,第一設備(sta1)、第二設備(sta2)和第三設備(sta3)。例如,第一設備、第二設備和第三設備可以包括或者對應于圖1的設備104到110或者圖2的設備202。
時序圖300描繪了nan通信信道302和數據鏈路組信道304。nan通信信道302包括多個發現窗,例如,第一發現窗310和第二發現窗312。數據鏈路組信道304包括多個組傳輸窗320到326。在一些實現中,組傳輸窗320到326關于nan通信信道302進行發生。例如,當沒有數據鏈路組信道304時,組傳輸窗320到326關于nan通信信道302進行發生,并且可能位于第一發現窗310和第二發現窗312之間。
在其它實現中,數據鏈路組信道304可以包括發現窗(類似于發現窗310、312),組傳輸窗320到326在數據鏈路組信道304的兩個發現窗之間發生。在一些實現中,除了nan通信信道302的第一發現窗310和第二發現窗312之外,可以有數據鏈路組信道304的發現窗。在其它實現中,不存在nan通信信道302。在這些實現中,數據鏈路組信道304可以具有相應的發現窗,也可以不具有相應的發現窗。
在一些實現中,數據鏈路組可以包括在nan中,并且數據鏈路組中的設備可以經由nan通信信道302進行通信。可以經由nan的主設備或者nan的一個特定組的主設備所傳輸的一個或多個同步信標,對nan中的設備進行同步。例如,數據鏈路組中的設備里的一個可以操作成主設備,并且可以經由nan通信信道302向nan中包括的其它設備廣播一個或多個同步信標。
另外地或替代地,數據鏈路組中包括的設備可以經由數據鏈路組信道304進行通信。數據鏈路組中的設備可以經由該數據鏈路組的主設備或者包括該數據鏈路組的nan的主設備所傳輸的一個或多個同步信標進行同步。例如,數據鏈路組中的設備里的一個可以操作成主設備,并且可以經由nan通信信道302、數據鏈路組信道304或者二者向數據鏈路組中的其它設備、nan中的其它設備或者其組合廣播一個或多個同步信標。
可以對這些設備進行同步,以檢測與數據鏈路組信道304相對應的組傳輸窗。例如,數據鏈路組中的設備里的每一個可以具有同步的時鐘(如ieee802.11s標準、wi-fi聯盟標準或者其組合所描述的),以便正確地確定組傳輸窗、尋呼窗、數據路徑窗或者其組合的開始和結束,如本文所進一步描述的。組傳輸窗可以包括第一組傳輸窗320、第二組傳輸窗322、第三組傳輸窗324和第四組傳輸窗326。數據路徑傳輸窗中的每一個可以包括相應的尋呼窗和相應的數據窗。為了說明起見,第一組傳輸窗320可以包括第一尋呼窗332和第一數據窗334,第二組傳輸窗322可以包括第二尋呼窗342和第二數據窗344,第三組傳輸窗324可以包括第三尋呼窗352和第三數據窗354,并且第四組傳輸窗326可以包括第四尋呼窗362和第四數據窗364。
在一些實現中,每個組傳輸窗與nan通信信道的發現窗(例如,第一發現窗310)具有一個偏移。設備可以基于與第一發現窗310的偏移,確定組傳輸窗、尋呼窗或者數據路徑窗的開始或者結束。第一發現窗310和第二發現窗312之間的持續時間可以包括或者對應于組密鑰更新窗。
在發現窗期間,數據鏈路組中的每一個設備可以是蘇醒的(例如,不處于省電模式、低功率模式或者休眠模式),可以監測信標、消息或者二者。在一些實現中,這些信標、消息或二者可以指示在后續數據窗期間將發送業務。在發現窗期間發送的信標、消息或者其組合可以是安全的(例如,編碼的或者加密的)或者非安全的(例如,未編碼或者未加密的)。當在發現窗期間發送安全信標、安全消息或二者時,可以使用諸如活動組密鑰、活動分發密鑰或者完整性組密鑰之類的密鑰,對安全信標、安全消息或二者進行編碼。例如,活動組密鑰和活動分發密鑰可以分別包括或者對應于圖1的第一組密鑰132和圖1的第一分發密鑰134。該完整性組密鑰可以包括或者對應于圖1的完整性組密鑰。如果特定的設備基于在發現窗期間接收的信標、消息或二者而確定該特定的設備可以接收數據,則該特定的設備可以在后續數據窗期間保持蘇醒。如果該特定的設備在發現窗期間沒有接收到信標、消息或二者,則該特定的設備在后續數據窗期間“進入休眠”(例如,進入休眠模式或者省電模式)。
在尋呼窗期間,數據鏈路組中的每一個設備可以是蘇醒的(例如,不處于省電模式、低功率模式或者休眠模式),可以監測信標、消息或者二者。在一些實現中,這些信標、消息或二者可以指示在后續數據窗期間將發送業務。在尋呼窗期間發送的信標、消息或者其組合可以是安全的(例如,編碼的或者加密的)或者非安全的(例如,未編碼或者未加密的)。當在尋呼窗期間發送安全信標、安全消息或二者時,可以使用諸如活動組密鑰、活動分發密鑰或者成對密鑰之類的密鑰,對安全信標、安全消息或二者進行編碼。例如,活動組密鑰和活動分發密鑰可以分別包括或者對應于圖1的第一組密鑰132和圖1的第一分發密鑰134。該成對密鑰可以包括或者對應于圖1的成對密鑰146。如果特定的設備基于在尋呼窗期間接收的信標、消息或者其組合而確定其可以接收數據,則該特定的設備可以在后續數據窗期間保持蘇醒。如果該特定的設備在尋呼窗期間沒有接收到信標、消息或二者,則該特定的設備在后續數據窗期間“進入休眠”(例如,進入休眠模式或者省電模式)。
參見第一組傳輸窗320的第一尋呼窗332,第一設備可以經由數據鏈路組信道304向數據鏈路組中的一個或多個設備發送通告消息336。該通告消息336可以指示第一設備具有要分發給該數據鏈路組中的設備的候選組密鑰(例如,圖1的第二組密鑰142或者圖2的組密鑰214)。例如,通告消息336可以包括或者對應于圖1的通告消息160或者圖1的通告消息170。響應于通告消息336,第二設備可以向第一設備發送用于請求候選組密鑰的請求338。雖然將請求338示出成在與通告消息336相同的尋呼窗期間進行發送,但在其它實現中,可以在稍后的尋呼窗或者發現窗期間,從第二設備發送該請求338。
在第一數據窗334期間,響應于請求338,第一設備和第二設備可以執行p2p通信,以使第一設備能夠向第二設備發送候選組密鑰。數據鏈路組中的其它設備在第一數據窗334期間可以是不蘇醒的(例如,處于休眠模式或者省電模式)。
在第二尋呼窗342期間,第二設備可以經由數據鏈路組信道304向數據鏈路組中的一個或多個設備發送通告消息346。例如,該通告消息346可以是基于第一設備發出的通告消息336,或者可以是第一設備發出的通告消息336的轉發版本。響應于通告消息346,第三設備可以向第二設備發送用于請求候選組密鑰的請求348。在第二數據窗344期間,第二設備和第三設備可以執行p2p通信,以使第二設備能夠向第三設備發送候選組密鑰。數據鏈路組中的其它設備(例如,第一設備)在第二數據窗344期間可以是不蘇醒的(例如,處于休眠模式或者省電模式)。
在第三尋呼窗352期間,不傳輸信標或者消息。因此,在第三數據窗354期間,數據鏈路組中的所有設備都是不蘇醒的。在第四尋呼窗362期間,第一設備可以向數據鏈路組中的一個或多個設備發送多播通告消息366。因此,接收到該通告消息366的數據鏈路組的所有設備都可以在第四數據窗364期間蘇醒,以使第一設備能夠向數據鏈路組中的其它設備多播消息。
因此,圖3示出了設備如何在尋呼窗或發現窗期間發送信標、消息或者其組合,以向數據鏈路組中的其它設備通知將發送數據業務。通過向其它設備通知將發送數據業務,不是預期將接收該數據業務的一個或多個設備在數據窗期間將不蘇醒(例如,進入休眠模式或者省電模式),因此節省功率。
參見圖4,該圖示出了第一代表性設備402和第二代表性設備404之間的通信的方法400的說明性實現。通過梯形圖來示出了方法400。第一設備402和第二設備404可以包括在同一個數據鏈路組(例如,nan的同一個數據鏈路組)中。例如,第一設備402和第二設備404可以包括或者對應于圖1的設備104到110、圖2的設備202或者參照圖3所描述的設備。雖然將數據鏈路組描述成包括兩個設備(例如,第一設備402和第二設備404),但在其它實現中,數據鏈路組可以包括兩個以上的設備。
在412處,第一設備402可以將第一組密鑰和第一分發密鑰設置成第一設備402的第一活動密鑰(例如,第一活動密鑰集)。第一組密鑰和第一分發密鑰可以分別包括或者對應于圖1的第一組密鑰132和第一分發密鑰134。在414處,第二設備404可以將第一組密鑰和第一分發密鑰設置成第二設備404的第二活動密鑰(例如,第二活動密鑰集)。在第二設備404設置第二活動密鑰之前、之后或者同時,第一設備402可以設置第一活動密鑰。
在422處,第一設備402可以使用第一隨機值來發起第一倒計數,并且在424處,第二設備404可以使用第二隨機值來發起第二倒計數。例如,第一隨機值、第二隨機值或二者可以包括或對應于圖2的隨機值220。第一倒計數可以對應于在第一設備402處執行的候選組密鑰(例如,候選密鑰集)生成過程,并且第二倒計數可以對應于在第二設備404處執行的候選組密鑰生成過程。在第二設備404發起第二倒計數之前、之后或者同時,第一設備402可以發起第一倒計數。
在432處,第一設備402可以檢測第一倒計數的結束,生成第二組密鑰和第二分發密鑰。例如,第一設備402可以基于計數器(例如,圖2的計數器204)的值來檢測第一倒計數的結束。第二組密鑰可以包括或者對應于圖1的第二組密鑰142或者圖2的組密鑰214。第二分發密鑰可以包括或者對應于圖1的第二分發密鑰144。為了生成第二組密鑰和第二分發密鑰,第一設備402可以包括一個或多個密鑰發生器,例如,圖1的密鑰邏輯112或者圖2的密鑰發生器206。
在433處,第一設備402可以向第二設備404發送通告消息。例如,該通告消息可以包括或者對應于圖1的通告消息160。該通告消息可以向第二設備404指示:第一設備402具有第二組密鑰要進行分發。在一些實現中,該通告消息可以包括多播消息,例如,多播業務通告消息。雖然將通告消息描述成在生成第二組密鑰之后進行發送,但在其它實現中,可以在檢測到第一倒計數的結束之后并且在生成第二組密鑰之前發送該通告消息。
在434處,第二設備434可以終止第二倒計數。例如,第二設備434可以響應于從第一設備402接收到通告消息,抑制候選組密鑰生成過程。
在442處,第一設備402可以使用第一分發密鑰,對第二組密鑰和第二分發密鑰進行編碼(或者加密)。在443處,第一設備402可以向第二設備404發送密鑰傳輸消息。例如,該密鑰傳輸消息可以包括或者對應于圖1的密鑰傳輸消息180。該密鑰傳輸消息可以包括編碼的(或者加密的)第二組密鑰和編碼的(或者加密的)第二分發密鑰。在一些實現中,第一設備402可以將密鑰傳輸消息作為多播消息,發送給第二設備404,其中,數據鏈路組中的與第一設備402相關聯或者不相關聯的設備可以接收該多播消息。雖然將編碼的(或者加密的)第二組密鑰和編碼的(或者加密的)第二分發密鑰描述成包括在單一密鑰傳輸消息中,但在其它實現中,可以利用不同的消息來發送編碼的(或者加密的)第二組密鑰和編碼的(或者加密的)第二分發密鑰。
在444處,第二設備404可以使用第一分發密鑰,對編碼的(或者加密的)第二組密鑰和編碼的(或者加密的)第二分發密鑰進行解碼(或者解密)。在452處,第一設備402可以將第二組密鑰和第二分發密鑰設置成第一活動密鑰,在454處,第二設備404可以將第二組密鑰和第二分發密鑰設置成第二活動密鑰。雖然描述成使用分發密鑰,但在其它實現中,可以不使用分發密鑰來對候選組密鑰進行編碼(或者加密)。例如,第一設備402可以基于第一組密鑰,對第二組密鑰進行編碼(或者加密)。
通過使用第二的第一分發密鑰對第二組密鑰進行編碼(或者加密),第一設備402可以對第二組密鑰進行編碼(或者加密),并且將第二組密鑰作為多播消息分發給數據鏈路組的一個或多個設備(例如,第二設備404)。由于第一分發密鑰是數據鏈路組的每個設備(例如,第二設備404)都已知的,因此可以使用多播消息直接向所述一個或多個設備發送編碼的(或者加密的)第二組密鑰,而不管所述一個或多個設備與第一設備402相關聯,還是與第一設備402不相關聯。因此,第一設備不會為了分發第二組密鑰,而與數據鏈路組中的其它設備執行另外的安全關聯過程、p2p通信或者其組合。因此,與不使用分發密鑰來分發第二組密鑰相比,當數據鏈路組使用分發密鑰時,可以減少用于分發第二組密鑰的數據業務的量。
參見圖5,該圖描述了用于示出數據鏈路組中的通信的特定說明性時序圖500。圖5示出了數據鏈路組的生命期和組密鑰(例如,活動組密鑰)的到期。可以發起第一組密鑰(密鑰1)的生成,或者在時間t0(沒有示出)生成第一組密鑰(密鑰1)。至少參照圖2描述了第一組密鑰(密鑰1)的生成。可以生成與第一組密鑰(密鑰1)相對應的時間戳,并且包括在消息(例如,圖1的密鑰傳輸消息180)中。在特定的實現中,密鑰標識符143可以包括該時間戳。當在與第一組密鑰(密鑰1)相對應的數據鏈路組的設備之間發送第一組密鑰(密鑰1)時,可以將該時間戳與第一組密鑰(密鑰1)一起包括在消息中。如圖所示,在時間t1,密鑰1成為活動密鑰。數據鏈路組的設備可以在時間t1開始倒計數。該倒計數可以指示第一組密鑰(密鑰1)的壽命、直到關聯窗的時間段、或者其它時間信息。雖然描述了單一的倒計數,但在一些實現中,可以使用多個倒計數。在其它實現中,該倒計數可以開始于現有時間(例如,與設備接收到通告消息相對應的時間)。
在開始于時間t2并且結束于時間t3的發現窗期間,數據鏈路組的一個設備發送了與第二組密鑰(密鑰2)相對應的通告消息510。可以是響應于數據鏈路組的一個設備生成了第二組密鑰(密鑰2),而發送了該通告消息510。該通告消息510可以包括或者對應于圖1的通告消息160、通告消息170或者其組合。雖然描述成在發現窗期間發送通告消息,但在其它實現中,可以通過在數據鏈路組的尋呼窗期間發送的尋呼消息來通告第二組密鑰(密鑰2),如參照圖1和圖3所描述的。
在特定的設備發送了通告消息510之后,該特定的設備可以發送尋呼消息和密鑰傳輸消息,以便向數據鏈路組的其它設備分發第二組密鑰(密鑰2),如參照圖1所描述的。另外,接收到第二組密鑰(密鑰2)的設備也可以向其它設備傳播該第二組密鑰(密鑰2),使得第二組密鑰(密鑰2)傳播遍及整個數據鏈路組。但是,數據鏈路組的一個或多個設備可能沒有在時間t4處發生的關聯窗的開始處接收到第二組密鑰(密鑰2)。例如,一個設備可能與密鑰發生器設備相距多跳并且第二組密鑰(密鑰2)可能還沒有到達該設備,或者該設備與該特定的設備不相關聯,并且該特定的設備在關聯窗的開始時還沒有向該設備發送第二組密鑰(密鑰2)。該關聯窗可以對應于:一個或多個設備嘗試與數據鏈路組中的具有候選組密鑰(密鑰2)的設備(例如,圖1中的第一設備104)進行關聯的時間。
該關聯窗可以開始于數據鏈路組中的每個設備都已知的預定時間(關聯門限時間)。該關聯窗可以發生在第一組密鑰(密鑰1)的生命期到期(在時間t6處)之前,并且可以發生在將第二組密鑰(密鑰2)設置成活動組密鑰(在時間t6處或之前)之前。在特定的實現中,在諸如ieee802.11標準、wi-fi聯盟標準、nan標準或者其組合之類的無線通信標準中,規定了所述關聯門限時間。在一些實現中,可以通過密鑰傳輸消息(例如,圖1的密鑰傳輸消息180)來指示該關聯門限時間。例如,可以通過密鑰標識符143來指示該關聯門限時間。在其它實現中,數據鏈路組中的設備可以協商該關聯門限時間。
在關聯窗期間,一個或多個設備可以執行關聯操作520。舉一個說明性示例,參見圖1,第四設備110可以向第一設備104發送關聯請求175,并且第一設備104可以在關聯窗期間向第四設備110發送關聯響應176或者關聯拒絕178。在時間t5處,nan的第二發現窗開始。可以在第二發現窗期間發送一個或多個通告消息。在時間t6處,第二發現窗結束。在一些實現中,關聯窗在時間t6處結束,并且其包括第二發現窗,如圖5中所示。在其它實現中,關聯窗可以在時間t5處結束。
從t2到t6的時間段可以對應于組密鑰更新窗。該組密鑰更新窗可以對應于:數據鏈路組的一個或多個設備向該數據鏈路組的設備分發候選組密鑰(例如,第二組密鑰(密鑰2))的時間周期。可以在組密鑰更新窗期間,在數據鏈路組的設備之間發送包括第二組密鑰(密鑰2)的密鑰傳輸消息(沒有示出)。例如,參見圖1,可以向數據鏈路組中的設備發送密鑰傳輸消息180。雖然描述成位于第一發現窗的開始和第二發現窗的結束之間,但組密鑰更新窗可以發生在多個發現窗之間。例如,可以在多個發現窗期間發送(或者重新發送)通告消息510。在多個發現窗期間發送通告消息510可以增加數據鏈路組中的每個設備接收到該通告消息510的可能性。
在時間t7處,可以發起第三組密鑰(密鑰3)的生成,其中時間t7可以對應于第二組密鑰(密鑰2)到期之前的特定的預定時間量。第二組密鑰(密鑰2)可以在時間t8處到期。在一些實現中,時間t2和時間t6之間的持續時間與時間t7和時間t8之間的持續時間相同。在其它實現中,時間t2和時間t6之間的持續時間與時間t7和時間t8之間的持續時間不同。在一些實現中,第一組密鑰(密鑰1)、第二組密鑰(密鑰2)和第三組密鑰(密鑰3)具有相同的生命期。在其它實現中,第一組密鑰(密鑰1)、第二組密鑰(密鑰2)和第三組密鑰(密鑰3)具有不同的生命期。
因此,圖5描述了與組密鑰有關的時序以及與通告消息有關的時序。在發現窗期間發送通告消息,可以增加數據鏈路組中的設備工作在活動操作模式,并且能夠接收到該通告消息的可能性。另外,截止關聯窗的開始都沒有接收到候選組密鑰(例如,潛在的“下一個”活動組密鑰)的一個或多個設備,可以具有用于與其它設備執行關聯操作的指定時間。該關聯操作可以使設備與具有候選組密鑰的其它設備進行關聯,從而使該設備能夠接收候選組密鑰。可以將關聯窗的持續時間設置為實現目標概率,其中在該目標概率下,數據鏈路組的每個設備有時間與具有候選組密鑰的設備進行關聯。
參見圖6,該圖描述了說明性尋呼屬性600。尋呼屬性600可以包括在尋呼消息中。在特定的實現中,尋呼屬性600可以包括或者對應于圖1的尋呼屬性169。雖然在圖6中將尋呼屬性600描述成包括特定的字段,但該說明并不是限制性的。在其它實現中,可以以不同的順序來排列尋呼屬性600的字段,與圖6中所示出的相比,尋呼屬性600可以包括更少的字段或者更多的字段。
尋呼屬性600可以包括屬性id字段602。尋呼屬性600可以包括長度字段604,后者包括用于標識該尋呼屬性600的長度的值。此外,尋呼屬性600還可以包括數據鏈路組id字段606,后者包括用于標識數據鏈路組的值。此外,數據鏈路組id字段606還可以稱為nan數據鏈路(ndl)標識符。
此外,尋呼屬性600還包括尋呼控制字段608和業務指示符或組密鑰發生器id字段610。尋呼屬性600可選地包括業務類型指示符612。尋呼控制字段608指示與尋呼屬性600有關的信息。尋呼控制字段608的第一組比特620可以指示該尋呼屬性600是包括業務指示符還是組密鑰發生器id,如本文所進一步描述的。另外,如果在尋呼屬性600中包括業務指示符,則第一組比特620可以指示該業務指示符的類型,如本文所進一步描述的。在特定的實現中,第一組比特620包括三個比特。尋呼控制字段608的第二組比特622可以指示在該尋呼屬性600中是否包括業務類型指示符612。可以保留尋呼控制字段608的第三組比特624。在其它實現中,可以對尋呼控制字段608中的比特進行不同地劃分。
為了說明第一組比特620所提供的指示,如果第一組比特620具有第一特定的值,則被調度為由發送該尋呼消息(其包括尋呼屬性600)的設備進行傳輸的數據是多播數據。在特定的實現中,如果該數據是多播數據,則可以在尋呼屬性600中不包括業務指示符或者組密鑰發生器id字段610。在該情況下,接收到包括尋呼屬性600的尋呼消息的每個設備可以基于檢測到尋呼控制字段608的第一組比特620具有第一特定的值,而保持在活動操作模式。如果第一組比特620具有第二特定的值、第三特定的值或者第四特定的值,則業務指示符或者組密鑰發生器id字段610包括業務指示符。如果第一組比特620具有第二特定的值,則該數據可以是單播數據,并且可以通過業務指示符圖(tim)來表示業務指示符。如果第一組比特620具有第三特定的值,則該數據可以是單播數據,可以通過bloom過濾器來表示業務指示符。如果第一組比特620具有第四特定的值,則該數據可以是單播數據,并且可以通過mac地址列表來表示業務指示符。如果第一組比特620具有第五特定的值,則業務指示符或者組密鑰發生器id字段610包括組密鑰發生器id。在該情況下,第一組比特620指示生成候選組密鑰的設備的標識符。在該情況下,組密鑰發生器id包括生成候選組密鑰的設備的mac地址(或者其它標識符),并且如果在尋呼屬性600中包括業務類型指示符612,則業務類型指示符612指示最高優先級業務類型。例如,業務類型指示符612可以指示與該業務相對應的最高服務質量(qos)類別。
如果尋呼屬性600包括業務指示符,則該業務指示符具有可變大小,指示被調度在即將的數據窗期間,從特定的設備接收業務的設備子集。可以通過tim、bloom過濾器或者mac地址列表,來表示該業務指示符。該業務指示符可以標識被調度接收業務(例如,來自于圖1的第一設備104的業務)的每個設備。在一些實現中,尋呼消息可以包括多個尋呼屬性600。例如,尋呼消息可以包括:用于指示組密鑰發生器id的第一尋呼屬性(基于業務指示符或組密鑰發生器id字段610和尋呼控制字段608),以及與被調度向數據鏈路組的一個或多個設備傳輸的其它數據相對應的第二尋呼屬性。
因此,圖6示出了可以包括在諸如服務發現幀(sdf)、公共行動幀(如ieee802.11中所描述的)、管理幀或者nan管理幀之類的幀中,以指示被調度接收業務或者指示密鑰發生器設備的id的設備列表的尋呼屬性600。另外地或替代地,尋呼屬性600可以包括在尋呼消息中,以便通告候選組密鑰的生成。
參見圖7,該圖示出了在數據鏈路組的設備處的操作的方法700的第一實現。該數據鏈路組可以包括無基礎設施對等網絡。例如,該數據鏈路組可以包括nan或無線網狀網絡的多個設備。所述多個設備可以在它們之間形成數據連接(例如,在多個設備之間)。方法700可以由設備104到110中的任何一個、圖2的設備202、參照圖3所描述的設備中的任何一個、或者圖4的設備402、404中任意一個來執行。
方法700包括:在702處,在數據鏈路組的第一設備處,獲得候選組密鑰。例如,該候選組密鑰可以包括或者對應于圖1的第二組密鑰142或者圖2的組密鑰214。可以將候選組密鑰設置成活動組密鑰,以實現與該數據鏈路組相對應的組尋址數據消息的加密、解密或者二者。第二組密鑰142可以由第一設備104來生成,如參照圖1所描述的。
方法700包括:在704處,從第一設備向數據鏈路組的第二設備發送用于指示候選組密鑰的可用性的通告消息,其中,該通告消息是在指定用于該數據鏈路組的尋呼窗期間發送的,其中,該通告消息包括多播消息。例如,該尋呼窗可以是組傳輸窗的一部分。為了說明起見,該尋呼窗可以是圖3的尋呼窗332、342、352、362中的一個。該通告消息可以包括或者對應于圖1的通告消息160或者通告消息170。
在一些實現中,可以響應于生成候選組密鑰來發送該通告消息。例如,可以響應于第一設備從數據鏈路組中的另一個設備接收到候選組密鑰,發送該通告消息。再舉一個例子,可以響應于第一設備發起候選組密鑰的生成或者響應于第一設備生成了候選組密鑰來發送該通告消息。所述多播消息(例如,通告消息)可以包括用于指示該通告消息是組密鑰通告消息的一個或多個比特。例如,所述一個或多個比特可以包括或者對應于圖1的標志162。所述一個或多個比特可以包括在通告消息的特定字段中。此外,該通告消息還可以包括數據鏈路組的組標識符和生成該候選組密鑰的特定設備的設備標識符。在一些實現中,第一設備和所述特定的設備是相同的設備,并且在其它實現中,第一設備和所述特定的設備是不同的設備。該組標識符和設備標識符可以分別包括或者對應于圖1的組標識符164和設備標識符166。該設備標識符可以是所述特定設備的mac地址。另外,通告消息可以包括與所述特定設備對候選組密鑰的生成相關聯的時間戳。
在一些實現中,第一設備可以在發送通告消息之后發送包括候選組密鑰的第二多播消息。可以使用分發密鑰(例如,圖1的第一分發密鑰134)來保護第二多播消息。數據鏈路組的每個設備都包括該分發密鑰的相應副本。該分發密鑰可以被配置為:只用于對包括候選組密鑰的第二多播消息進行編碼、解碼或者二者。
在一些實現中,當第一設備發送通告消息時,第一設備可以與數據鏈路組的第二設備相關聯。例如,當第一設備是圖1的第一設備104時,第二設備可以是圖1的第二設備106。第一設備可以從第二設備接收用于從第一設備向第二設備發送候選組密鑰的請求。在使用成對密鑰對候選組密鑰進行加密之后,第一設備可以向第二設備發送該候選組密鑰,其中該成對密鑰與同第二設備相關聯的第一設備相對應。例如,可以在第一設備和第二設備之間執行的安全關聯過程期間生成該成對密鑰。在安全關聯過程之后,該成對密鑰可以實現第一設備和第二設備之間的安全通信。該成對密鑰可以包括或者對應于圖1的成對密鑰146。
在其它實現中,在發送通告消息之后,第一設備可以接收用于第一設備與數據鏈路組的第三設備進行關聯的請求。例如,第三設備可以包括或者對應于圖1的第四設備110。第一設備可以與第三設備進行安全關聯,可以在安全關聯期間,生成(例如,建立)與第一設備和第三設備相對應的成對密鑰。在完成該安全關聯之后,第一設備可以接收用于第一設備向第三設備發送候選組密鑰的第二請求。替代地,在完成安全關聯之后,第一設備可以自動地向第三設備發送候選組密鑰。
在一些實現中,在發送了通告消息之后,第一設備可以從第四設備接收消息。該消息可以指示該消息是第二組密鑰通告消息。該消息可以對應于數據鏈路組的特定設備所生成的第二候選組密鑰。所述特定設備和第二設備可以是相同的設備,或者所述特定設備和第二設備可以是不同的設備。當所述特定設備和第二設備是不同的設備時,第二設備可以與第一設備相距一跳,并且所述特定設備可以與第一設備相距多跳。在一些實現中,第二候選組密鑰可以取代由第一設備生成的活動組密鑰。在接收到第二候選組密鑰之前,第一設備可以向數據鏈路組的一個或多個設備發送多播請求。響應于該多播請求,第一設備可以從數據鏈路組的特定設備接收第二候選組密鑰。
響應于確定第一設備與具有候選組密鑰的特定設備不相關聯,第一設備可以識別與第一設備相關聯、并且具有候選組密鑰的數據鏈路組的第五設備。第一設備可以在活動組密鑰(例如,圖1的第一組密鑰132)到期之前結束的時間段期間,識別數據鏈路組的第五設備。該時間段可以在接收到第二通告消息之后開始,并且在活動組密鑰到期之前的預定時間處結束。例如,響應于在第一設備處從第五設備接收到特定的消息,第一設備可以將第五設備識別成具有候選組密鑰。可以在第一設備處接收到第二通告消息之后并且在所述時間段結束之前,接收該特定的消息。第一設備可以從第五設備請求候選組密鑰,并且可以在活動組密鑰到期之前從第五設備接收候選組密鑰。在一些實現中,當接收第二通告消息時,第一設備可以與第五設備相關聯,并且當第一設備從第五設備接收候選組密鑰時,第一設備可以與第五設備不相關聯。例如,第五設備可以使用分發密鑰,將候選組密鑰作為多播消息發送給第一設備。
方法700實現候選組密鑰向數據鏈路組中的設備的分發。可以在減少包括數據鏈路組的nan中的與密鑰有關的業務和開銷的情況下,對候選組密鑰進行分發。例如,可以通過在數據鏈路組中的設備都蘇醒的尋呼窗期間發送通告消息(例如,組密鑰通告消息),來減少與密鑰有關的業務。再舉一個例子,可以使用活動分發密鑰對候選組密鑰進行編碼,并且可以將編碼的候選組密鑰作為多播消息發送給數據鏈路組的一個或多個設備。通過將候選組密鑰作為多播消息進行發送,可以在不用在第一設備和數據鏈路組的另一個設備之間執行安全關聯、p2p通信或者其組合的情況下,將候選組密鑰分發給數據鏈路組的所述一個或多個設備。
參見圖8,該圖示出了在數據鏈路組的設備處的操作的方法800的第二實現。方法800包括或者對應于一種無線通信的方法,該方法可以由設備104到110中的任何一個、圖2的設備202、參照圖3所描述的設備中的任何一個、或者圖4的設備402、404中任意一個來執行。
方法800可以包括:在802處,在數據鏈路組的第一設備處生成組密鑰和分發密鑰。例如,該組密鑰和分發密鑰可以包括或者對應于圖1的第二組密鑰142和第二分發密鑰144。
方法800可以包括:在804處,使用第二分發密鑰對該組密鑰和分發密鑰進行編碼,其中,第二分發密鑰與數據鏈路組的活動組密鑰相對應。例如,第二分發密鑰可以包括或者對應于圖1的第一分發密鑰134。在一些實現中,第二分發密鑰可以對應于活動組密鑰(例如,可以是一組密鑰的一部分,例如,活動密鑰集),并且第二分發密鑰可用于對密鑰傳輸消息進行編碼和解碼,直到該組密鑰被設置成活動組密鑰為止。
此外,方法800還包括:在806處,向數據鏈路組的一個或多個設備發送該編碼的組密鑰和編碼的分發密鑰。在一些實現中,可以通過將該編碼的組密鑰和編碼的分發密鑰多播給nan(例如,圖1的無線網絡102)中包括的多個設備,來發送該編碼的組密鑰和編碼的分發密鑰。數據鏈路組中的每個設備可以包括第二分發密鑰,并且可以被配置為使用第二分發密鑰對該編碼的組密鑰和編碼的分發密鑰進行解碼。
在一些實現中,在生成組密鑰和分發密鑰之前,第一設備可以從數據鏈路組的另一個設備接收到第二組密鑰(例如,候選組密鑰)和第二分發密鑰。例如,第二組密鑰可以包括或者對應于圖1的第一組密鑰132。第一設備可以在生成組密鑰(例如,在第二候選組密鑰是活動組密鑰時生成的)之前,將第二組密鑰設置成活動組密鑰。響應于檢測到第二組密鑰作為活動組密鑰的到期,第一設備可以將所述組密鑰設置成活動組密鑰。因此,該組密鑰可以替代第二組密鑰作為該數據鏈路組的活動組密鑰。
在一些實現中,在對所述組密鑰和分發密鑰進行編碼之前,可以向所述一個或多個設備發送通告消息(例如,圖1的通告消息160)。該通告消息可以對應于所述組密鑰。例如,該通告消息可以指示有組密鑰可用于分發。可以在組傳輸窗的尋呼窗期間發送該通告消息。該組傳輸窗可以包括或者對應于圖3的組傳輸窗320到326中的一個。可以在該組傳輸窗的數據窗期間,或者在該組傳輸窗之后發生的另一個組傳輸窗期間,發送編碼的組密鑰和編碼的分發密鑰。
方法800實現使用活動分發密鑰(例如,第一分發密鑰134)對組密鑰進行編碼,并且可以將編碼的組密鑰作為多播消息發送給數據鏈路組的一個或多個設備。通過發送包括組密鑰(例如,可用于被設置成“下一個”活動組密鑰的候選密鑰)的多播消息,可以在不用在第一設備和數據鏈路組的另一個設備之間進行安全關聯、p2p通信或者其組合的情況下,將該組密鑰分發給數據鏈路組的所述一個或多個設備。
參見圖9,該圖示出了在無線網絡的設備處的操作的方法900的第三實現。方法900可以由圖1的設備104到110中的任何一個、圖2的設備202、參照圖3所描述的設備中的任何一個、或者圖4的設備402、404中任意一個來執行。
方法900包括:在902處,在數據鏈路組的第一設備處,獲得候選組密鑰。例如,參見圖1,第一設備104可以獲得第二組密鑰142。可以將該候選組密鑰設置成潛在的“下一個”活動組密鑰,以實現對于與該數據鏈路組相對應的組尋址數據消息的加密、解密或者二者。在一些實現中,在第一設備處獲得候選組密鑰可以包括:從數據鏈路組的另一個設備接收候選組密鑰。在其它實現中,獲得候選組密鑰可以包括:在第一設備處生成候選組密鑰。
方法900包括:在904處,從第一設備向數據鏈路組的第二設備發送用于指示候選組密鑰的可用性的通告消息。可以經由與數據鏈路組相對應的無線信道,在尋呼窗期間發送該通告消息。在一些實現中,該通告消息可以包括多播消息。
在一些實現中,可以響應于獲得候選組密鑰來發送該通告消息。例如,參見圖1,可以響應于第一設備104從數據鏈路組中的另一個設備接收到第二組密鑰142來發送該通告消息160。再舉一個例子,可以響應于第一設備104發起第二組密鑰142的生成或者響應于第一設備104生成了第二組密鑰142,來發送該通告消息。所述多播消息(例如,通告消息160)可以包括用于指示該通告消息是組密鑰通告消息的一個或多個比特。所述一個或多個比特可以包括在通告消息160的特定字段中。此外,該通告消息160還可以包括數據鏈路組的組id164和生成第二組密鑰142的特定設備的設備id166。
在一些實現中,第一設備可以從數據鏈路組的第二設備接收觸發消息,其中第二設備處于與第一設備的關聯狀態。例如,第一設備104可以從第二設備106接收觸發消息167。第一設備可以響應于接收到該觸發消息,向第二設備發送候選組密鑰。例如,第一設備104可以向第二設備106發送包括第二組密鑰142的密鑰傳輸消息180。可以基于成對密鑰對該候選組密鑰進行加密。可以在第一設備和第二設備之間的關聯過程期間生成該成對密鑰。例如,可以基于成對密鑰146對第二組密鑰142進行加密。在特定的實現中,該候選組密鑰包括在密鑰傳輸消息中,并且該密鑰傳輸消息包括用于指示候選組密鑰的到期時間的密鑰標識符。例如,密鑰傳輸消息180可以包括第二組密鑰142和密鑰標識符143。
在一些實現中,活動密鑰集可以包括活動組密鑰、活動分發密鑰和活動組完整性密鑰。例如,活動密鑰集130可以包括圖1的第一組密鑰132、第一分發密鑰134和第一組完整性密鑰131。在一些實現中,候選密鑰集可以包括候選組密鑰、候選分發密鑰和候選組完整性密鑰。例如,候選密鑰集140可以包括圖1的第二組密鑰142、第二分發密鑰134和第二組完整性密鑰141。
在一些實現中,可以基于活動組密鑰、(活動密鑰集的)活動分發密鑰或者成對密鑰,對候選組密鑰進行編碼。例如,可以基于第一組密鑰132、第一分發密鑰134或者成對密鑰146,對第二組密鑰142進行加密。可以基于第一組密鑰132、第一分發密鑰134或者成對密鑰146,對密鑰傳輸消息180(其包括加密的第二組密鑰142)進行加密。方法900可以包括:發送該編碼的候選組密鑰。可以基于活動組密鑰、(活動密鑰集的)活動分發密鑰或者成對密鑰,對編碼的候選組密鑰進行解碼。例如,可以基于第一組密鑰132、第一分發密鑰134或者成對密鑰146,對第二密鑰142進行解密。在特定的實現中,可以基于活動密鑰集中包括的活動組完整性密鑰,對組尋址業務進行驗證。
在一些實現中,第一設備可以在組密鑰更新窗到期之后從數據鏈路組的特定設備接收關聯請求。在特定的實現中,第一設備可以響應于接收到該關聯請求,向該特定的設備發送關聯響應。該關聯響應可以使該特定的設備能夠與第一設備進行關聯。例如,第一設備104可以從第四設備110接收關聯請求175,并且響應于接收到該關聯請求175而向第四設備110發送關聯響應176。在另一種實現中,第一設備可以響應于確定不滿足標準,向該特定的設備發送關聯拒絕。例如,如果不滿足標準,則第一設備104可以向第四設備110發送關聯拒絕178。
在一些實現中,第一設備可以從數據鏈路組的第二設備接收第二通告消息。第二通告消息可以指示候選組密鑰的生成。
在一些實現中,第一設備可以通過隨機地生成候選組密鑰來獲得候選組密鑰。在特定的實現中,該組候選密鑰包括256個隨機生成的比特。在一些實現中,可以響應于從隨機值開始的倒計數的到期來生成候選組密鑰。
在一些實現中,通告消息可以包括密鑰指示符、數據鏈路組的數據鏈路組標識符、生成候選組密鑰的特定設備的設備標識符或者其組合。例如,通告消息160可以包括密鑰指示符168、組id164和設備id166。在特定的實現中,密鑰指示符168可以包括時間戳、哈希值或者二者。
在一些實現中,該密鑰指示符可以包括第一設備的mac地址、哈希值、與候選組密鑰的生成相對應的時間戳或者其組合。可以基于mac地址、候選組密鑰或者二者來生成該哈希值。例如,通告消息170的密鑰指示符可以包括第二設備106的mac地址。該設備標識符可以包括生成第二組密鑰142的第一設備104的第二mac地址。
在一些實現中,第一設備可以從數據鏈路組的第二設備接收第二通告消息。第二通告消息可以包括第二組密鑰和第二時間戳。第一設備可以基于確定所述通告消息中包括的第一時間戳比第二時間戳更早來向第二設備發送候選組密鑰。在特定的實現中,第一設備104可以在傳輸了通告消息160之后,從數據鏈路組的特定設備接收到第二通告消息。
在一些實現中,當第一設備被指定為操作成密鑰發生器設備時,第一設備操作成數據鏈路組的密鑰發生器設備,而數據鏈路組的其它設備并不操作成密鑰發生器設備。在第一設備停止操作成密鑰發生器設備之前,方法900可以包括:從第一設備向數據鏈路組的第二設備發送消息,其中該消息指示第二設備將操作成該數據鏈路組的密鑰發生器設備。例如,第一設備104可以向第二設備106發送用于指示第二設備將操作成數據鏈路組的密鑰發生器設備的消息,如參照圖1所描述的。此外,方法900還可以包括:終止第一設備處的密鑰生成操作。此外,方法900還可以包括:使第一設備與該數據鏈路組去關聯;在第一設備處轉換到低功率操作模式;或者二者。例如,第一設備104可以終止密鑰生成操作,并且轉換到低功率操作模式,如參照圖1所描述的。
在一些實現中,第一設備可以從該第一設備向數據鏈路組的第二設備發送消息。該消息可以指示第二設備將操作成該數據鏈路組的密鑰發生器設備。第一設備可以在發送該消息之后,與數據鏈路組進行去關聯。響應于接收到該消息,第二設備可以操作成數據鏈路組的密鑰發生器設備。
在其它實現中,第一設備可以在第二發現窗期間接收第二通告消息,其中第二通告消息可以指示數據鏈路組的第二設備生成了第二組密鑰。
在一些實現中,第一設備可以更新計數器。該計數器可以與候選組密鑰的到期有關。響應于計數器達到特定的值,第一設備可以生成新的組密鑰。響應于在計數器達到該特定的值之前接收到第二通告消息,第一設備可以停止更新計數器。
在一些實現中,第一設備可以被配置為:不與超過門限數量的設備進行關聯。在其它實現中,第一設備在按需基礎上與其它設備進行關聯。
在一些實現中,第一設備可以響應于從數據鏈路組的第四設備接收到關聯請求,而與數據鏈路組的第三設備去關聯。在特定的實現中,由于在第二尋呼窗的結束之前,第一設備沒有緩存要傳輸到第三設備的數據,因此第一設備可以確定與第三設備進行去關聯。在另一個特定的實現中,在從第四設備接收到關聯請求之前,第一設備可以處于與數據鏈路組的第二設備的關聯狀態,并且第二設備可以處于與第三設備的關聯狀態。第四設備可能沒有處于與數據鏈路組中的設備的關聯狀態。在該特定的實現中,第一設備可以基于第三設備處于與第二設備的關聯狀態而決定與第三設備進行去關聯。
參見圖10,該圖示出了在無線網絡的設備處的操作的方法1000的第四實現。該無線網絡可以包括多個數據鏈路組。方法1000可以由設備104到110中的任何一個、圖2的設備202、參照圖3所描述的設備中的任何一個、或者圖4的設備402、404中任意一個來執行。
方法1000包括:在1002處,在數據鏈路組的第一設備處,獲得候選組密鑰。例如,該候選組密鑰可以包括或者對應于圖1的第二組密鑰142、圖2的組密鑰214或者參照圖3到圖5所描述的密鑰中的任何一個。參見圖1,第一設備104可以獲得第二組密鑰142。在一些實現中,第一設備通過在第一設備處生成候選組密鑰來獲得該候選組密鑰。在其它實現中,通過在第一設備處從數據鏈路組的另一個設備接收候選組密鑰,第一設備獲得候選組密鑰。該候選組密鑰可以實現對于與該數據鏈路組相對應的組尋址數據消息的加密或解密中的至少一個。
方法1000包括:在1004處,從第一設備向數據鏈路組的設備發送用于指示候選組密鑰的可用性的通告消息,其中,該通告消息是經由第一通信信道在發現窗期間發送的,其中該通告消息包括多播消息。例如,通告消息160可以包括或者對應于圖1的通告消息160、通告消息170或者圖5的通告消息510。在一些實現中,可以經由nan通信信道,在發現窗期間發送該通告消息,該通告消息可以是多播消息。
在一些實現中,第一通信信道對應于鄰居感知網絡(nan)通信信道(例如,圖3的nan通信信道302),組密鑰更新窗包括該發現窗的結束和第二發現窗的開始之間的持續時間。組密鑰更新窗(例如,圖3的第一發現窗310和第二發現窗312之間的持續時間)可以包括多個傳輸窗。所述多個傳輸窗的第一傳輸窗可以與發現窗的結束具有第一偏移量,所述多個傳輸窗的第二傳輸窗與發現窗的結束具有第二偏移量,如參照圖1和圖3所描述的。
在一些實現中,方法1000可以包括:在尋呼窗期間,從第一設備向nan的第二設備發送尋呼消息,其中該尋呼消息指示第一設備具有要向第二設備發送的與第一組密鑰相對應的數據。該尋呼窗可以是組傳輸窗的一部分。為了說明起見,該尋呼窗可以是圖3的尋呼窗332、342、352、362中的一個。
在一些實現中,方法1000可以包括:從第二設備接收觸發消息,并且響應于接收到觸發消息來發送候選組密鑰。例如,該觸發消息可以包括或者對應于圖1的觸發消息167、圖3的請求338、或者圖3的請求348。可以基于成對密鑰對候選組密鑰進行加密,并且該成對密鑰可以是在第一設備和第二設備之間的關聯過程期間生成的。例如,該成對密鑰可以包括或者對應于圖1的成對密鑰146。第一設備可以接收確認消息。該確認消息可以指示第二設備接收到候選組密鑰。
在一些實現中,活動密鑰集可以包括活動組密鑰、活動分發密鑰和活動組完整性密鑰。例如,活動密鑰集130可以包括圖1的第一組密鑰132、第一分發密鑰134和第一組完整性密鑰131。在一些實現中,候選密鑰集可以包括候選組密鑰、候選分發密鑰和候選組完整性密鑰。例如,候選密鑰集140可以包括圖1的第二組密鑰142、第二分發密鑰134和第二組完整性密鑰141。
在一些實現中,可以基于活動組密鑰、(活動密鑰集的)活動分發密鑰或者成對密鑰,對候選組密鑰進行編碼。例如,可以基于第一組密鑰132、第一分發密鑰134或者成對密鑰146,對第二組密鑰142進行加密。可以基于第一組密鑰132、第一分發密鑰134或者成對密鑰146,對密鑰傳輸消息180(其包括加密的第二組密鑰142)進行加密。方法1000可以包括:發送該編碼的候選組密鑰。可以基于活動組密鑰、(活動密鑰集的)活動分發密鑰或者成對密鑰,對編碼的候選組密鑰進行解碼。例如,可以基于第一組密鑰132、第一分發密鑰134或者成對密鑰146,對第二密鑰142進行解密。在特定的實現中,可以基于活動密鑰集中包括的活動組完整性密鑰(例如,圖1的第一組完整性密鑰131),對組尋址業務進行驗證。
在其它實現中,可以響應于接收到關聯請求來發送候選組密鑰。例如,可以響應于接收到關聯請求175,從第一設備104向第四設備110發送密鑰傳輸消息180(其包括第二組密鑰142)。此外,方法1000還可以包括:在組密鑰更新窗到期之后,從nan的特定設備接收關聯請求。該組密鑰更新窗可以包括與數據鏈路組中的密鑰更新操作的執行相對應的特定時間間隔。例如,該組密鑰更新窗可以對應于數據鏈路組中的通告消息、密鑰傳輸消息或者二者的生成、傳輸、接收或者其組合。在另一種實現中,方法1000包括:響應于接收到關聯請求而向特定的設備發送關聯響應,其中該關聯響應使該特定的設備能夠與第一設備進行關聯。例如,參見圖1,響應于發送了通告消息160,第一設備104可以從第四設備110接收關聯請求715。響應于接收到關聯請求175,第一設備104可以向第四設備110發送關聯響應176。
在一些實現中,方法1000可以包括:在組密鑰更新窗到期之后,從數據鏈路組的特定設備接收關聯請求。例如,該關聯請求可以包括或者對應于圖1的關聯請求175。該組密鑰更新窗(例如,圖3的第一發現窗310和第二發現窗312之間的持續時間)可以包括與數據鏈路組中的組密鑰更新操作的執行相對應的特定時間間隔。此外,方法1000還可以包括:響應于確定滿足第一標準,向該特定的設備發送關聯拒絕。例如,該關聯拒絕可以包括或者對應于圖1的關聯拒絕178。當與第一設備相關聯的設備的數量大于或者等于門限時,可以滿足第一標準。
在一些實現中,方法1000可以包括:響應于發送了通告消息,從數據鏈路組的特定設備接收關聯請求。例如,響應于第一設備104發送了通告消息160,第一設備104可以從第四設備110接收關聯請求175,如參照圖1所描述的。此外,方法1000還可以包括:響應于確定滿足了第二標準,向該特定的設備發送關聯響應。例如,該關聯響應可以包括或者對應于圖1的關聯響應176。當與第一設備相關聯的設備的數量小于或等于門限時,可以滿足第二標準。例如,響應于確定第一設備104與小于門限的設備數量相關聯,第一設備104可以發送關聯響應176。
方法1000可以包括:向數據鏈路組中的設備發送數據。為了說明起見,第一設備可以向數據鏈路組中的設備發送數據,其中,在將候選組密鑰設置成活動組密鑰之后,基于該候選組密鑰來對數據進行加密。例如,參見圖1,第一設備104可以向第二設備106發送數據,其中,在第二組密鑰142被設置成活動組密鑰之后,基于第二組密鑰142對該數據進行加密。
方法1000可以包括:在活動組密鑰到期之前,生成第二候選組密鑰。例如,在第一組密鑰132到期之前,第一設備104可以生成第二組密鑰142。
在一些實現中,方法1000可以包括:將候選組密鑰設置成活動組密鑰。例如,在第一組密鑰132作為活動組密鑰到期之后,第一設備104可以將第二組密鑰142設置成活動組密鑰,如參照圖1所描述的。此外,方法1000還可以包括:向數據鏈路組中的設備發送數據(例如,基于活動組密鑰進行加密的數據)。為了說明起見,第一設備104可以提供一個或多個服務,向無線網絡102的設備發送組尋址業務,如參照圖1所描述的。此外,方法1000還可以包括:在活動組密鑰到期之前,生成第二候選組密鑰。此外,方法1000還可以包括:在數據鏈路組的多個發現窗期間,發送第二通告消息。第二通告消息可以指示第二候選組密鑰的可用性。
方法1000可以包括:在指定用于該數據鏈路組的尋呼窗期間,將第二候選組密鑰分發給該數據鏈路組中的設備。此外,方法1000還可以包括:基于從與第一設備相關聯的每個設備都接收到相應的確認消息,確定與第一設備相關聯的每個設備都接收到第二候選組密鑰。例如,該確認消息可以包括或者對應于圖1的ack。此外,方法1000還可以包括:響應于確定與第一設備相關聯的每個設備都接收到第二候選組密鑰,停止第二通告消息的傳輸。響應于確定第一設備104已經從與第一設備104相關聯的每個設備都接收到macack,第一設備104可以停止發送通告消息170,如參見圖1所描述的。
在一些實現中,候選組密鑰與第一密鑰指示符(例如,圖1的密鑰指示符168)有關。例如,密鑰指示符168可以提供與第二組密鑰142有關的信息,密鑰指示符168可以包括基于第二組密鑰142生成的哈希值或者與第二組密鑰142的生成相對應的時間戳。方法1000可以包括:從數據鏈路組的第二設備接收包括第二候選組密鑰和第二密鑰指示符的第二通告消息。此外,方法1000還可以包括:基于所述密鑰指示符與第二密鑰指示符的比較,選擇候選組密鑰進行傳播。
在一些實現中,第一設備基于該第一設備是數據鏈路組的發起方、基于第一設備與更多的設備相關聯(與該數據鏈路組中的其它設備里的每個設備相比)、基于第一設備比數據鏈路組中的其它設備里的每個設備在該數據鏈路組中花費了更多的時間、基于與第一設備相關聯的設備的數量、基于數據鏈路組的拓撲、基于第一設備包括在該數據鏈路組中的持續時間、基于第一設備在該數據鏈路組中的排名、基于第一設備的電池電平或者其組合,來確定操作成密鑰發生器設備。例如,第一設備104可以基于一個或多個標準,確定操作成密鑰發生器設備,如參照圖1所描述的。
參見圖11,該圖示出了在無線網絡的設備處的操作的方法1100的第五實現。該無線網絡可以包括多個數據鏈路組。方法1100可以由設備104到110中的任何一個、圖2的設備202、參照圖3所描述的設備中的任何一個、或者圖4的設備402、404中任意一個來執行。
方法1100包括:在1102處,在數據鏈路組的第二設備處,在指定用于該數據鏈路組的尋呼窗期間,監測第一通信信道。例如,第一通信信道可以包括或者對應于圖3的nan通信信道302或者數據鏈路組信道304。該尋呼窗可以包括或者對應于圖3中的尋呼窗332、342、352、362里的一個。
方法1100包括:在1104處,在尋呼窗期間,在第二設備處,從數據鏈路組的第一設備接收通告消息,其中該通告消息指示候選組密鑰的可用性,該通告消息包括多播消息。例如,該通告消息可以包括或者對應于圖1的通告消息160或通告消息170。該尋呼窗可以是組傳輸窗(例如,圖3的組傳輸窗320、322、324、326)的一部分。
在一些實現中,第二設備可以獲得候選組密鑰。第二設備可以通過以下方式來獲得候選組密鑰:響應于在尋呼窗期間到通告消息,向第一設備發送觸發消息,以及通過在數據窗期間,從第一設備接收候選組密鑰。參見圖1,該觸發消息可以包括或者對應于圖1的觸發消息167。
在其它實現中,第二設備可以響應于接收到通告消息,向第一設備發送觸發消息。例如,參見圖1,第二設備106可以響應于接收到通告消息160,向第一設備104發送觸發消息167。該通告消息可以包括密鑰指示符(例如,圖1的密鑰指示符168)。該密鑰指示符可以包括時間戳、哈希值或二者。
在一些實現中,第二設備可以在尋呼窗期間,從數據鏈路組的第三設備接收第二通告消息。第二通告消息可以包括第二時間戳,并且可以指示第二組密鑰的生成。第二設備可以基于所述通告消息的第一時間戳比第二時間戳更早,向第一設備發送觸發消息。響應于發送了觸發消息,第二設備可以從第一設備接收候選組密鑰。
在其它實現中,響應于確定第一設備與該數據鏈路組去關聯,第二設備可以生成第二組密鑰。例如,參見圖1,響應于確定第一設備104與該數據鏈路組去關聯,第二設備106可以生成組密鑰。
在一些實現中,方法1100可以包括:更新計數器,其中該計數器與現有組密鑰的到期有關。例如,該計數器可以包括或者對應于圖2的計數器204。此外,方法1100還可以包括:響應于在計數器達到特定的值之前接收到所述通告消息,停止更新該計數器,其中該特定的值與第二設備生成新的組密鑰有關。
在一些實現中,方法1100可以包括:識別所述通告消息中包括的第一密鑰指示符。例如,第二設備106可以識別通告消息160中的密鑰指示符168,如參照圖1所描述的。此外,方法1100還可以包括:在尋呼窗期間,從數據鏈路組的第三設備接收第二通告消息。第二通告消息可以包括第二密鑰指示符,可以指示第二候選組密鑰的生成。方法1100可以包括:基于所述通告消息的第一密鑰指示符具有比第二密鑰指示符更高的優先級,向第一設備發送觸發消息。例如,第二設備106可以基于通告消息160的密鑰指示符168,向第一設備104發送觸發消息167。此外,方法1100還可以包括:響應于發送了觸發消息,從第一設備接收候選組密鑰。
在一些實現中,方法1100可以包括:在接收所述通告消息之前,發起第二候選組密鑰的生成。例如,第二設備106可以在接收通告消息160之前,生成候選組密鑰,如參照圖1所描述的。此外,方法1100還可以包括:響應于接收到所述通告消息,停止第二候選組密鑰的生成。例如,第二設備106可以響應于接收到通告消息(例如,來自第一設備104的通告消息160),停止候選組密鑰的生成或者抑制該候選組密鑰。
在一些實現中,方法1100可以包括:響應于接收到所述通告消息,向數據鏈路組的設備重新發送所述通告消息。例如,第二設備106可以響應于從第一設備104接收到通告消息160,向第三設備170和第四設備110發送通告消息170。
在一些實現中,方法1100可以包括:響應于接收到所述通告消息,判斷第二設備是否與第一設備相關聯。此外,方法1100還可以包括:響應于確定第一設備104與第二設備106相關聯,從第一設備104請求候選組密鑰。例如,第二設備106可以確定該第二設備106與第一設備104相關聯,如參照圖1所描述的。
在一些實現中,方法1100可以包括:響應于接收到所述通告消息,判斷第二設備是否與第一設備相關聯。此外,方法1100還可以包括:響應于確定第二設備與第一設備不相關聯,識別接收到候選組密鑰并與第二設備相關聯的數據鏈路組的第三設備。例如,第四設備110可以確定該第四設備110與第一設備104不相關聯,如參照圖1所描述的。第四設備110可以基于尋呼消息165或者通告消息170,將第二設備106識別成具有第二組密鑰142。第三設備可以是在數據鏈路組的活動組密鑰到期之前結束的時間段期間識別的。該時間段可以在接收到所述通告消息之后開始,并在活動組密鑰到期之前的預定時間結束。方法1100可以包括:從第三設備請求候選組密鑰。此外,方法1100還可以包括:在活動組密鑰到期之前,從第三設備接收候選組密鑰。例如,第四設備110可以通過發送觸發消息167來請求第二組密鑰142,可以接收包括第二組密鑰142的密鑰傳輸消息180。
在一些實現中,方法1100可以包括:響應于確定第二設備與第一設備不相關聯,執行與第三設備的安全關聯。在特定的實現中,該安全關聯建立成對密鑰(例如,圖1的成對密鑰146)。
此外,方法1100還可以包括:從第三設備接收編碼的候選組密鑰。方法1100可以包括:基于所述成對密鑰,對編碼的候選組密鑰進行解碼,以便在第二設備處生成候選組密鑰。例如,該成對密鑰可以包括或者對應于圖1的成對密鑰146。此外,方法1100還可以包括:將候選組密鑰存儲在存儲器中。例如,該存儲器可以包括或者對應于圖2的密鑰存儲器208。
在一些實現中,方法1100可以包括:響應于確定第二設備與第一設備不相關聯,識別在數據鏈路組的活動組密鑰到期之前的預定時間。此外,方法1100還可以包括:在該預定時間之前,向數據鏈路組的至少一個設備發送針對候選組密鑰的多播請求。此外,方法1100還可以包括:從數據鏈路組的第三設備接收響應于該多播請求的候選組密鑰。
參見圖12,該圖示出了在無線網絡的設備處的操作的方法1200的第六實現。該無線網絡可以包括多個數據鏈路組。方法1200可以由圖1的設備104到110中的任何一個、圖2的設備202、參照圖3所描述的設備中的任何一個、或者圖4的設備402、404中任意一個來執行。
方法1200包括:在1202處,在數據鏈路組的第二設備處,在與該數據鏈路組相對應的發現窗期間,監測第一通信信道。例如,第一通信信道可以包括或者對應于圖3的nan通信信道302或者數據鏈路組信道304。該發現窗可以包括或者對應于圖3的第一發現窗310和第二發現窗312。參見圖1,無線網絡102(例如,nan)的數據鏈路組的第二設備106可以在該數據鏈路組的發現窗期間,監測與該數據鏈路組相對應的無線信道。
方法1200包括:在1204處,在發現窗期間,在第二設備處從數據鏈路組的第一設備接收通告消息,其中該通告消息指示候選組密鑰的可用性,該通告消息包括多播消息。例如,該通告消息可以包括或者對應于圖1的通告消息160、通告消息170或者圖5的通告消息510。
在特定的實現中,第二設備可以響應于倒計數(例如,基于圖2的計數器204的倒計數)的到期,向第一設備發送關聯請求。例如,第四設備110可以向第一設備104發送關聯請求175。
在一些實現中,響應于在數據鏈路組的尋呼窗期間從第一設備接收到尋呼消息,第二設備可以向第一設備發送觸發消息。第二設備可以在該第二設備處,響應于觸發消息,從第一設備接收候選組密鑰。例如,響應于從第一設備接收到尋呼消息165,第二設備106可以向第一設備104發送觸發消息167,如參照圖1所描述的。第二設備106可以從第一設備104接收第二組密鑰142。
在其它實現中,第二設備可以響應于接收到所述通告消息,向第一設備發送關聯請求。例如,參見圖1,當第二設備106與第一設備104不相關聯時,可以響應于接收到通告消息160而向第一設備104發送關聯請求175。
在特定的實現中,響應于從第一設備接收到關聯響應,第二設備可以與第一設備進行關聯。該關聯響應(例如,圖1的關聯響應176)可以指示第一設備可用于進行關聯。第二設備可以在該第二設備處,從第一設備接收候選組密鑰。響應于從第一設備接收到關聯拒絕(例如,圖1的關聯拒絕178),第二設備可以向第一設備發送第二關聯請求。
在一些實現中,可以經由第一通信信道來接收該通告消息。例如,第一通信信道可以包括圖3的nan通信信道。此外,方法1200還可以包括:響應于在第二通信信道的尋呼窗期間,從第一設備接收到尋呼消息,經由第二通信信道,向第一設備發送觸發消息。例如,第二通信信道可以包括圖3的數據鏈路組信道304。該尋呼消息可以包括或者對應于圖1的尋呼消息165或者尋呼消息190。此外,方法1200還可以包括:在第二設備處,從第一設備接收候選組密鑰,基于完整性組密鑰,對候選組密鑰進行驗證。
在一些實現中,方法1200可以包括:在接收到通告消息之后,開始倒計數。此外,方法1200還可以包括:響應于倒計數的到期,由第二設備確定該第二設備沒有接收到候選組密鑰。此外,方法1200還可以包括:當確定截止到倒計數到期時,第二設備都沒有接收到候選組密鑰,向第一設備發送關聯請求。例如,第四設備110可以確定其沒有接收到第二組密鑰142,故可以向第一設備104發送關聯請求175,如參照圖1所描述的。
在一些實現中,方法1200可以包括:在接收到包括第一密鑰指示符的通告消息之前,在第二設備處,生成第二候選組密鑰和第二候選組密鑰的第二密鑰指示符。例如,在從無線網絡102的另一個設備接收到通告消息之前,第一設備104可以生成第二組密鑰142和密鑰指示符168,如參照圖1所描述的。此外,方法1200還可以包括:基于第二密鑰指示符指示比第一密鑰指示符更高的優先級,選擇第二候選組密鑰進行傳播。例如,第一設備可以基于通告消息160中包括的密鑰指示符168,選擇第二組密鑰142進行傳播,如參照圖1所描述的。此外,方法1200還可以包括:在接收到所述通告消息之后,經由第二通信信道,在尋呼窗期間向數據鏈路組的第四設備發送尋呼消息,其中第四設備與第二設備相關聯。該尋呼消息可以指示可從第二設備獲得第二候選組密鑰。例如,第一設備104可以向第四設備110發送尋呼消息165,如參照圖1所描述的。
在一些實現中,方法1200可以包括:基于一個或多個狀況,確定第二密鑰指示符比第一密鑰指示符具有更高的優先級。所述一個或多個狀況可以包括:當第二密鑰指示符指示更高優先級的媒體訪問控制(mac)地址時,當第二密鑰指示符指示更早的時間戳時,或者當第二密鑰指示符指示更高優先級的哈希值時。例如,第二設備106可以基于mac地址、時間戳或者哈希值,確定與通告消息160中包括的密鑰指示符168相比,第二密鑰指示符(其對應于第二設備106所生成的候選組密鑰)具有更高的優先級,如參照圖1所描述的。
圖7的方法700、圖8的方法800、圖9的方法900、圖10的方法1000、圖11的方法1100、圖12的方法1200或者其組合,實現組密鑰向數據鏈路組中的設備的分發。可以在減少包括數據鏈路組的nan或者網狀網絡中的與密鑰有關的業務和開銷的情況下,對候選組密鑰進行分發。例如,可以通過在數據鏈路組中的設備都蘇醒的尋呼窗或者發現窗期間發送通告消息(例如,組密鑰通告消息),來減少與密鑰有關的業務。再舉一個例子,可以使用活動分發密鑰,對候選組密鑰(例如,潛在的“下一個”活動組密鑰)進行加密,并且可以將加密的候選組密鑰作為多播消息發送給數據鏈路組的一個或多個設備。通過將候選組密鑰作為多播消息進行發送,可以在不用在數據鏈路組的兩個設備之間執行安全關聯、p2p通信或者其組合的情況下,將候選組密鑰分發給數據鏈路組的所述一個或多個設備。
圖7的方法700、圖8的方法800、圖9的方法900、圖10的方法1000、圖11的方法1100、圖12的方法1200或者其組合,可以由諸如中央處理單元(cpu)、控制器、現場可編程門陣列(fpga)器件、專用集成電路(asic)、另一個硬件設備、固件設備或者其任意組合之類的處理單元來控制。舉例而言,圖7的方法700、圖8的方法800、圖9的方法900、圖10的方法1000、圖11的方法1100、圖12的方法1200或者其組合,可以由一個或多個處理器執行,所述一個或多個處理器執行指令以發送通告消息、分發組密鑰或者其組合。另外,圖7到圖12的方法中的一個方法的第一部分,可以與圖7到圖12的方法中的另一個方法的第二部分進行組合。例如,圖7的方法700的第一部分可以與圖8的方法800、圖9的方法900、圖10的方法1000、圖11的方法1100、圖12的方法1200或者其組合中的一個方法的第二部分進行組合。
參見圖13,該圖描述了無線通信設備的特定說明性實現,其通常指定為1300。設備1300包括耦合到存儲器1332的處理器1310(例如,數字信號處理器)。設備1300或者其部件可以對應于圖1的設備104到110、圖2的設備202、參照圖3所描述的設備、圖4的設備402、404或者其部件。
存儲器1332(例如,非臨時性計算機可讀介質)可以包括一個或多個密鑰1360和指令1368。這些指令可以由處理器1310執行。例如,存儲器1332可以包括或者對應于圖2的密鑰存儲器208。所述一個或多個密鑰1360可以包括:包括設備1300的數據鏈路組的組密鑰1362。例如,組密鑰1362可以包括或者對應于圖1的第一組密鑰132、第二組密鑰142或者圖2的組密鑰214。可選地,所述一個或多個密鑰1360可以包括數據鏈路組的分發密鑰1364。例如,分發密鑰1364可以包括或者對應于圖1的第一分發密鑰134或者第二分發密鑰144。在一些實現中,所述一個或多個密鑰1360可以包括多個組密鑰,例如,活動組密鑰和候選組密鑰。另外,所述一個或多個密鑰1360可以包括多個分發密鑰,例如,活動分發密鑰和候選分發密鑰。
處理器1310可以包括密鑰邏輯1312和消息邏輯1314。密鑰邏輯1312可以包括或者對應于圖1的密鑰邏輯112、圖2的計數器204、密鑰發生器206或者其組合。消息邏輯1314可以包括或者對應于圖1的消息邏輯114。消息邏輯1314可以被配置為生成通告消息1316(例如,圖1的通告消息160或者通告消息170)。通告消息1316可以對應于(例如,包括)組密鑰1362。
處理器1310可以被配置為執行存儲器1332中存儲的軟件(例如,一個或多個指令1368的程序)。例如,處理器1310可以被配置為根據圖7的方法700、圖8的方法800、圖9的方法900、圖10的方法1000、圖11的方法1100、圖12的方法1200或者其組合進行操作。為了說明起見,處理器1310可以被配置為執行指令1368,其致使處理器1310識別獲得的數據鏈路組的組密鑰1362,在尋呼窗期間,發起通告消息1316向該數據鏈路組的一個或多個設備的傳輸。通告消息1316可以對應于組密鑰1362,可以作為用于指示該通告消息1316是組密鑰通告消息的多播消息進行發送。
再舉一個例子,處理器1310可以被配置為執行指令1368,其致使處理器1310生成與該數據鏈路組相對應的組密鑰1362和分發密鑰1364,使用諸如活動分發密鑰之類的第二分發密鑰(沒有示出),對組密鑰1362和分發密鑰1364進行編碼。第二分發密鑰可以對應于數據鏈路組的活動組密鑰。此外,指令1368還可以致使處理器發起將加密的組密鑰和加密的分發密鑰傳輸給數據鏈路組的一個或多個設備。
此外,圖13還示出了耦合到處理器1310和顯示器1328的顯示器控制器1326。編碼器/解碼器(codec)1334還可以耦合到處理器1310。揚聲器1336和麥克風1338可以耦合到codec1334。此外,圖13還指示無線接口1340可以耦合到處理器1310和天線1342。例如,無線接口1340可以經由收發機1341來耦合到天線1342。收發機1341可以包括發射機、接收機或者二者。收發機1341可以被配置為發送消息邏輯1314所生成的一個或多個消息,接收其它設備(例如,數據鏈路組中的設備)向設備1300發送的一個或多個消息。
在一些實現中,處理器1310、顯示器控制器1326、存儲器1332、codec1334、無線接口1340和收發機1341包括在封裝系統或者片上系統設備1322中。在特定的實現中,輸入設備1330和電源1344耦合到片上系統設備1322。此外,在另一個特定的實現中,如圖13中所示,顯示器1328、輸入設備1330、揚聲器1336、麥克風1338、天線1342和電源1344在片上系統設備1322之外。但是,顯示器1328、輸入設備1330、揚聲器1336、麥克風1338、天線1342和電源1344中的每一個也可以耦合到片上系統設備1322的部件(例如,接口或控制器)上。
結合所描述的圖1到圖13的實現中的一個或多個,第一裝置包括:用于在數據鏈路組的第一設備處,獲得組密鑰的單元。例如,用于獲得組密鑰的單元可以包括或者對應于圖1的密鑰邏輯112、圖2的密鑰發生器206、接收機210、圖13的密鑰邏輯1312、無線接口1340、收發機1341、被編程為執行指令1368的處理器1310、用于獲得組密鑰的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。該組密鑰可以包括或者對應于圖1的第一組密鑰132、圖1的第二組密鑰142、圖2的組密鑰214、或者參照圖3到圖5所描述的組密鑰中的任何一個。
此外,第一裝置還包括:用于在尋呼窗期間,向數據鏈路組的一個或多個設備發送與所述組密鑰相對應的通告消息的單元。該通告消息可以對應于所述組密鑰,可以作為用于指示該通告消息是組密鑰通告消息的多播消息進行發送。例如,用于發送通告消息的單元可以包括或者對應于圖1的消息邏輯114、圖2的發射機212、圖13的無線接口1340、收發機1341、天線1342、被編程為執行指令1368的處理器1310、用于發送通告消息的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。
結合一個或多個所描述的實現,第二裝置包括:用于生成與數據鏈路組相對應的組密鑰和分發密鑰的單元。例如,該生成單元可以包括或者對應于圖1的密鑰邏輯112、圖2的密鑰發生器206、圖13的密鑰邏輯1312、被編程為執行指令1368的處理器1310、用于生成組密鑰和分發密鑰的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。
第二裝置包括:用于使用第二分發密鑰,對所述組密鑰和分發密鑰進行編碼的單元。第二分發密鑰可以對應于數據鏈路組的活動組密鑰。例如,該編碼單元可以包括或者對應于圖1的消息邏輯114、編碼器/解碼器118、圖13的消息邏輯1314、被編程為執行指令1368的處理器1310、用于對組密鑰和分發密鑰進行編碼的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。
此外,第二裝置還包括:用于向數據鏈路組的一個或多個設備發送編碼的組密鑰和編碼的分發密鑰的單元。例如,該發送單元可以包括或者對應于圖1的消息邏輯114、無線接口1340、圖2的發射機212、圖13的收發機1341、天線1342、被編程為執行指令1368的處理器1310、用于發送編碼的組密鑰和編碼的分發密鑰的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。
結合一個或多個所描述的實現,第三裝置包括:用于在數據鏈路組的第一設備處,獲得組密鑰的單元。例如,該獲得單元可以包括或者對應于圖1的密鑰邏輯112、圖13的密鑰邏輯1312、被編程為執行指令1368的處理器1310、用于獲得組密鑰的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。
第三裝置包括:用于從第一設備向數據鏈路組中的設備發送與所述組密鑰相對應的通告消息的單元。例如,該編碼單元可以包括或者對應于圖1的消息邏輯114、第一設備104、圖13的消息邏輯1314、無線接口1340、收發機1341、天線1342、被編程為執行指令1368的處理器1310、用于發送通告消息的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。該通告消息可以包括多播消息,可以經由通信信道(例如,nan通信信道)或者經由數據鏈路組信道,在尋呼窗期間進行發送。
結合一個或多個所描述的實現,第四裝置包括:用于在數據鏈路組的第二設備處,在發現窗期間,監測第一無線信道的單元。例如,該監測單元可以包括或者對應于圖1的消息邏輯114、第一設備104、圖13的消息邏輯1314、無線接口1340、收發機1341、天線1342、被編程為執行指令1368的處理器1310、用于監測無線信道的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。第一無線信道可以包括或者對應于圖3的nan通信信道302或者數據鏈路組信道304。
第四裝置包括:用于在發現窗期間,在第二設備處,從數據鏈路組的第一設備接收通告消息的單元。例如,該接收單元可以包括或者對應于圖1的消息邏輯114、第一設備104、圖13的消息邏輯1314、無線接口1340、收發機1341、天線1342、被編程為執行指令1368的處理器1310、用于接收通告消息的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。
結合一個或多個所描述的實現,第五裝置包括:用于在nan的數據鏈路組的第二設備處,在數據鏈路組的尋呼窗期間,監測與該數據鏈路組相對應的無線信道的單元。例如,該監測單元可以包括或者對應于圖1的消息邏輯114、圖13的消息邏輯1314、無線接口1340、收發機1341、天線1342、被編程為執行指令1368的處理器1310、用于監測無線信道的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。
第五裝置包括:用于在尋呼窗期間,在第二設備處從數據鏈路組的第一設備接收通告消息的單元,其中該通告消息指示組密鑰的生成。例如,該接收單元可以包括或者對應于圖1的消息邏輯114、第一設備104、圖13的消息邏輯1314、無線接口1340、收發機1341、天線1342、被編程為執行指令1368的處理器1310、用于接收通告消息的一個或多個其它結構、設備、電路、模塊或指令、或者其任意組合。該通告消息可以包括多播消息。
可以在包括通信設備、固定位置數據單元、移動位置數據單元、移動電話、蜂窩電話、衛星電話、計算機、平板計算機、便攜式計算機、顯示設備、媒體播放器或者桌上型計算機的系統、設備或者裝置(例如,設備1300)中,實現所公開的實施方式中的一個或多個。替代地或另外地,該設備1300可以包括機頂盒、娛樂單元、導航設備、個人數字助理(pda)、監視器、計算機監視器、電視、調諧器、無線電裝置、衛星無線設備、音樂播放器、數字音樂播放器、便攜式音樂播放器、視頻播放器、數字視頻播放器、數字視頻光盤(dvd)播放器、便攜式數字視頻播放器、衛星、車輛或者集成在車輛中的設備、包括處理器或者用于存儲或獲取數據或計算機指令的任何其它設備或者其組合。再舉一個說明性而非限制性的示例,該系統、設備或裝置可以包括遠程單元,例如,手持型個人通信系統(pcs)單元、諸如具有全球定位系統(gps)能力的設備之類的便攜式數據單元、儀表讀取設備、或者包括處理器或用于存儲或獲取數據或計算機指令的任何其它設備或者其任意組合。
雖然圖1到圖13中的一個或多個根據本公開內容的教示,描繪了系統、裝置、方法或者其組合,但本公開內容并不限于這些示出的系統、裝置、方法或者其組合。如本文所示出或者描述的圖1到圖13中的任何一個的一個或多個功能或組件,可以與圖1到圖13的另一個功能或者組件的一個或多個其它部分相組合。因此,沒有任何一個本文所描述的實施方式應當被解釋成限制性的,本公開內容的實施方式可以進行適當地組合,而不脫離本公開內容的教示內容。
此外,本領域普通技術人員還應當明白,結合本文所公開的實現描述的各種示例性的邏輯框、配置、模塊、電路和算法步驟,均可以實現成電子硬件、處理器執行的計算機軟件或者二者的組合。上面對各種示例性的部件、框、配置、模塊、電路和步驟均圍繞其功能進行了總體描述。至于這種功能是實現成硬件還是實現成處理器可執行指令,取決于特定的應用和對整個系統所施加的設計約束條件。熟練的技術人員可以針對每個特定應用,以變通的方式實現所描述的功能,但是,這種實現決策不應解釋為背離本公開內容的保護范圍。
結合本文所公開的實現描述的方法或算法的步驟,可直接包括在硬件中、由處理器執行的軟件模塊中或者二者的組合中。軟件模塊可以位于隨機存取存儲器(ram)、閃存、只讀存儲器(rom)、可編程只讀存儲器(prom)、可擦除可編程只讀存儲器(eprom)、電子可擦除可編程只讀存儲器(eeprom)、寄存器、硬盤、移動硬盤、壓縮光盤只讀存儲器(cd-rom)或者本領域已知的任何其它形式的非瞬時(例如,非臨時性)存儲介質中。一種示例性的存儲介質連接至處理器,從而使該處理器能夠從該存儲介質讀取信息,并且可向該存儲介質寫入信息。或者,存儲介質也可以是處理器的組成部分。處理器和存儲介質可以位于專用集成電路(asic)中。該asic可以位于計算設備或者用戶終端中。當然,處理器和存儲器件也可以作為分立組件存在于計算設備或用戶終端中。
為使本領域普通技術人員能夠實現或者使用所公開的實施方式,上面圍繞所公開的實施方式進行了描述。對于本領域普通技術人員來說,對這些實施方式的各種修改是顯而易見的,并且,本文所定義的原理也可以在不脫離本公開內容的保護范圍的基礎上適用于其它實施方式。因此,本公開內容并不限于本文所示出的實施方式,而是與如所附權利要求書所規定的原理和新穎性特征的最廣范圍相一致。