本申請(qǐng)涉及消息層大規(guī)模群組加密,特別是涉及一種自信任群組密鑰協(xié)商方法、系統(tǒng)、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、在大規(guī)模動(dòng)態(tài)用戶的長期數(shù)據(jù)流加密通信場景中,消息層加密傳輸協(xié)議(mls)憑借群組密鑰易構(gòu)建、支持組員動(dòng)態(tài)更新、具備前向安全等特性,成為核心技術(shù)選擇,顯著優(yōu)于傳統(tǒng)?tls?協(xié)議。mls?的核心是群組密鑰協(xié)商方法。當(dāng)前?ietf?推行的相關(guān)框架草案,雖在密碼算法通用性、密鑰安全性、用戶動(dòng)態(tài)管理擴(kuò)展性上有解決方案,但存在明顯局限:協(xié)商過程復(fù)雜導(dǎo)致交互慢、開銷大;且要求用戶預(yù)先與組管理者完成身份證書交互和認(rèn)證。這使得該框架在低帶寬、大規(guī)模自組織網(wǎng)絡(luò)中難以適用,此類網(wǎng)絡(luò)中,有限的帶寬資源無法承載復(fù)雜交互,節(jié)點(diǎn)的動(dòng)態(tài)性也與預(yù)設(shè)的證書認(rèn)證流程沖突,亟需一種無需依賴預(yù)先證書交互的自信任密鑰協(xié)商方案,以適配場景需求。
技術(shù)實(shí)現(xiàn)思路
1、基于此,有必要針對(duì)上述技術(shù)問題,提供一種能夠在帶寬資源有限,且大規(guī)模的自組織網(wǎng)絡(luò)群組中的自信任群組密鑰協(xié)商方法、系統(tǒng)、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)。
2、一種自信任群組密鑰協(xié)商方法,所述方法實(shí)施于多個(gè)用戶之間,各用戶均持有由私鑰生成機(jī)構(gòu)頒發(fā)的自信任標(biāo)識(shí)私鑰,并將身份標(biāo)識(shí)作為自信任公鑰,在各所述用戶之中確定一用戶作為群主,所述方法實(shí)施于群主,包括:
3、發(fā)布自身身份標(biāo)識(shí)和群組編碼;
4、接收請(qǐng)求加入群組的申請(qǐng)信息,根據(jù)申請(qǐng)信息中的用戶身份標(biāo)識(shí)以及接收到的申請(qǐng)信息數(shù)量,構(gòu)建群組密鑰協(xié)商樹,以組成自信任群組,在構(gòu)建所述群組密鑰協(xié)商樹時(shí),生成葉子節(jié)點(diǎn)數(shù)量與群組成員總數(shù)一致的二叉樹,對(duì)所述二叉樹的各葉子節(jié)點(diǎn),根據(jù)對(duì)應(yīng)的成員的身份標(biāo)識(shí)生成公私鑰對(duì),并逐層向上通過密鑰運(yùn)算生成各層級(jí)父節(jié)點(diǎn)的公私鑰對(duì),直至得到根節(jié)點(diǎn)密鑰;
5、向自信任群組中其他成員通告與所述群組密鑰協(xié)商樹相關(guān)的狀態(tài)信息,使得各成員根據(jù)所述狀態(tài)信息中與自身相關(guān)的狀態(tài)信息計(jì)算得到群組通信密鑰,并根據(jù)所述群組通信密鑰與自信任群組內(nèi)的其他成員進(jìn)行通信。
6、在其中一實(shí)施例中,所述私鑰生成機(jī)構(gòu),根據(jù)用戶的身份標(biāo)識(shí)采用雙線性映射友好的橢圓曲線群運(yùn)算構(gòu)造所述自信任標(biāo)識(shí)私鑰。
7、在其中一實(shí)施例中,在構(gòu)建所述群組密鑰協(xié)商樹時(shí):
8、根據(jù)自信任群組中成員數(shù)量得到所述二叉樹的葉子節(jié)點(diǎn)數(shù)量與深度;
9、將各葉子節(jié)點(diǎn)從左至右的順序?qū)θ褐骱透鞒蓡T進(jìn)行編號(hào),將第一個(gè)葉子節(jié)點(diǎn)表示群主,建立成員身份標(biāo)識(shí)與葉子節(jié)點(diǎn)編號(hào)的雙向映射關(guān)系,并生成對(duì)應(yīng)的身份標(biāo)識(shí)與編號(hào)表;
10、根據(jù)隨機(jī)參數(shù),生成群主自身對(duì)應(yīng)葉子節(jié)點(diǎn)的公私鑰對(duì),根據(jù)各成員的身份標(biāo)識(shí)通過雙線性映射運(yùn)算生成對(duì)應(yīng)編碼的葉子節(jié)點(diǎn)的私鑰,對(duì)所述私鑰進(jìn)行基礎(chǔ)點(diǎn)運(yùn)算得到對(duì)應(yīng)的公鑰;
11、從二叉樹的葉子節(jié)點(diǎn)開始,將相鄰的兩個(gè)節(jié)點(diǎn)作為一對(duì)兄弟節(jié)點(diǎn),利用兄弟節(jié)點(diǎn)的公私鑰對(duì)進(jìn)行dh運(yùn)算和哈希運(yùn)算計(jì)算,得到上一層中對(duì)應(yīng)父節(jié)點(diǎn)的公私鑰對(duì),直至得到所述群組根節(jié)點(diǎn)密鑰。
12、在其中一實(shí)施例中,各成員根據(jù)與所述群組密鑰協(xié)商樹相關(guān)的狀態(tài)信息中與自身相關(guān)的狀態(tài)信息,計(jì)算群組通信密鑰時(shí):
13、所述群組密鑰協(xié)商樹的狀態(tài)信息包括:所述身份標(biāo)識(shí)與編號(hào)表、群組公鑰樹、群組更新周期以及群組更新序號(hào);
14、各成員根據(jù)群主身份標(biāo)識(shí)以及己方的自信任標(biāo)識(shí)私鑰進(jìn)行bdh運(yùn)算,得到對(duì)應(yīng)葉子節(jié)點(diǎn)的私鑰;
15、在所述身份標(biāo)識(shí)與編號(hào)表中,根據(jù)各成員自身的身份標(biāo)識(shí)查找到對(duì)應(yīng)的編號(hào),依據(jù)編號(hào)在所述群組公鑰樹中查詢從對(duì)應(yīng)葉子節(jié)點(diǎn)到根節(jié)點(diǎn)的路徑節(jié)點(diǎn)集合,對(duì)于所述路徑節(jié)點(diǎn)集合中的每個(gè)節(jié)點(diǎn),查詢其對(duì)應(yīng)的兄弟節(jié)點(diǎn)并形成列表;
16、根據(jù)所述列表中的兄弟節(jié)點(diǎn)的公鑰,依次進(jìn)行dh運(yùn)算和哈希運(yùn)算,得到所述群組根節(jié)點(diǎn)密鑰;
17、根據(jù)所述群組根節(jié)點(diǎn)密鑰以及群組更新序號(hào)進(jìn)行計(jì)算,得到群組通信密鑰。
18、在其中一實(shí)施例中,所述方法還包括:按照所述群組更新周期對(duì)所述群組通信密鑰,通過更新所述群組更新序號(hào)進(jìn)行周期性更新。
19、在其中一實(shí)施例中,所述方法包括當(dāng)有新用戶加入到所述自信任群組中時(shí):
20、所述新用戶,向所述群主發(fā)送請(qǐng)求加入群組的申請(qǐng)信息;
21、所述群主,根據(jù)所述群組公鑰樹和新成員編號(hào),對(duì)所述群組密鑰協(xié)商樹進(jìn)行更新,并向所述自信任群說組中的其他成員和新成員,通告更新后的群組密鑰協(xié)商樹。
22、在其中一實(shí)施例中,所述方法包括當(dāng)有成員動(dòng)態(tài)離開所述自信任群組時(shí):
23、所述群主,接收到離開信息后,根據(jù)對(duì)應(yīng)編號(hào)將離開成員對(duì)應(yīng)的葉子節(jié)點(diǎn)密鑰進(jìn)行更新,并更新所述群組密鑰協(xié)商樹,并向所述自信任群組中的其他成員,通告更新后的群組密鑰協(xié)商樹。
24、本申請(qǐng)還提供了一種自信任群組密鑰協(xié)商系統(tǒng),其所述系統(tǒng)包括多個(gè)用戶,各用戶均持有由私鑰生成機(jī)構(gòu)頒發(fā)的自信任標(biāo)識(shí)私鑰,并將身份標(biāo)識(shí)作為自信任公鑰,在各所述用戶之中確定一用戶作為群主,在所述系統(tǒng)中實(shí)施上述的自信任群組密鑰協(xié)商方法。
25、一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)上述的自信任群組密鑰協(xié)商方法中的步驟。
26、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述的自信任群組密鑰協(xié)商方法中的步驟。
27、上述自信任群組密鑰協(xié)商方法、系統(tǒng)、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì),通過在多個(gè)用戶中確定一用戶為群組,由該群組發(fā)布自身身份標(biāo)識(shí)和群組編碼,之后,根據(jù)請(qǐng)求加入群組的申請(qǐng)信息中的用戶身份標(biāo)識(shí)以及接收到的申請(qǐng)信息數(shù)量,構(gòu)建群組密鑰協(xié)商樹,以組成自信任群組,在構(gòu)建群組密鑰協(xié)商樹時(shí),生成葉子節(jié)點(diǎn)數(shù)量與群組成員總數(shù)一致的二叉樹,對(duì)二叉樹的各葉子節(jié)點(diǎn),根據(jù)對(duì)應(yīng)的成員的身份標(biāo)識(shí)生成公私鑰對(duì),并逐層向上通過密鑰運(yùn)算生成各層級(jí)父節(jié)點(diǎn)的公私鑰對(duì),直至得到根節(jié)點(diǎn)密鑰,向自信任群組中其他成員通告與群組密鑰協(xié)商樹相關(guān)的狀態(tài)信息,使得各成員根據(jù)所述狀態(tài)信息中與自身相關(guān)的狀態(tài)信息計(jì)算得到群組通信密鑰,并根據(jù)群組通信密鑰與自信任群組內(nèi)的其他成員進(jìn)行通信。采用本方法群主不再需要單獨(dú)對(duì)各群組發(fā)送相應(yīng)的信息,而是通告相同的信息,以適應(yīng)低寬帶、大規(guī)模的自組織群組加密通信。
1.一種自信任群組密鑰協(xié)商方法,其特征在于,所述方法實(shí)施于多個(gè)用戶之間,各用戶均持有由私鑰生成機(jī)構(gòu)頒發(fā)的自信任標(biāo)識(shí)私鑰,并將身份標(biāo)識(shí)作為自信任公鑰,在各所述用戶之中確定一用戶作為群主,所述方法實(shí)施于群主,包括:
2.根據(jù)權(quán)利要求1所述的自信任群組密鑰協(xié)商方法,其特征在于,所述私鑰生成機(jī)構(gòu),根據(jù)用戶的身份標(biāo)識(shí)采用雙線性映射友好的橢圓曲線群運(yùn)算構(gòu)造所述自信任標(biāo)識(shí)私鑰。
3.根據(jù)權(quán)利要求1所述的自信任群組密鑰協(xié)商方法,其特征在于,在構(gòu)建所述群組密鑰協(xié)商樹時(shí):
4.根據(jù)權(quán)利要求3所述的自信任群組密鑰協(xié)商方法,其特征在于,各成員根據(jù)與所述群組密鑰協(xié)商樹相關(guān)的狀態(tài)信息中與自身相關(guān)的狀態(tài)信息,計(jì)算群組通信密鑰時(shí):
5.根據(jù)權(quán)利要求4所述的自信任群組密鑰協(xié)商方法,其特征在于,所述方法還包括:按照群組更新周期對(duì)所述群組通信密鑰,通過更新所述群組更新序號(hào)進(jìn)行周期性更新。
6.根據(jù)權(quán)利要求4所述的自信任群組密鑰協(xié)商方法,其特征在于,所述方法包括當(dāng)有新用戶加入到所述自信任群組中時(shí):
7.根據(jù)權(quán)利要求4所述的自信任群組密鑰協(xié)商方法,其特征在于,所述方法包括當(dāng)有成員動(dòng)態(tài)離開所述自信任群組時(shí):
8.一種自信任群組密鑰協(xié)商系統(tǒng),其特征在于,所述系統(tǒng)包括多個(gè)用戶,各用戶均持有由私鑰生成機(jī)構(gòu)頒發(fā)的自信任標(biāo)識(shí)私鑰,并將身份標(biāo)識(shí)作為自信任公鑰,在各所述用戶之中確定一用戶作為群主,在所述系統(tǒng)中實(shí)施權(quán)利要求1至7任一項(xiàng)所述的自信任群組密鑰協(xié)商方法。
9.一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述方法的步驟。
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述的方法的步驟。