專利名稱:一種在集群系統(tǒng)中更新組密鑰的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集群系統(tǒng)安全技術(shù)領(lǐng)域,特別是指一種在集群系統(tǒng)中更新組密鑰的方法。
背景技術(shù):
集群無(wú)線通信系統(tǒng),以下簡(jiǎn)稱集群系統(tǒng),是一種較經(jīng)濟(jì)、較靈活的指揮調(diào)度通信系統(tǒng),廣泛應(yīng)用在政府機(jī)關(guān)、能源交通、機(jī)場(chǎng)碼頭、工礦企業(yè)、消防警察、水利和軍事等單位,以滿足各單位內(nèi)部通信聯(lián)絡(luò)的需要。
集群系統(tǒng)提供最基本的業(yè)務(wù)為語(yǔ)音組呼業(yè)務(wù)(VGCS)。VGCS允許用戶建立到屬于某一給定服務(wù)區(qū)和組標(biāo)識(shí)(GID)的一組用戶的呼叫,業(yè)務(wù)的提供采用半雙工模式,呼叫期間任何成員都可以成為講者,但任一時(shí)刻只允許一個(gè)講者,其他成員為聽(tīng)者。服務(wù)區(qū)可由若干屬于同一移動(dòng)交換中心(MSC)或不同MSC的小區(qū)組成,呼叫時(shí)每個(gè)相關(guān)小區(qū)有一個(gè)組呼信道,其中上行鏈路僅供當(dāng)前講話者使用,可稱為組發(fā)射模式,所有聽(tīng)者守候在下行鏈路上,可稱為組接收模式,組呼信道配置的通知消息在通知信道(NCH)通知信道上廣播。由于同一小區(qū)用戶共享一條下行信道,因而大大節(jié)省了無(wú)線資源。
公安、軍事等高機(jī)密性單位對(duì)于通信保密性的要求較高,要求對(duì)組呼業(yè)務(wù)進(jìn)行端到端加密。由于組呼是一種多對(duì)多的通信,所以必須要求同一群組的每個(gè)成員之間共享組密鑰(KG),用于生成每次組呼時(shí)使用的端到端加密密鑰和完整性保護(hù)密鑰。并且KG和對(duì)應(yīng)的GID保存在每個(gè)用戶的用戶標(biāo)識(shí)模塊(SIM)卡中,網(wǎng)絡(luò)側(cè)也需要保存GID對(duì)應(yīng)的KG。
當(dāng)調(diào)度中心進(jìn)行動(dòng)態(tài)建組時(shí),需要為每個(gè)組成員分發(fā)新組的組密鑰;另外基于安全的考慮,每個(gè)密鑰有一定的使用周期,所以調(diào)度中心也可能發(fā)起周期性的組密鑰更新。此外某些用戶退出群組時(shí),如調(diào)度中心因某部終端被盜而取消了其組權(quán)限,也必須更新其它組成員的組密鑰以保證被取消權(quán)限的用戶不能繼續(xù)參與群組組呼。
現(xiàn)有集群系統(tǒng)中組密鑰的管理方法包括以下幾種技術(shù)方案。
第一種密鑰管理中心為每個(gè)群組分配多個(gè)固定的組密鑰,每個(gè)組密鑰通過(guò)組密鑰標(biāo)識(shí)來(lái)唯一確定。這些固定的組密鑰序列通過(guò)專用SIM卡讀寫(xiě)設(shè)備寫(xiě)入每一組成員的SIM卡中。在進(jìn)行組呼或者組播業(yè)務(wù)時(shí),即需要使用加密功能時(shí),可以由業(yè)務(wù)發(fā)起者或者網(wǎng)絡(luò)選擇組密鑰系統(tǒng)中的組密鑰標(biāo)識(shí),并將所選擇的組密鑰作為加、解密密鑰,并將該密鑰所對(duì)應(yīng)的標(biāo)識(shí)通知群組中每位參與集群業(yè)務(wù)的用戶。
在集群系統(tǒng)中,每個(gè)群組成員并不是固定不變的。當(dāng)群組增加新成員時(shí),如果只是簡(jiǎn)單的將原來(lái)的組密鑰寫(xiě)入新成員的SIM卡,則該新增加的成員可以使用組密鑰解密出以前的群組通信信息。而且,群組中某成員可能已退出該群組,按照規(guī)定該成員不能繼續(xù)參與該群組業(yè)務(wù),但如果組密鑰沒(méi)有及時(shí)得到更新,那么已退出的成員仍然可以解密出群組的保密通信??梢?jiàn),對(duì)組密鑰進(jìn)行安全、及時(shí)的更新對(duì)于保障群組通信安全十分必要。而采用第一種技術(shù)方案更新密鑰時(shí),需要專用的SIM卡讀寫(xiě)設(shè)備,所以很難保證組密鑰及時(shí)得到更新,因此無(wú)法保證集群系統(tǒng)安全通信。
第二種,由組成員協(xié)商產(chǎn)生組密鑰。這種技術(shù)方案的出發(fā)點(diǎn)是將用于兩方密鑰協(xié)商的Diffie-Hellman密鑰交換協(xié)議擴(kuò)展到群組通信。
群組Diffie-Hellman密鑰交換協(xié)議描述如下群組中有n個(gè)成員,分別記為M1、M2...Mn,公開(kāi)一個(gè)大素?cái)?shù)q以及其本原元α,協(xié)議中的運(yùn)算都在有限域GF(q)上進(jìn)行。密鑰協(xié)商分為上行(n-1)輪和下行(n-1)輪兩個(gè)階段,最終每個(gè)成員都能計(jì)算出組密鑰αN1N2...Nn,其中Ni是成員Mi獨(dú)立產(chǎn)生并保密的隨機(jī)數(shù)。
在上行階段,成員Mi計(jì)算其接收到的集合的最后一個(gè)元素的Ni次冪,然后連同接收到的數(shù)值一起發(fā)給Mi+1,而在下行階段,用戶Mi計(jì)算其接收到的集合的最后元素的Ni次冪作為組密鑰,然后計(jì)算集合中其它元素的Ni次冪,并發(fā)送給Mi-1。如表1所示,在上行交互階段第i輪,i=1,...,n-1,Mi向Mi+1發(fā)送{αΠ(Nk|k∈[1,i])|j∈[1,i]};]]>在下行交互階段,第n-1+i輪,i=1,...,n-1Mn-i向Mn-i+1發(fā)送{αΠ(Nk|k∉[i,j])|j∈[1,i]}.]]> 表1以n=5為例,在上行交互階段,用戶M4將接收到集合{αN1,αN1N2,αN1N2N3},他利用αN1N2N3和自己生成的隨機(jī)數(shù)N4計(jì)算出αN1N2N3N4,并發(fā)送{αN1,αN1N2,αN1N2N3,αN1N2N3N4}給M5。M5利用αN1N2N3N4計(jì)算出最終組密鑰αN1N2N3N4N5并保存,此后為下行交互階段,M5計(jì)算中間值集合發(fā)送給M4,用戶M4接收到集合{αN4N5,αN1N4N5,αN1N2N4N5},利用αN1N2N3N5也可以計(jì)算出最終密鑰,然后計(jì)算中間值集合{αN5,αN1N5,αN1N2N5,αN1N2N3N5}發(fā)送給M3。
在這種方案中,組密鑰由n個(gè)組成員協(xié)商產(chǎn)生,總共需要經(jīng)過(guò)2(n-1)次組成員之間的交互。對(duì)于無(wú)線系統(tǒng)而言,每次組成員之間的交互都需要申請(qǐng)信道資源建立連接,這樣必然產(chǎn)生龐大的系統(tǒng)資源消耗;而且,在產(chǎn)生組密鑰的過(guò)程中,每個(gè)組成員都要進(jìn)行多次大數(shù)模冪運(yùn)算,而目前移動(dòng)終端的計(jì)算能力有限,數(shù)值太大有時(shí)將超出移動(dòng)終端的計(jì)算范圍。
第三種,由網(wǎng)絡(luò)側(cè)產(chǎn)生新的組密鑰,利用每個(gè)組成員與網(wǎng)絡(luò)共享的密鑰分別加密新的組密鑰,然后通過(guò)信令發(fā)送給每個(gè)用戶。這種技術(shù)方案可以適應(yīng)于各種情況下的組密鑰更新。當(dāng)組成員數(shù)量龐大時(shí),網(wǎng)絡(luò)側(cè)需要耗費(fèi)很多資源和時(shí)間來(lái)使用不同的密碼逐一加密組密鑰,而逐一通知每個(gè)組成員更新密鑰也要耗費(fèi)大量的信道資源。
綜上所述,如果在現(xiàn)有技術(shù)的集群系統(tǒng)中要增加組成員,或者要進(jìn)行周期性密鑰更新,利用現(xiàn)有逐一更新組密鑰的方法實(shí)現(xiàn)組密鑰更新,速度慢,無(wú)法確保系統(tǒng)安全通信。
發(fā)明內(nèi)容
本發(fā)明的主要目的是提供一種在集群系統(tǒng)中更新組密鑰的方法,在集群系統(tǒng)增加組成員或進(jìn)行周期性更新組密鑰時(shí),能快速更新集群系統(tǒng)中每個(gè)組成員的組密鑰,確保集群系統(tǒng)安全通信。
本發(fā)明提供的一種在集群系統(tǒng)中更新組密鑰的方法包括A.網(wǎng)絡(luò)側(cè)確定新組密鑰,并利用原組密鑰為密鑰,將所述新組密鑰加密得到加密后的組密鑰(SKG);同時(shí)按照一定的算法,根據(jù)原組密鑰和所述新組密鑰計(jì)算出第一摘要;然后廣播攜帶有SKG、第一摘要的組密鑰更新消息;B.收到組密鑰更新消息的終端利用自身保存的原組密鑰解密SKG得到新組密鑰,并且利用與步驟A中相同的算法,根據(jù)自身保存的原組密鑰和自身解密得到的新組密鑰計(jì)算出第二摘要;然后比較第一摘要與第二摘要是否一致,如果一致,則利用自身計(jì)算出的新組密鑰替換原組密鑰,否則,更新失敗。
步驟A所述組密鑰更新消息還包括組標(biāo)識(shí),則步驟B進(jìn)一步包括A1、收到組密鑰更新消息的終端根據(jù)其中的組標(biāo)識(shí),判斷自身是否需要更新組密鑰,如果需要,則執(zhí)行步驟B,否則,不進(jìn)行更新,跳出本流程。
在步驟B中終端更新組密鑰之后,該方法進(jìn)一步包括終端將更新組密鑰成功的結(jié)果通知網(wǎng)絡(luò)側(cè)。
步驟A中所述新組密鑰是網(wǎng)絡(luò)側(cè)產(chǎn)生的隨機(jī)序列。
在步驟B中更新失敗后,該方法進(jìn)一步包括所述終端通知網(wǎng)絡(luò)側(cè)更新失敗。
本發(fā)明用原組密鑰作為密鑰加密新組密鑰,并通過(guò)廣播通知群組原有成員更新組密鑰,極大的提高了工作效率,減少了對(duì)網(wǎng)絡(luò)資源的消耗。并且該方法使用摘要信息保障了密鑰更新信令的完整性,也可以鑒別發(fā)起者的真實(shí)身份,所以安全性、可靠性高。
圖1為實(shí)現(xiàn)本發(fā)明方法的流程示意圖;圖2為實(shí)現(xiàn)本發(fā)明方法的具體實(shí)施例流程示意圖。
具體實(shí)施例方式
由于群組的每個(gè)用戶和網(wǎng)絡(luò)側(cè)已經(jīng)共享原組密鑰KG,用于加密群組用戶間通信,或者用于產(chǎn)生組呼業(yè)務(wù)所需密鑰。因此,在本發(fā)明的方法中,網(wǎng)絡(luò)側(cè)利用每個(gè)組成員和網(wǎng)絡(luò)共享的原組密鑰作為密鑰將新組密鑰加密,然后將其通知每個(gè)組成員,每個(gè)組成員利用自身保存的原組密鑰進(jìn)行解密得到要更新的組密鑰。
參見(jiàn)圖1所示,本實(shí)施例更新組密鑰的具體過(guò)程如下步驟101網(wǎng)絡(luò)側(cè)將自身產(chǎn)生的一個(gè)隨機(jī)數(shù)作為新組密鑰,然后利用原組密鑰為密鑰將該隨機(jī)數(shù)加密得到SKG;同時(shí)按照一定的算法,根據(jù)原組密鑰和該隨機(jī)數(shù)計(jì)算出第一摘要。
步驟102網(wǎng)絡(luò)側(cè)向群組內(nèi)所有成員廣播組密鑰更新消息,其中攜帶有組標(biāo)識(shí)、SKG、第一摘要的組密鑰等。
步驟103收到該組密鑰更新消息的終端根據(jù)其中的組標(biāo)識(shí),判斷自身是否需要更新組密鑰,如果需要,則執(zhí)行步驟104,否則,更新失敗。
步驟104該終端利用自身保存的原組密鑰解密SKG得到新組密鑰,并且該終端按照步驟101中相同的算法,根據(jù)自身保存的原組密鑰和所述新組密鑰計(jì)算出第二摘要。
步驟105該終端比較第一摘要與第二摘要是否一致,如果一致,則利用自身解密出的組密鑰替換組密鑰,否則,更新失敗。
下面結(jié)合附圖和具體實(shí)施例詳細(xì)說(shuō)明本發(fā)明的技術(shù)方案。
本實(shí)施例描述的組密鑰更新方法使用了KG、加密算法fE、解密算法fD和摘要算法H。
參見(jiàn)圖2所示,本實(shí)施例更新組密鑰的具體過(guò)程如下步驟201、當(dāng)網(wǎng)絡(luò)側(cè)決定發(fā)起組密鑰更新和組密鑰分發(fā)流程時(shí),生成一個(gè)隨機(jī)序列作為新組密鑰KG`,并以原組密鑰KG為密鑰,用加密算法fE加密KG`得到加密后的組密鑰SKG,即計(jì)算SKG=fE(KG,KG`)。
步驟202網(wǎng)絡(luò)側(cè)使用摘要函數(shù)H、KG和KG`計(jì)算出第一摘要,DIGT=H(KG`,KG)。
步驟203網(wǎng)絡(luò)側(cè)向所有組成員廣播組密鑰更新信令,其中攜帶參數(shù)GID、SKG、DIGT和KGA,這里,KGA表示組密鑰更新類型,用以區(qū)分不同的組密鑰更新方法。
步驟204每個(gè)終端用原組密鑰KG解密SKG,得到組密鑰rec_KG,即rec_KG=fD(KG,SKG)。
步驟205終端利用rec_KG和KG計(jì)算出第二摘要rec_DIGT,即rec_DIGT=H(rec_KG,KG),并比較DIGT與rec_DIGT是否相同,如果相同,則繼續(xù)步驟206,否則,組密鑰更新失敗,并向網(wǎng)絡(luò)側(cè)發(fā)送組密鑰更新失敗信令。
步驟206終端利用rec_KG更新自身SIM卡中GID所對(duì)應(yīng)的組密鑰。
步驟207終端更新組密鑰成功后,向網(wǎng)絡(luò)側(cè)發(fā)送組密鑰更新成功信令。
步驟208網(wǎng)絡(luò)側(cè)接收到終端的組密鑰更新成功信令后,標(biāo)記該終端所對(duì)應(yīng)的組密鑰已經(jīng)更新。
權(quán)利要求
1.一種在集群系統(tǒng)中更新組密鑰的方法,其特征在于,該方法包括以下步驟A.網(wǎng)絡(luò)側(cè)確定新組密鑰,并利用原組密鑰為密鑰,將所述新組密鑰加密得到SKG;同時(shí)按照一定的算法,根據(jù)原組密鑰和所述新組密鑰計(jì)算出第一摘要;然后廣播攜帶有SKG、第一摘要的組密鑰更新消息;B.收到組密鑰更新消息的終端利用自身保存的原組密鑰解密SKG得到新組密鑰,并且利用與步驟A中相同的算法,根據(jù)自身保存的原組密鑰和自身解密得到的新組密鑰計(jì)算出第二摘要;然后比較第一摘要與第二摘要是否一致,如果一致,則利用自身計(jì)算出的新組密鑰替換原組密鑰,否則,更新失敗。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟A所述組密鑰更新消息還包括組標(biāo)識(shí),則步驟B進(jìn)一步包括A1、收到組密鑰更新消息的終端根據(jù)其中的組標(biāo)識(shí),判斷自身是否需要更新組密鑰,如果需要,則執(zhí)行步驟B,否則,不進(jìn)行更新,跳出本流程。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在步驟B中終端更新組密鑰之后,該方法進(jìn)一步包括終端將更新組密鑰成功的結(jié)果通知網(wǎng)絡(luò)側(cè)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟A中所述新組密鑰是網(wǎng)絡(luò)側(cè)產(chǎn)生的隨機(jī)序列。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,在步驟B中更新失敗后,該方法進(jìn)一步包括所述終端通知網(wǎng)絡(luò)側(cè)更新失敗。
全文摘要
本發(fā)明公開(kāi)了一種在集群系統(tǒng)中更新組密鑰的方法,該方法包括A.網(wǎng)絡(luò)側(cè)確定新組密鑰,并利用原組密鑰為密鑰,將所述新組密鑰加密得到SKG;同時(shí)按照一定的算法,根據(jù)原組密鑰和所述新組密鑰計(jì)算出第一摘要;然后廣播攜帶有SKG、第一摘要的組密鑰更新消息;B.收到組密鑰更新消息的終端利用自身保存的原組密鑰解密SKG得到新組密鑰,并且利用與步驟A中相同的算法,根據(jù)自身保存的原組密鑰和自身解密得到的新組密鑰計(jì)算出第二摘要;然后比較第一摘要與第二摘要是否一致,如果一致,則利用自身計(jì)算出的新組密鑰替換原組密鑰,否則,更新失敗。該方法極大的提高工作效率,減少資源消耗。并且能保障密鑰更新信令的完整性,也可以鑒別發(fā)起者的真實(shí)身份,所以安全性高。
文檔編號(hào)H04Q7/28GK1599485SQ03157439
公開(kāi)日2005年3月23日 申請(qǐng)日期2003年9月19日 優(yōu)先權(quán)日2003年9月19日
發(fā)明者馮凱鋒, 楊學(xué)志, 陳德, 程金能 申請(qǐng)人:華為技術(shù)有限公司