本發(fā)明涉及一種機對機(machine-to-machine,m2m)通信系統(tǒng),尤其涉及用于多個m2m設備與一個服務器之間的相互認證的方法。
背景技術:
機對機(machine-to-machine,m2m)通信在機器之間發(fā)生,帶有計算和通信能力。已有很多應用具有m2m通信能力,例如用于個人健康監(jiān)測、智能跟蹤和供應鏈跟蹤、智能電網、自動售貨機遠程控制等的設備。啟用m2m的設備或終端的數量呈指數增長,預計到2014年會從2008年的5千萬增加到超過2億,到2020年會多達500億。
圖1示出了典型的m2m系統(tǒng)架構,包括m2m設備、m2m網關和m2m認證服務器。在m2m系統(tǒng)中,m2m設備代表末端節(jié)點,例如傳感器,m2m網關代表數據聚合節(jié)點,m2m認證服務器代表對m2m設備進行認證的m2m服務器。m2m網關提供網橋來將m2m設備可通信地耦合到m2m服務器,反之亦然。具體來說,m2m設備與m2m網關直接通信,m2m網關與m2m服務器直接通信。
由于m2m通信的廣泛使用,通信安全非常重要。一個安全問題是如何通過m2m認證服務器來認證m2m設備。隨著4g(第四代移動通信)的使用和5g(第五代移動網絡)的出現,連接設備的數量大幅倍增。作為4g和5g的代表性場景,m2m設備的數量會很龐大,當所有m2m設備在短時間內單獨執(zhí)行認證時,m2m認證服務器的工作量非常巨大。這可能導致認證服務器超負荷而崩潰。因此,急需一種有效且可擴展的認證協(xié)議。
現有認證協(xié)議支持m2m認證服務器同時對一組m2m設備進行認證。
一種現有組認證協(xié)議在“安全ts的組認證機制(groupauthenticationmechanismforsecurityts)”onem2m,sec#11,sec-2014-0314r02中描述并在圖2中示出。圖2的組認證包括下述三個階段:
1.內組認證:內組中的所有m2m設備與m2m網關相互認證并建立安全通道以供進一步通信。
2.外組認證:m2m網關與m2m認證服務器相互認證并建立安全通道以供進一步通信。
3.建立端到端安全通道:m2m認證服務器通過已建立的安全通道,即m2m認證服務器與m2m網關之間的安全通道、m2m網關與各種m2m設備之間的安全通道,向所有m2m設備發(fā)送安全資料?;诎踩Y料以及m2m認證服務器與m2m設備之間的共享密鑰,它們推導出與彼此通信的會話密鑰,即,建立了端到端安全通道。
在上述協(xié)議中,基于onem2m通信架構提出了組認證,其中m2m設備稱為應用服務節(jié)點或應用專用節(jié)點,m2m網關稱為中間節(jié)點,m2m認證服務器稱為基礎設施節(jié)點。
中國專利申請案cn102223231a中描述了另一種組認證協(xié)議。在該協(xié)議中,外組認證在第一階段處理,內組認證在第二階段處理。此外,該協(xié)議基于lte架構,其中m2m設備稱為用戶設備(userequipment,ue),m2m認證服務器稱為lte核心網。
在上述和現有協(xié)議中,存在一種重要的假設,即,m2m網關是可信的。例如,在圖2的組認證協(xié)議中,m2m認證服務器并不直接對m2m設備進行認證。m2m設備僅由m2m網關進行認證,m2m網關將認證成功的m2m設備通知給m2m認證服務器。然后,m2m認證服務器將認為這些m2m設備已認證,因為m2m網關是可信的。因此,m2m認證服務器無法直接對m2m設備進行認證;換言之,組認證協(xié)議不支持m2m認證服務器與m2m設備之間的端到端認證。
該假設引發(fā)了一個安全問題。m2m網關可能并不是很難破壞,因為m2m網關通常部署在戶外。如果攻擊者破壞了m2m網關,則攻擊者可以欺騙m2m認證服務器認為一些m2m設備成功認證,即使這些m2m設備并未成功認證。
技術實現要素:
本發(fā)明實施例提供了一種用于m2m認證服務器和m2m設備的端到端認證協(xié)議,其中所述m2m認證服務器和m2m設備直接相互認證。無需假設m2m網關可信。避免了使用組認證和組標識符。此外,相互認證協(xié)議采用基于對稱密鑰的技術。
提供了一種用于通過服務器認證多個m2m設備的方法。所述方法包括:
使用基于對稱密鑰的技術,基于從網關接收的聚合認證消息對所述多個m2m設備進行服務器認證,所述聚合認證消息基于從所述多個m2m設備分別接收的多個認證消息在所述網關處生成;以及
生成多個認證響應,所述多個認證響應通過所述網關分別發(fā)往所述多個m2m設備,其中所述多個認證響應中的至少一些指定用于所述服務器的設備認證,所述設備認證將使用基于對稱密鑰的技術在所述多個m2m設備中的成功進行服務器認證的m2m設備處執(zhí)行。
提供了一種用于對多個m2m設備進行認證的服務器。所述服務器包括:處理器;以及存儲設備,其存儲供所述處理器執(zhí)行的計算機可讀指令,
其中所述處理器用于:使用基于對稱密鑰的技術,基于從網關接收的聚合認證消息對所述多個m2m設備進行認證,所述聚合認證消息基于從所述多個m2m設備分別接收的多個認證消息在所述網關處生成;生成多個認證響應,所述多個認證響應通過所述網關分別發(fā)往所述多個m2m設備,其中所述多個認證響應中的至少一些指定用于所述服務器的設備認證,所述設備認證將使用基于對稱密鑰的技術在所述多個m2m設備中的成功進行服務器認證的m2m設備處執(zhí)行。
提供了一種用于對服務器進行認證的方法。所述方法包括:
在所述m2m設備處,使用基于對稱密鑰的技術生成用于服務器認證的認證消息;
向網關發(fā)送所述認證消息以與來自多個其它m2m設備的多個其它認證消息聚合,從而生成用于服務器認證的聚合認證消息;
從所述網關接收服務器生成的認證響應,所述認證響應是對所述聚合認證消息進行服務器認證而得到的多個認證響應之一;以及
使用基于對稱密鑰的技術,基于所述服務器生成的認證響應對所述服務器進行設備認證。
提供了一種m2m設備,包括:
處理器;以及存儲設備,其存儲供所述處理器執(zhí)行的計算機可讀指令。所述處理器用于:使用基于對稱密鑰的技術生成用于服務器認證的認證消息;向網關發(fā)送所述認證消息以與來自多個其它m2m設備的多個其它認證消息聚合,從而生成用于服務器認證的聚合認證消息;從所述網關接收服務器生成的認證響應,所述認證響應是對所述聚合認證消息進行服務器認證而得到的多個認證響應之一;以及使用基于對稱密鑰的技術,基于所述服務器生成的認證響應對所述服務器進行設備認證。
提供了一種用于對多個機對機(machine-to-machine,m2m)設備與一個服務器進行相互認證的方法。所述方法包括:
使用基于對稱密鑰的技術,基于分別從所述多個m2m設備接收的多個認證消息,在網關處生成聚合認證消息;
使用基于對稱密鑰的技術,基于從所述網關接收的所述聚合認證消息對所述多個m2m設備進行服務器認證;
在所述服務器處生成分別發(fā)往所述多個m2m設備的多個認證響應;以及
通過所述網關分別向所述多個m2m設備發(fā)送所述多個認證響應,其中所述認證響應中的至少一些指定用于所述服務器的設備認證,所述設備認證將使用基于對稱密鑰的技術在所述多個m2m設備中的成功進行服務器認證的m2m設備處執(zhí)行。
提供了一種用于對多個機對機(machine-to-machine,m2m)設備進行相互認證的系統(tǒng)。所述系統(tǒng)包括:網關和服務器,其中所述網關用于:使用基于對稱密鑰的技術,基于分別從所述多個m2m設備接收的多個認證消息,在網關處生成聚合認證消息,
其中所述服務器用于:使用基于對稱密鑰的技術,基于從所述網關接收的所述聚合認證消息對所述多個m2m設備進行認證;生成分別發(fā)往所述多個m2m設備的多個認證響應,
其中所述網關還用于:分別向所述多個m2m設備發(fā)送所述多個認證響應,其中所述認證響應中的至少一些指定用于所述服務器的設備認證,所述設備認證將使用基于對稱密鑰的技術在所述多個m2m設備中的成功進行服務器認證的m2m設備處執(zhí)行。
附圖說明
下文參考圖示公開本發(fā)明的實施例,在圖示中:
圖1示出了典型的m2m系統(tǒng)架構;
圖2示出了現有組認證協(xié)議;
圖3為根據本發(fā)明的示出聚合認證方法的流程圖;
圖4示出了根據本發(fā)明第一實施例的m2m設備與m2m服務器之間的聚合認證流程;
圖5示出了根據本發(fā)明第二實施例的m2m設備與m2m服務器之間的聚合認證流程;
圖6示出了根據本發(fā)明第三實施例的m2m設備與m2m服務器之間的聚合認證流程;
圖7示出了根據本發(fā)明第四實施例的m2m設備與m2m服務器之間的聚合認證流程;
圖8為示出用于認證設備并找到成功認證的設備的方法的流程圖。
具體實施方式
下文描述中陳述許多具體細節(jié),以對本發(fā)明各實施例進行通徹理解。然而,本領域熟練技術人員將理解,可以在不具有這些具體細節(jié)中的一些或全部的情況下實踐本發(fā)明的實施例。在其它情況下,為了不多余地混淆所描述的實施例的相關方面,并未詳細地描述熟知的過程操作。在圖式中,所有的若干張圖以相同參考標號指代相同或相似的功能或特征。
說明書和權利要求書中使用序數詞“第一”、“第二”、“第三”等來描述公共元素,僅表明提及相似元素的不同實例,并非旨在暗示所描述的元素必須按照給定的時間、空間、排名順序或以任何其它方式排列的順序,除非另有說明。
說明書和權利要求書中使用的本領域技術人員已知的若干概念在下文描述:
·偽隨機函數(pseudorandomfunction,prf)是一種映射兩個不同集合(域和范圍)的有效確定性函數。一個prf僅有一個輸入d(域)和一個隱藏隨機種子(范圍)。當偽隨機函數使用相同的輸入和種子多次運行時,其始終輸出相同的值。盡管如此,對于任意輸入,由于隨機種子,輸出看起來是隨機的。
·密鑰導出函數(keyderivationfunction,kdf):密鑰導出函數使用偽隨機函數從主密鑰等秘值或者密碼或通行碼等其它已知信息推導出一個或多個私密密鑰。
·消息認證碼(messageauthenticationcode,mac):密碼學中的消息認證碼是用于對消息進行認證并提供消息的完整性和真實性保證的一小段信息。完整性保證檢測偶然的和有意的消息變化,而真實性保證確認消息的來源。
·布隆過濾器(bloomfilter,bf):布隆過濾器是一種節(jié)省空間的數據結構,用于測試一個元素是否是集合成員。假正匹配是可能的,但是假負是不可能的。布隆過濾器是一個m比特的陣列bf,用于表示具有n個元素的集合s={x1,x2,…,xn},bf中的所有比特最初都設為零。存在k個不同的哈希函數hi(),每個哈希函數將某個集合元素映射到均勻隨機分布的m個陣列位置中的一個。存在兩個基本操作:添加和查詢。
要將元素x添加到過濾器bf中,僅需將比特bf[hi(x)]設為1,其中1≤i≤k。
要查詢元素y(測試y是否在集合中),僅需測試是否所有比特bf[hi(y)]都為1。如果所有比特都為1,則認為元素y在集合中;如果任何一個比特為0,則該元素肯定不在集合中。
本發(fā)明實施例提供了一種用于m2m認證服務器和m2m設備的端到端認證協(xié)議,其中m2m認證服務器和m2m設備直接相互認證。無需假設m2m網關可信。
圖3為根據本發(fā)明的示出聚合認證方法的流程圖300。
在步驟301中,在待認證的每個m2m設備(下文稱為“設備”)處生成認證消息。
在步驟302中,每個設備將其認證消息發(fā)送給m2m網關(下文稱為“網關”)。
在步驟303中,網關從各設備接收認證消息。網關使用基于對稱密鑰的技術從接收的認證消息生成一個或多個聚合認證消息。該聚合可在以下情況之后發(fā)生:預配置的時間間隔已過去,或者從網絡中的所有設備收到認證消息,或者收到一定數量的認證消息,或者滿足其它標準,或者以上幾種情況的組合。
在步驟304中,網關向m2m認證服務器(下文稱為“服務器”)發(fā)送聚合認證消息。
在步驟305中,服務器使用基于對稱密鑰的技術,基于聚合認證消息對各設備進行認證。
在步驟306中,服務器基于步驟305的認證結果生成響應集,響應集包含服務器生成的分別發(fā)往各設備的認證響應。
在步驟307中,服務器向網關發(fā)送響應集。
在步驟308中,網關向每個設備發(fā)送服務器生成的發(fā)往該特定設備的對應認證響應。
在步驟309中,在任一設備中,如果接收的服務器生成的對應認證響應包含錯誤信息,則表明該特定設備在步驟305中的服務器認證已失敗。因此,該特定設備的認證流程停止或中斷。在任一設備中,如果接收的服務器生成的對應認證響應不包含錯誤信息,或者該認證響應包含成功指示,則表明該特定設備在步驟305中的服務器認證已成功,因此流程順序繼續(xù)使用基于對稱密鑰的技術在每個成功認證的設備處對服務器進行設備認證。
在步驟310中,對于任意設備,如果設備(在步驟305中)的服務器認證和服務器(在步驟309中)的設備認證都成功,則通過網關在該設備與服務器之間建立安全通道。
從上述內容顯而易見,步驟301至304涉及各設備基于聚合認證消息的服務器認證;隨后的步驟305至309涉及服務器的設備認證,服務器的設備認證在已由服務器在步驟305中成功認證的每個設備處分別進行。
圖4示出了根據本發(fā)明第一實施例的m2m設備與m2m服務器之間的聚合認證流程。該流程基于的是基于對稱密鑰的技術。
本實施例的先決條件包括:m2m認證服務器和m2m設備i彼此共享密鑰ki和設備標識idi;存在n個待認證的m2m設備。
在步驟401中,在待認證的每個設備i處生成認證消息。具體來說,具有標識idi的設備i選擇新參數pi,例如時間戳,并計算臨時密鑰ki1=kdf(ki,pi)和設備生成的macti=funmac(ki1,idi),其中funmac是mac算法,例如,funmac是aes-cmac算法。認證消息包括idi、pi和ti。
在步驟402中,每個設備i向網關發(fā)送各自的認證消息(idi,pi,ti)。
在步驟403中,在從所有設備接收認證消息{(id1,p1,t1),…,(idn,pn,tn)}后,網關將接收的mac{t1,…,tn}聚合為新的或聚合mact=cfun(t1,…,tn),其中cfun是壓縮函數,例如t=t1⊕…⊕tn,或者t=hash(t1||…||tn),其中hash是密碼哈希函數。輸入是多個字符串的壓縮函數輸出長度較短的單個字符串。這里,為了保證聚合認證協(xié)議的安全,可采用t=t1⊕…⊕tn或t=hash(t1||…||tn)。該聚合使用基于對稱密鑰的技術來執(zhí)行。
在步驟404中,網關向服務器發(fā)送聚合認證消息({(idi,pi)},t)。該聚合認證消息包括n個設備的idi和pi以及聚合mact。
在步驟405中,服務器基于聚合認證消息,使用基于對稱密鑰的技術來執(zhí)行n個設備的認證。具體來說,服務器找到成功認證的設備,將這些成功設備的標識id添加到成功集ss中。對于服務器認證失敗的那些設備,將標識id添加到失敗集fs中。在說明書和權利要求書中將認識到,提到將設備添加到成功集ss或失敗集fs中就等同于將設備的標識id添加到成功集ss或失敗集fs中。稍后將結合圖8描述一種用于認證設備并找到成功認證的設備的方法。
在步驟406中,服務器基于步驟405的認證結果生成響應集ri=(si,fi),其中ri包括服務器生成的多個認證響應,si包括針對成功集ss中的所有設備的響應信息,fi包括針對失敗集fs中的所有設備的響應信息:
·si={(idi,p’i,t’i)},其中idi在ss中,p’i是新參數,k’i1=kdf(ki,p’i),服務器生成的mact’i=funmac(k’i1,idi)。針對設備idi計算會話密鑰k’i=kdf(ki,pi⊕p’i),其中kdf是密鑰導出函數。
·fi={(idj,aelj,p’j,t’j)},其中idj在fs中,aelj是設備idj的認證錯誤信息,p’j是新參數,k’j1=kdf(kj,p’j),服務器生成的mact’j=funmac(k’j1,idj||aelj)。
在步驟407中,服務器向網關發(fā)送響應集ri=(si,fi)。
在步驟408中,網關向每個設備i發(fā)送響應集中的服務器生成的對應認證響應(idi,p’i,t’i)或(idi,aeli,p’i,t’i)。
步驟409適用于失敗集中包含的設備,即,步驟405中服務器認證失敗的設備。在步驟409中,如果在一個設備處接收的服務器生成的認證響應是(idi,aeli,p’i,t’i),其中錯誤信息是aeli,則該設備的認證失敗,方法停止。
步驟410適用于成功集中包含的設備,即,步驟405中認證成功的設備。在步驟410中,使用基于對稱密鑰的技術在每個成功進行服務器認證的設備處執(zhí)行服務器的認證。
具體來說,在每個成功認證的設備處,設備確定服務器生成的認證響應(idi,p’i,t’i)中包含的p’i和t’i是否都有效。如果p’i和t’i中的任意一個無效,則認證失敗。如果p’i和t’i都有效,則設備計算會話密鑰k’i=kdf(ki,pi⊕p’i)。
用于檢查新參數pi的有效性的方法取決于在認證中使用的新參數的類型。例如,如果新參數是時間戳,則當pi不在預先確定的范圍中時,pi是無效的。
用于確定mact’i的有效性的方法描述如下:
(i)計算kai1=kdf(ki,p’i)和設備生成的mactai=funmac(kai1,idi)。
(ii)設備確定服務器生成的mact’i與設備生成的mactai是否相同。如果服務器生成的mact’i與設備生成的mactai相同,則確定服務器生成的mact’i有效。如果服務器生成的mact’i與設備生成的mactai不同,則確定服務器生成的mact’i無效。
圖5示出了根據本發(fā)明第二實施例的m2m設備與m2m服務器之間的聚合認證流程。第二實施例與第一實施例相似。第二實施例還包括使網關與服務器共享私密密鑰k’。網關在向服務器發(fā)送聚合認證消息之前的任意時間,即,在步驟404之前的任意時間,執(zhí)行與認證服務器的相互認證,并使用共享密鑰k’在它們之間建立安全通道。在相互認證之后,網關與服務器之間的所有通信,即步驟404、407等,都將通過該安全通道進行。
圖6示出了根據本發(fā)明第三實施例的m2m設備與m2m服務器之間的聚合認證流程。第三實施例還包括使每個設備與網關共享私密密鑰k”i。每個設備在向網關發(fā)送認證消息之前的任意時間,即,在步驟402之前的任意時間,執(zhí)行與網關的相互認證,并使用共享密鑰k”i在它們之間建立安全通道。在相互認證之后,設備與網關之間的所有通信,即步驟402、408等,都將通過對應安全通道進行。
圖7示出了根據本發(fā)明第四實施例的m2m設備與m2m服務器之間的聚合認證流程。第四實施例可視為第二實施例與第三實施例的組合。
在第四實施例中,網關與服務器共享私密密鑰k’。網關在向服務器發(fā)送聚合認證消息之前的任意時間,即,在步驟404之前的任意時間,執(zhí)行與認證服務器的相互認證,并使用共享密鑰k’在它們之間建立安全通道。在相互認證之后,網關與服務器之間的所有通信,即步驟404、407等,都將通過該安全通道進行。
在第四實施例中,每個設備與網關共享私密密鑰k”i。每個設備在向網關發(fā)送認證消息之前的任意時間,即,在步驟402之前的任意時間,執(zhí)行與網關的相互認證,并使用共享密鑰k”i在它們之間建立安全通道。在相互認證之后,設備與網關之間的所有通信,即步驟402、408等,都將通過對應安全通道進行。
圖8為示出用于認證設備并找到成功認證的設備的方法的流程圖,該方法可在上述步驟405中執(zhí)行。
圖8的方法的先決條件包括:服務器已收到聚合認證消息({(idi,pi)},t)。
在步驟801中,服務器創(chuàng)建兩個空集,即成功集ss和失敗集fs,它們將分別存儲成功進行服務器認證的設備的標識id和未成功進行服務器認證的設備的標識id。在說明書和權利要求書中,提到將成功進行服務器認證的設備存儲在成功集ss中就等同于將成功進行服務器認證的設備的標識id存儲在成功集ss中;提到將未成功進行服務器認證的設備存儲在失敗集fs中就等同于將未成功進行服務器認證的設備的標識id存儲在失敗集fs中。
在步驟802中,服務器基于聚合認證消息({(idi,pi)},t)確定pi是否對所有設備i都有效。如果確定pi無效,則將該設備的標識idi添加到fs。
在步驟803中,服務器確定失敗集fs是否為空。如果失敗集fs不為空,則流程順序前進到步驟804。如果失敗集fs為空,則流程前進到步驟806。
在步驟804中,服務器可選擇一種用于無效新參數的錯誤處理方法。服務器可根據其它條件選擇前進到用于處理參數錯誤的第一方法(步驟804)還是用于處理參數錯誤的第二方法(步驟806)。
在步驟805中,用于處理參數錯誤的第一方法包括將所有設備的標識id添加到失敗集fs中,然后流程順序前進到步驟811,在步驟811中,圖8的流程順序結束。
在步驟806中,服務器確定聚合設備生成mact是否有效。確定聚合設備生成mact的有效性的流程描述如下:
(i)針對所有設備i計算kbi1=kdf(ki,pi)和tbi=funmac(kbi1,idi),并將服務器生成的所有mactbi聚合為聚合mactb。
(ii)服務器確定聚合設備生成mact與聚合服務器生成mactb是否相同。如果聚合設備生成mact與聚合服務器生成mactb相同,則確定聚合設備生成mact有效。如果聚合設備生成mact與聚合服務器生成mactb不同,則確定聚合服務器生成mact無效。
如果確定聚合設備生成mact有效,則流程順序前進到步驟811,在步驟811中,圖8的流程順序結束。如果聚合設備生成mact無效,則流程順序前進到步驟807。
在步驟807中,服務器可選擇一種用于無效mac的錯誤處理方法。服務器可根據其它條件選擇前進到用于處理mac錯誤的第一方法(步驟808)還是用于處理mac錯誤的第二方法(步驟809)還是用于處理mac錯誤的第三方法(步驟810)。
在步驟808中,用于處理mac錯誤的第一方法包括將所有設備的標識id添加到失敗集fs中,然后流程順序前進到步驟811,在步驟811中,圖8的流程順序結束。
在步驟809中,用于處理mac錯誤的第二方法需要在服務器與網關之間通信。第二mac錯誤處理流程描述如下:
(i)服務器向網關發(fā)送消息以請求未包含在失敗集fs中的所有設備的認證信息。
(ii)網關向認證服務器發(fā)送詳細的認證信息{(idi,pi,ti)}。
(iii)服務器分別或在非聚合的基礎上確定設備生成的macti的有效性。如果ti無效,則將對應設備的標識idi添加到失敗集fs中;如果ti有效,則將設備標識idi添加到成功集ss中。
為了確定ti的有效性,服務器首先計算k’i1=kdf(ki,pi)和t’i=mac(k’i1,idi),然后確定設備生成的macti與服務器生成的mact’i是否相同。如果設備生成的macti與服務器生成的mact’i相同,則確定ti有效。如果設備生成的macti與服務器生成的mact’i不同,則確定服務器生成的mact’i無效。
當步驟809完成時,流程順序前進到步驟811,在步驟811中,圖8的流程順序結束。
在步驟810中,用于處理mac錯誤的第三方法需要在服務器與網關之間通信。該mac錯誤處理流程描述如下:
(i)對于未包含在失敗集fs中的設備,服務器向網關發(fā)送對基于布隆過濾器的對應認證信息的請求。
(ii)網關基于認證信息{(idi,pi,ti)}創(chuàng)建布隆過濾器bf,其中idi未包含在fs中,即,將所有ti添加到布隆過濾器bf中,其中的所有比特最初都為0。
(iii)網關向服務器發(fā)送創(chuàng)建的布隆過濾器bf。
(iv)服務器創(chuàng)建兩個臨時集合:臨時成功集tss和臨時失敗集tfs。針對所有設備i計算kci1=kdf(ki,pi)和tci=funmac(kci1,idi),并在bf中查詢tci。如果服務器生成的mactci存在于bf中,則將對應的設備標識idi添加到tss中。如果服務器生成的mactci不在bf中,則將對應的設備標識idi添加到tfs中。
(v)服務器向網關發(fā)送tss。
(vi)對于tss中的所有設備標識idi,網關使用與圖4的步驟403中相同的方法基于設備生成的macti來計算聚合t’。
(vii)網關向服務器發(fā)送聚合mact’。
(viii)服務器檢查聚合mact’是否有效。如果聚合mact’有效,則將tss中的所有設備標識和其它信息都添加到ss中,將tfs中的所有設備標識和其它信息都添加到fs中。如果聚合mact’無效,則將tss和tfs中的所有設備標識和其它信息都添加到fs中。
確定t’是否有效的方法與步驟806相似,但是僅針對tss中的設備標識idi。當步驟810完成時,流程順序前進到步驟811,在步驟811中,圖8的流程順序結束。
步驟811引出圖4的步驟406,其中聚合認證如圖4的流程順序中所描述的那樣繼續(xù)。
雖然圖8包括各種處理新參數錯誤和處理mac錯誤的方法,但是可以認識到,在本發(fā)明的某些實施方式中,可在結合或不結合其它可能的錯誤處理方法的情況下使用上述部分或全部錯誤處理方法。
通過本發(fā)明,認證服務器與一組設備進行相互認證,并為每個設備建立獨有的會話密鑰。因此,本發(fā)明提供的優(yōu)勢包括但不限于以下:
(i)在本發(fā)明中,服務器僅基于聚合認證消息對多個設備進行認證。因此,服務器的認證工作量,包括通信和計算開銷,得到明顯降低。
(ii)此外,服務器接收的認證消息是聚合來自各設備的認證消息而得到的。因此,網關不可能偽造聚合認證消息來欺騙服務器,所以不要求網關節(jié)點是可信的。
本發(fā)明的實施例可應用到任何包括設備(或終端)、網關和認證服務器的通信系統(tǒng)。通信系統(tǒng)可以是固定網絡或移動網絡。例如,如果本發(fā)明應用于電信網絡,則運營商網絡可以通過網關對多個用戶設備(userequipment,ue)進行認證。
本領域熟練技術人員根據對本說明書的考量和對本發(fā)明的實踐將清楚其它實施例。此外,出于描述明確性的目的使用了某些術語且這些術語不會限制本發(fā)明的所揭示實施例。上文描述的實施例和特征應被視為示例性的。