本發(fā)明涉及集群通信領(lǐng)域,尤其涉及一種集群組根密鑰更新方法。
背景技術(shù):
多媒體數(shù)字集群系統(tǒng)主要用于行業(yè)專網(wǎng),在行業(yè)專網(wǎng)中對(duì)業(yè)務(wù)的通信安全有比較高的要求,所以多媒體數(shù)字集群系統(tǒng)中對(duì)于集群組呼業(yè)務(wù)會(huì)設(shè)計(jì)空中接口加密或者端到端加密來(lái)保障用戶的信息通信安全。
無(wú)論是對(duì)集群組呼進(jìn)行空中接口加密還是端到端加密,目前公開的技術(shù)都是采用為集群組分配集群組根密鑰的密鑰管理方式,此集群組根密鑰在一段時(shí)間內(nèi)是不變的。集群組根密鑰的更新方式有兩種:網(wǎng)絡(luò)側(cè)定時(shí)更新、發(fā)生動(dòng)態(tài)重組業(yè)務(wù)觸發(fā)集群組根密鑰更新。如果組成員都處于空閑態(tài),直接發(fā)送集群組根密鑰更新進(jìn)行更新即可。但是如果此時(shí)該組正在組呼中,直接進(jìn)行密鑰更新有可能影響到現(xiàn)有組呼業(yè)務(wù)。
因此希望提出一種有效的集群組根密鑰更新方法,使得密鑰更新不能影響到現(xiàn)有組呼業(yè)務(wù),并且如果是發(fā)生了動(dòng)態(tài)重組業(yè)務(wù),還希望新加入該集群組的用戶仍然能夠在接收到遲后進(jìn)入尋呼的時(shí)候加入到組呼中。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提出一種集群組根密鑰更新方法,該方法包括:
網(wǎng)絡(luò)側(cè)觸發(fā)集群組根密鑰更新后,如果集群組正在組呼中,則網(wǎng)絡(luò)側(cè)和終端側(cè)都記錄當(dāng)前根密鑰和更新根密鑰,本次組呼仍然使用當(dāng)前根密鑰,更新根密鑰在本次組呼釋放之后再激活。
上述方法中,如果網(wǎng)絡(luò)側(cè)多次觸發(fā)了集群組的根密鑰更新,網(wǎng)絡(luò)側(cè)和終端側(cè)都只記錄當(dāng)前根密鑰和最后一次更新根密鑰。
優(yōu)選的,上述方法可以具體為:
網(wǎng)絡(luò)側(cè)觸發(fā)集群組根密鑰更新后,向集群組的組成員發(fā)送點(diǎn)對(duì)點(diǎn)的集群組根密鑰更新消息,所述消息中攜帶集群組標(biāo)識(shí)和更新的根密鑰信息,網(wǎng)絡(luò)側(cè)還判斷集群組是否在組呼中:如果不在,則立即激活更根密鑰;如果在,則保存 更新根密鑰,在本次組呼釋放之后再激活,并且在所述集群組根密鑰更新消息中,還攜帶當(dāng)前的根密鑰信息;這里,所述根密鑰信息可以包括根密鑰和其對(duì)應(yīng)的密鑰標(biāo)識(shí);所述集群組根密鑰更新消息可以與集群組信息更新消息合并為一條消息;
終端為每個(gè)集群組保存一個(gè)根密鑰列表,列表保存兩條記錄,第一條用于記錄當(dāng)前的根密鑰信息,第二條用于記錄更新的根密鑰信息;終端接收到集群組根密鑰更新消息后,判斷自己是否已經(jīng)是該集群組成員:如果是,則將接收到的更新的根密鑰信息保存為根密鑰列表的第二條記錄;如果不是,則新建該集群組的根密鑰列表,并將接收到的當(dāng)前的根密鑰信息保存為第一條記錄,將接收到的更新的根密鑰信息保存為第二條記錄;
終端接收到網(wǎng)絡(luò)側(cè)的集群組尋呼后,將集群組尋呼中的根密鑰信息與該集群組的根密鑰列表中的第一條記錄進(jìn)行比較:如果一致,則使用第一條記錄中的根密鑰;如果不一致,則將第一條記錄從根密鑰列表中刪除,將第二條記錄保存為第一條記錄,然后再將集群組尋呼中的根密鑰信息與該集群組的根密鑰列表中的第一條記錄進(jìn)行比較:如果一致,則使用第一條記錄中的根密鑰,如果不一致,則終端從該集群組中退出。
采用本發(fā)明后,對(duì)于正處于集群組呼的集群組,集群組根密鑰的更新不僅不會(huì)影響到現(xiàn)有組呼,而且可以保證新加入該集群組的用戶能夠在接收到遲后進(jìn)入尋呼后加入到組呼中。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例的集群組根密鑰更新流程圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然, 所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例;需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本示例以McLTE系統(tǒng)為例來(lái)說(shuō)明集群組根密鑰更新的實(shí)現(xiàn)過(guò)程。McLTE系統(tǒng)中包括HLR(用戶歸屬位置寄存器)、TCF(集群組呼業(yè)務(wù)控制中心)和UT(集群終端)等網(wǎng)元。HLR保存了用戶以及集群組信息,調(diào)度臺(tái)在建立集群組時(shí),HLR為每個(gè)集群組生成集群組根密鑰GK,并且分配密鑰標(biāo)識(shí)GKID用來(lái)區(qū)分同一個(gè)集群組的不同GK。
本實(shí)施例中,網(wǎng)絡(luò)側(cè)觸發(fā)集群組根密鑰更新后,如果集群組正在組呼中,則本次組呼仍然使用當(dāng)前根密鑰,更新根密鑰在本次組呼釋放之后再激活。圖1為本實(shí)施例的集群組根密鑰更新流程圖,具體說(shuō)明如下:
步驟101、HLR根據(jù)定時(shí)器或者動(dòng)態(tài)重組業(yè)務(wù)觸發(fā),對(duì)集群組GID1的根密鑰進(jìn)行更新,生成新的根密鑰的信息,更新后的集群組根密鑰記為NewGK,新的密鑰標(biāo)識(shí)記為NewGKID,然后HLR向該集群組的所有組成員發(fā)送點(diǎn)對(duì)點(diǎn)的集群組根密鑰更新消息;
本實(shí)施例的集群組根密鑰更新消息與集群組信息更新消息合并為一條消息,即HLR向該集群組的所有組成員發(fā)送Group Information Update command消息,攜帶集群組標(biāo)識(shí)、NewGKID和NewGK,每個(gè)用戶的Group Information Update command消息首先發(fā)送到TCF。
步驟102、TCF判斷GID1是否在組呼中:如果不在,則直接透?jìng)鱃roup Information Update Command消息給UT;如果在,則TCF將GID1當(dāng)前所用的GKID和GK增加到Group Information Update Command消息中,然后再發(fā)送給UT。從該步驟可以看出,當(dāng)集群組空閑時(shí),由于UT不需要知道原來(lái)的密鑰,那么直接發(fā)送新的密鑰即可;當(dāng)集群組處于呼叫中時(shí),由于UT還需要知道原來(lái)的密鑰,那么消息中將發(fā)送兩組GK信息。
步驟103、終端為每個(gè)集群組都保存一個(gè)根密鑰列表GKList,GKList只保存兩條記錄,每條記錄包括GKID和GK,第一條用于記錄當(dāng)前組呼使用的GK;第二條用于記錄更新的GK。UT接收到Group Information Update Command消息,判斷自己是否已經(jīng)是集群組GID1成員:如果是,則直接將NewGKID和 NewGK更新到GKList的第二條記錄中;如果不是,則UT為GID1建立GKList,將消息中的NewGK和NewGKID保存為GKList的第二條記錄,如果消息中還攜帶GKID和GK,則將GKID和GK保存為GKList的第一條記錄;然后UT返回Group Information Update Response消息給TCF。
步驟104、TCF發(fā)送Group Information Update Response消息給HLR。
步驟105、HLR再發(fā)送Group Data Update Request消息給TCF;
步驟106、TCF接收到Group Data Update Request消息后,判斷GID1是否在組呼中:如果在,則將NewGKID和NewGK保存為待激活根密鑰,在本次組呼釋放之后再激活;如果不在,則直接使用NewGKID和NewGK為激活根密鑰;TCF返回Group Data Update Response消息給HLR。
上述步驟103和106,在集群組呼持續(xù)過(guò)程中如果HLR觸發(fā)了多次集群組的根密鑰更新,比如發(fā)生了多次動(dòng)態(tài)重組業(yè)務(wù),則TCF和UT都只記錄當(dāng)前組呼使用的集群組根密鑰和最后一次更新的集群組根密鑰。
步驟107、TCF向UT發(fā)送集群組尋呼,UT接收到TCF的集群組尋呼后,將集群組尋呼中的GKID與該集群組的GKList中的第一個(gè)GKID進(jìn)行比較:如果一致,則使用第一個(gè)GKID對(duì)應(yīng)的GK;如果不一致,則判斷第一條根密鑰信息無(wú)效,直接將第一條記錄從GKList中刪除,將第二條記錄保存為第一條記錄,然后再將集群組尋呼中的GKID與該集群組的GKList中的第一條記錄進(jìn)行比較:如果一致,則使用第一個(gè)GKID對(duì)應(yīng)的GK,如果不一致,則終端從該集群組中退出。
本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
最后應(yīng)說(shuō)明的是:以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。