本發(fā)明涉及移動(dòng)互聯(lián)網(wǎng)密鑰管理技術(shù)領(lǐng)域,具體是一種能夠減少密鑰更新延時(shí)的自主群組密鑰更新方法。
背景技術(shù):
群組密鑰管理是無線網(wǎng)絡(luò)安全的基礎(chǔ)技術(shù)之一,隨著分布式無線網(wǎng)絡(luò)的廣泛應(yīng)用,分布式群組密鑰管理(distributedgroupkeymanagement,dgkm)成為安全研究熱點(diǎn)。dgkm具有無需密鑰管理中心kmc支持、公開信道協(xié)商和容忍失敗節(jié)點(diǎn)的優(yōu)點(diǎn),但是由于所有節(jié)點(diǎn)共享密鑰協(xié)商任務(wù),具有延時(shí)長、計(jì)算開銷大和全體成員參與更新的缺陷。
隨著高性能處理器和能量水平的不斷提高,深空網(wǎng)絡(luò)、dtn網(wǎng)絡(luò)、機(jī)會(huì)網(wǎng)絡(luò)等對密鑰管理延時(shí)提出了更為苛刻的要求,基于密鑰交互協(xié)議的群組密鑰管理方案在密鑰更新中需要全部成員重新計(jì)算和發(fā)布公開密鑰資料,需要為成員交互支付延時(shí),不適合非可靠端到端服務(wù)、延時(shí)有限和非同步機(jī)制支持的無線網(wǎng)絡(luò)。
單加密密鑰多解密密鑰加密解密方法(one-encryption-keymulti-decryption-keyencryptionmethod,omem),既存在一個(gè)加密密鑰和解密密鑰集合,使用相同加密密鑰加密的信息能夠被多個(gè)不同的解密密鑰解密。omem更新過程中必須依賴一個(gè)強(qiáng)有力的實(shí)體密鑰管理中心作為密鑰更新的發(fā)起者和承擔(dān)者,即使合法成員也不能利用自己的私有秘密密鑰材料成功執(zhí)行密鑰更新過程。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種自主群組密鑰更新方法,該更新方法,可以避免omem的缺陷,減少密鑰更新延時(shí)和計(jì)算總量,無需密鑰管理中心、可靠端到端鏈接與同步機(jī)制的支持,適用延時(shí)受限的無線網(wǎng)絡(luò)場景。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:
一種自主群組密鑰更新方法,包括以下步驟:
s1、消息發(fā)送者發(fā)送明文m;
s2、密鑰源分發(fā)初始密鑰kl′和更新密鑰kj′,加入成員注冊私有秘密密鑰,退出成員注銷私有秘密密鑰;
s3、更新密鑰kl′和加密算法對明文m加密得到密文c=ekl′(m);
s4、將密文c發(fā)送給下一節(jié)點(diǎn);
s5、更新密鑰kj′和解密算法對密文c解密得到明文m;
s6、執(zhí)行密鑰交互協(xié)議;
s7、網(wǎng)絡(luò)運(yùn)行;
所述步驟s6的密鑰交互協(xié)議為基于diffie-hellman協(xié)議構(gòu)造的自主密鑰管理方案,有合法實(shí)體uii∈{1,2,...,n}、公告板b與離線管理服務(wù)器c三類參與實(shí)體,ui和c已經(jīng)選擇素?cái)?shù)階有限域fp和乘法循環(huán)群fp*的任一生成元g作為密鑰資料,包含以下步驟:
s61、密鑰協(xié)商階段;
s62、加密階段;
s63、解密階段;
s64、密鑰更新階段;
所述步驟s61具體包括以下步驟:
s611、節(jié)點(diǎn)ui從[1,p]域內(nèi)隨機(jī)選擇秘密值xi,作為解密密鑰skey=xi,將xi通過保密安全信道發(fā)送到c,c秘密保存;
s612、c從[1,p]域內(nèi)隨機(jī)選擇秘密值t,計(jì)算p0=gtmodp,計(jì)算{pi},i∈{1,2,...,n};
s613、c將公開加密密鑰ekey={pi},i∈{0,1,2,...,n}發(fā)布到b;
所述步驟s62具體包括以下步驟:
s621、ukk∈{1,2,...,n}從b獲取{pi}i∈{0,1,2,...,n},在[1,p]內(nèi)選擇隨機(jī)數(shù)s和r作為秘密值,計(jì)算
s622、對{pi|i∈{0,1,2,...,n}}計(jì)算得到
s623、加密者使用公開信道將加密信息mgrsmodp、
所述步驟s63具體包括以下步驟:
s631、解密者ujj∈{1,2,...,n}持有秘密密鑰xjj∈{1,2,...,n}解密,uj使用如下的方式解密:
s632、解密者計(jì)算
所述步驟s64具體為:
當(dāng)新節(jié)點(diǎn)un+1加入網(wǎng)絡(luò)時(shí),需要使自己的秘密值xn+1具有合法性和有效性,執(zhí)行以下步驟:
s641、un+1從[1,p]隨機(jī)選擇秘密值xn+1;
s642、un+1向管理者c匯報(bào)秘密值xn+1;
s643、un+1重新計(jì)算公開加密密鑰,令
s644、公告版更新公開加密密鑰為{p0,pi'|i∈{1,2,...,n+1}},更新后的公開密鑰{pi'}為:
當(dāng)節(jié)點(diǎn)un退出網(wǎng)絡(luò)時(shí),需要使用自己的秘密值xn注銷公告板的加密密鑰,執(zhí)行以下步驟:
s645、un令p0”=gtmodp,
s646、un在b上公開加密密鑰為和{pi”}i∈{1,2,...,n-1},內(nèi)容為:
當(dāng)成員un需要更新自己私有秘密密鑰時(shí),執(zhí)行以下步驟:
s647、un從[1,p]選擇隨機(jī)數(shù)x'n,通過安全信道將其發(fā)送給c,將xn更新為x′n;
s648、如果該請求被允許,un執(zhí)行計(jì)算:
當(dāng)un使用{pi|i∈{1,2,...,n}}和β=x'n-xn,計(jì)算{pi'|i∈{1,2,...,n}};
當(dāng)un在公告板b上發(fā)布更新后的公開加密密鑰{pi'|i∈{1,2,...,n}}
本發(fā)明的有益效果是,由加入/退出成員本地自主執(zhí)行密鑰加入/退出操作,非更新成員不參與密鑰更新過程,更新公開加密密鑰不會(huì)破壞非更新成員秘密解密密鑰的有效性,基于該方法設(shè)計(jì)自主密鑰管理方案,滿足單加密密鑰多解密密鑰性質(zhì),從而減少密鑰交互過程的延時(shí)和計(jì)算總量,無需密鑰管理中心、可靠端到端鏈接和同步機(jī)制的支持,適用延時(shí)受限的無線網(wǎng)絡(luò)場景。
附圖說明
下面結(jié)合附圖和實(shí)施例對本發(fā)明進(jìn)一步說明:
圖1是本發(fā)明的示意圖。
具體實(shí)施方式
如圖1所示,本發(fā)明提供一種自主群組密鑰更新方法,包括以下步驟:
s1、消息發(fā)送者發(fā)送明文m;
s2、密鑰源分發(fā)初始密鑰kl′和更新密鑰kj′,加入成員注冊私有秘密密鑰,退出成員注銷私有秘密密鑰;
s3、更新密鑰kl′和加密算法對明文m加密得到密文c=ekl′(m);
s4、將密文c發(fā)送給下一節(jié)點(diǎn);
s5、更新密鑰kj′和解密算法對密文c解密得到明文m;
s6、執(zhí)行密鑰交互協(xié)議;
s7、網(wǎng)絡(luò)運(yùn)行;
所述步驟s6的密鑰交互協(xié)議為基于diffie-hellman協(xié)議構(gòu)造的自主密鑰管理方案,有合法實(shí)體uii∈{1,2,...,n}、公告板b與離線管理服務(wù)器c三類參與實(shí)體,ui和c已經(jīng)選擇素?cái)?shù)階有限域fp和乘法循環(huán)群fp*的任一生成元g作為密鑰資料,包含以下步驟:
s61、密鑰協(xié)商階段;
s62、加密階段;
s63、解密階段;
s64、密鑰更新階段;
所述步驟s61具體包括以下步驟:
s611、節(jié)點(diǎn)ui從[1,p]域內(nèi)隨機(jī)選擇秘密值xi,作為解密密鑰skey=xi,將xi通過保密安全信道發(fā)送到c,c秘密保存;
s612、c從[1,p]域內(nèi)隨機(jī)選擇秘密值t,計(jì)算p0=gtmodp,計(jì)算{pi},i∈{1,2,...,n};
s613、c將公開加密密鑰ekey={pi},i∈{0,1,2,...,n}發(fā)布到b;
所述步驟s62具體包括以下步驟:
s621、ukk∈{1,2,...,n}從b獲取{pi}i∈{0,1,2,...,n},在[1,p]內(nèi)選擇隨機(jī)數(shù)s和r作為秘密值,計(jì)算
s622、對{pi|i∈{0,1,2,...,n}}計(jì)算得到
s623、加密者使用公開信道將加密信息mgrsmodp、
所述步驟s63具體包括以下步驟:
s631、解密者ujj∈{1,2,...,n}持有秘密密鑰xjj∈{1,2,...,n}解密,uj使用如下的方式解密:
s632、解密者計(jì)算
所述步驟s64具體為:
當(dāng)新節(jié)點(diǎn)un+1加入網(wǎng)絡(luò)時(shí),需要使自己的秘密值xn+1具有合法性和有效性,執(zhí)行以下步驟:
s641、un+1從[1,p]隨機(jī)選擇秘密值xn+1;
s642、un+1向管理者c匯報(bào)秘密值xn+1;
s643、un+1重新計(jì)算公開加密密鑰,令
s644、公告版更新公開加密密鑰為{p0,pi'|i∈{1,2,...,n+1}},更新后的公開密鑰{pi'}為:
當(dāng)節(jié)點(diǎn)un退出網(wǎng)絡(luò)時(shí),需要使用自己的秘密值xn注銷公告板的加密密鑰,執(zhí)行以下步驟:
s645、un令p0”=gtmodp,
s646、un在b上公開加密密鑰為和{pi”}i∈{1,2,...,n-1},內(nèi)容為:
當(dāng)成員un需要更新自己私有秘密密鑰時(shí),執(zhí)行以下步驟:
s647、un從[1,p]選擇隨機(jī)數(shù)x'n,通過安全信道將其發(fā)送給c,將xn更新為x′n;
s648、如果該請求被允許,un執(zhí)行計(jì)算:
當(dāng)un使用{pi|i∈{1,2,...,n}}和β=x'n-xn,計(jì)算{pi'|i∈{1,2,...,n}};
當(dāng)un在公告板b上發(fā)布更新后的公開加密密鑰{pi'|i∈{1,2,...,n}}
私有解密密鑰skeyi更新不會(huì)引發(fā)其他成員的私有解密密鑰skej,i≠j更新,skeyi更新后skeyj仍可以對更新的加密密鑰ekey‘加密的信息解密,且更新成員ui在密鑰更新活動(dòng)
滿足如下的條件:
自主群密鑰管理方案具有前向后向安全性、密鑰獨(dú)立性、密鑰自主性和高效的更新效率。
關(guān)于自主群密鑰管理方案的前向后向安全性分析:
根據(jù){si}中的s1和s2,ppt攻擊者隨機(jī)選擇值x成功猜測{xi}中的任意元素的概率為:
因?yàn)閨g|=ρ,||p||=n且n>>n,當(dāng)ρ=θ(2n)。
所以
negl(n)是一個(gè)可忽略的函數(shù)。
同理,ppt攻擊者通過si-1和si成功猜測集合{xi}中的任意元素的概率為:
綜上所述,任意ppt攻擊者從{pi}中得到解密密鑰集合{xi}中的任意元素是一個(gè)困難問題,證明方案具有私密性。
un執(zhí)行密鑰離開操作后,xn不屬于集合{xi},不是方程
退出節(jié)點(diǎn)無法利用xn對新公開加密密鑰的信息解密,它解密更新后加密密鑰加密的信息的概率為可忽略的函數(shù)。
新加入節(jié)點(diǎn)un+1通過加入更新操作將自己的秘密值xn+1作為新方程
關(guān)于自主密鑰管理方案的密鑰獨(dú)立性:
首先由于集合{xi}中任意秘密值xi是ui從域[1,p]中隨機(jī)選擇,因此{(lán)xi}中元素之間不具有相關(guān)性,已知ui的值xi,不能推導(dǎo)出uj(i≠j)的值xj;
其次從公開信道獲取公開加密密鑰{pi}求解xj,假設(shè)已知除xj之外的{xi},則pi可以表示為
關(guān)于自主密鑰管理方案的密鑰自主性:
首先,加入/退出節(jié)點(diǎn)有能力對公鑰進(jìn)行更新,并且新鮮的公鑰能夠保證非更新成員解密密鑰的合法性和有效性,更新過程中非更新成員不參與更新;
其次,更新過程不能破壞非更新成員解密密鑰的合法性和有效性。
關(guān)于自主密鑰管理方案的更新效率,非更新成員無需參與密鑰更新過程,因此,在密鑰更新過程中,只有加入或者退出節(jié)點(diǎn)密鑰更新,使得密鑰更新的規(guī)??s減。當(dāng)有新成員加入或者退出時(shí),并不需要所有的成員都在b附近,或者提供可靠的端到端鏈路,非更新成員在更新過程中無需提供自身獨(dú)有的秘密解密密鑰,只要回到b獲取公開加密密鑰即可,無需依賴密鑰管理中心,也無需節(jié)點(diǎn)密鑰更新的同步機(jī)制,總之,其更新效率遠(yuǎn)遠(yuǎn)高于agkm和omdep。
以上所述,僅是本發(fā)明的較佳實(shí)施例而已,并非對本發(fā)明作任何形式上的限制;任何熟悉本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍情況下,都可利用上述揭示的方法和技術(shù)內(nèi)容對本發(fā)明技術(shù)方案做出許多可能的變動(dòng)和修飾,或修改為等同變化的等效實(shí)施例。因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對以上實(shí)施例所做的任何簡單修改、等同替換、等效變化及修飾,均仍屬于本發(fā)明技術(shù)方案保護(hù)的范圍內(nèi)。