專利名稱:分布式動態(tài)密鑰管理方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信安全技術(shù)領(lǐng)域,尤其涉及分布式動態(tài)密鑰技術(shù)領(lǐng)域。
背景技術(shù):
分布式網(wǎng)絡(luò)密鑰管理利用了門限密碼學(xué)的基本思想,在(t,η)門限密鑰共享模型 中,將共享密鑰分解為η個子密鑰交給η個管理員保管,當子密鑰的數(shù)目等于或者超過門限 值t(t小于或者等于η)時,才可以恢復(fù)出共享的密鑰,從而更好的保護了共享密鑰的安全 性。分布式密鑰管理有很多應(yīng)用場景,如,WAPI協(xié)議,移動自組織網(wǎng)絡(luò)等。如果各個管理員的子密鑰在密鑰共享的整個生命周期內(nèi)保持不變,那么攻擊者就 可以逐個攻擊各管理員從而獲取足夠的子密鑰。動態(tài)密鑰共享在共享密鑰保持不變的情況 下定期的更新各管理員的子密鑰,管理員的子密鑰更新后,攻擊者在以前獲取的子密鑰在 當前周期是無效的,如果在任何周期內(nèi)攻擊者獲取的子密鑰小于門限值t,共享密鑰仍然是 安全的?,F(xiàn)有的動態(tài)密鑰共享方法主要有兩種一是子密鑰更新份額由各子密鑰管理員產(chǎn) 生;二是子密鑰更新份額由可信第三方產(chǎn)生?,F(xiàn)有動態(tài)密鑰共享方法具有以下缺點對于上述第一種方法,需要多個子密鑰管理員進行大量的子密鑰更新份額交互才 能完成,尤其應(yīng)用于MANET (Mobile Ad-hoc NETworks,移動自組織網(wǎng)絡(luò))時有很大的局限 性,因為移動自組織網(wǎng)絡(luò)的網(wǎng)絡(luò)節(jié)點組織結(jié)構(gòu)是動態(tài)變化的,必須采用無中心的分布式控 制方式,因為在需要進行大量的交互完成更新的過程中,這對于無線終端有限的能源造成 了不利的影響;如果某個活動的節(jié)點狀態(tài)在更新過程中轉(zhuǎn)化為不活動狀態(tài),更新將無法完 成,為了完成更新過程,各個節(jié)點需要重新啟動一次更新過程,從而降低了效率,由于更新 過程需要大量的交互行為,這導(dǎo)致攻擊者有更多的機會攻擊網(wǎng)絡(luò);對于上述第二種方法,更新階段的安全性與否主要取決于第三方會不會主動泄露 各個子密鑰管理員的子密鑰更新份額,而如何將子密鑰更新份額從可信的第三方傳遞到各 個子密鑰的管理員,并且保證子密鑰安全性、秘密性、完整性也是一個無法避免的問題;并 且這種方法沒有考慮到在攻擊者獲取管理員子密鑰的條件下,子密鑰更新份額被竊取的情 形;并且,在更新周期到來或者需要更新的情況下,各個管理員的密鑰必須同步更新,如果 任何一個管理員更新失敗,都將導(dǎo)致更新的失敗,各個管理員擁有的仍然是更新前的子密 鑰;當更新失敗時,需要重啟更新過程來完成更新。
發(fā)明內(nèi)容
鑒于上述的分析,本發(fā)明旨在提供分布式動態(tài)密鑰管理方法及裝置,用以解決現(xiàn) 有動態(tài)密鑰共享方法中子密鑰更新所帶來的效率低及安全性差等問題。本發(fā)明的目的主要是通過以下技術(shù)方案實現(xiàn)的本發(fā)明提供了一種分布式動態(tài)密鑰管理方法,包括
可信中心計算每個子密鑰管理員的子密鑰并發(fā)送給相應(yīng)的子密鑰管理員,同時計 算并公開每個子密鑰管理員的子密鑰驗證信息;當有子密鑰管理員需要更新子密鑰時,所述子密鑰管理員選定其子密鑰更新份額 并據(jù)此對其子密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā)送給所述可信中心;所述可信中心在接收到所述子密鑰管理員發(fā)來的子密鑰更新驗證信息后,根據(jù)接 收到的子密鑰更新驗證信息修改所述子密鑰管理員的子密鑰驗證信息并重新公開。進一步地,所述方法還包括當?shù)竭_密鑰的更新周期時,每個子密鑰管理員分別根 據(jù)預(yù)先確定的子密鑰更新份額對其子密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā) 送給所述可信中心;所述可信中心根據(jù)接收到的每個子密鑰管理員的子密鑰更新驗證信息 修改對應(yīng)的子密鑰驗證信息并重新公開。進一步地,所述所有子密鑰管理員根據(jù)預(yù)先確定的子密鑰更新份額對其子密鑰進 行更新的步驟具體包括每個所述子密鑰管理員自己選擇確定其子密鑰更新份額并據(jù)此對其子密鑰進行 更新;或者,所述可信中心根據(jù)每個所述子密鑰管理員的身份標識計算生成對應(yīng)的子密鑰更 新份額并發(fā)送給對應(yīng)的子密鑰管理員,修改并重新公開每個所述子密鑰管理員的子密鑰驗 證信息;每個所述子密鑰管理員根據(jù)所述可信中心生成的子密鑰更新份額和所述子密鑰管 理員自己產(chǎn)生的子密鑰更新份額對其子密鑰進行更新。進一步地,所述子密鑰管理員根據(jù)所述可信中心生成的子密鑰更新份額和所述子 密鑰管理員自己產(chǎn)生的子密鑰更新份額對其子密鑰進行更新的步驟具體包括所述子密鑰管理員收到所述可信中心發(fā)來的子密鑰更新份額后,根據(jù)所述可信中 心重新公開的子密鑰驗證信息和其接收到的子密鑰更新份額驗證所述可信中心是否存在 欺騙行為,當確認不存在欺騙行為時所述子密鑰管理員自己產(chǎn)生子密鑰更新份額,并根據(jù) 所述可信中心發(fā)來的子密鑰更新份額和所述子密鑰管理員自己產(chǎn)生的子密鑰更新份額其 子密鑰進行更新。進一步地,所述子密鑰管理員根據(jù)所述可信中心生成的子密鑰更新份額和所述子 密鑰管理員自己產(chǎn)生的子密鑰更新份額對其子密鑰進行更新的步驟還包括當所述子密鑰管理員根據(jù)所述可信中心重新公開的子密鑰驗證信息和其接收到 的子密鑰更新份額驗證所述可信中心存在欺騙行為時,所述子密鑰管理員拒絕本次更新, 并通知其他子密鑰管理員可信中心存在欺騙行為,終止更新過程。本發(fā)明還提供了一種分布式動態(tài)密鑰管理裝置,包括可信中心和多個子密鑰管 理員,其中,所述可信中心,用于計算每個所述子密鑰管理員的子密鑰并發(fā)送給對應(yīng)的子密鑰 管理員,同時計算并公開每個所述子密鑰管理員的子密鑰驗證信息;以及在接收到所述子 密鑰管理員發(fā)來的子密鑰更新驗證信息后,根據(jù)接收到的子密鑰更新驗證信息修改所述子 密鑰管理員的子密鑰驗證信息并重新公開;所述子密鑰管理員,用于在需要更新其子密鑰時,選擇其子密鑰更新份額并據(jù)此 對其子密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā)送給所述可信中心。
進一步地,當?shù)竭_密鑰的更新周期時,每個所述子密鑰管理員還用于,根據(jù)預(yù)先確 定的子密鑰更新份額對其子密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā)送給所述 可信中心;所述可信中心還用于,根據(jù)接收到的每個所述子密鑰管理員發(fā)來的子密鑰更新驗 證信息修改對應(yīng)的子密鑰驗證信息并重新公開。進一步地,當?shù)竭_密鑰的更新周期時,所述子密鑰管理員具體用于,自己選擇其子密鑰更新份額并據(jù)此對其子密鑰進行 更新,或者,根據(jù)接收到的所述可信中心生成的子密鑰更新份額和所述子密鑰管理員自己 產(chǎn)生的子密鑰更新份額對其子密鑰進行更新;所述可信中心還用于,根據(jù)每個所述子密鑰管理員的身份標識計算生成對應(yīng)的子 密鑰更新份額并發(fā)送給對應(yīng)的子密鑰管理員,修改并重新公開每個所述子密鑰管理員的子 密鑰驗證信息。進一步地,在收到所述可信中心發(fā)來的子密鑰更新份額時,所述子密鑰管理員具 體用于,根據(jù)所述可信中心重新公開的子密鑰驗證信息和其接收到的子密鑰更新份額驗證 所述可信中心是否存在欺騙行為,當確認不存在欺騙行為時所述子密鑰管理員自己隨機產(chǎn) 生子密鑰更新份額,并根據(jù)所述可信中心發(fā)來的子密鑰更新份額、所述子密鑰管理員自己 產(chǎn)生的子密鑰更新份額對其子密鑰進行更新。進一步地,在收到所述可信中心發(fā)來的子密鑰更新份額,并且所述子密鑰管理員 根據(jù)所述可信中心重新公開的子密鑰驗證信息和其接收到的子密鑰更新份額驗證確認所 述可信中心存在欺騙行為時,所述子密鑰管理員還用于,拒絕本次更新,并通知其他子密鑰 管理員可信中心存在欺騙行為,終止更新過程。本發(fā)明還提供了一種分布式動態(tài)密鑰管理方法,包括每個子密鑰管理員接收其他子密鑰管理員發(fā)來的部分子密鑰,并根據(jù)其他子密鑰 管理員發(fā)來的部分子密鑰和所述子密鑰管理員自己產(chǎn)生的部分子密鑰計算出所述子密鑰 管理員的子密鑰,同時計算并保存所述子密鑰管理員的子密鑰驗證信息;當有子密鑰管理員的子密鑰需要更新時,該子密鑰管理員選擇其子密鑰更新份額 并對其子密鑰進行更新,同時計算子密鑰更新份額累加和并保存。進一步地,所述方法還包括當?shù)竭_密鑰的更新周期時,所有所述子密鑰管理員分 別選定其子密鑰更新份額并據(jù)此對其子密鑰進行更新,同時計算其子密鑰更新份額累加和 并保存。進一步地,所述方法還包括對于在密鑰更新周期中不活動的子密鑰管理員,當該子密鑰管理員的狀態(tài)從不活 動轉(zhuǎn)換為活動時,該子密鑰管理員選擇其子密鑰更新份額并據(jù)此對其子密鑰進行更新,同 時計算其子密鑰更新份額累加和并保存,并且置該子密鑰管理員新周期的子密鑰為已更新 標識。本發(fā)明還提供了一種分布式動態(tài)密鑰管理裝置,包括多個子密鑰管理員,每個所述子密鑰管理員,用于接收其他子密鑰管理員發(fā)來的部分子密鑰,并根據(jù) 其他子密鑰管理員發(fā)來的部分子密鑰和該子密鑰管理員自己產(chǎn)生的部分子密鑰計算出所 述子密鑰管理員的子密鑰,同時計算并保存所述子密鑰管理員的子密鑰驗證信息;并且,當所述子密鑰管理員的子密鑰需要更新或者到達密鑰的更新周期時,所述子密鑰管理員選 擇其子密鑰更新份額并據(jù)此對其子密鑰進行更新,同時計算其子密鑰更新份額累加和并保存。進一步地,對于在更新周期中不活動的子密鑰管理員,當該子密鑰管理員的狀態(tài) 從不活動轉(zhuǎn)換為活動時,該子密鑰管理員還用于,選擇其子密鑰更新份額并據(jù)此對其子密 鑰進行更新,同時計算其子密鑰更新份額累加和并保存,并且置該子密鑰管理員新周期的 子密鑰為已更新標識。本發(fā)明有益效果如下本發(fā)明提高了子密鑰更新的效率和安全性。本發(fā)明的其他特征和優(yōu)點將在隨后的說明書中闡述,并且,部分的從說明書中變 得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明 書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。
圖1為本發(fā)明第一種動態(tài)密鑰管理方法的流程示意圖;圖2為本發(fā)明第一方法實施例的流程示意圖;圖3為本發(fā)明第二種動態(tài)密鑰管理方法的流程示意圖;圖4為本發(fā)明第二方法實施例的流程示意圖。
具體實施例方式下面結(jié)合附圖來具體描述本發(fā)明的優(yōu)選實施例,其中,附圖構(gòu)成本申請一部分,并 與本發(fā)明的實施例一起用于闡釋本發(fā)明的原理。首先,結(jié)合附圖1和附圖2對本發(fā)明第一種動態(tài)密鑰管理方法進行詳細說明。如圖1所示,圖1為本發(fā)明第一種動態(tài)密鑰管理方法的流程示意圖,對于存在可信 第三方即可信中心參與的情形下,具體可以包括如下步驟步驟101 各個子密鑰管理員分別公開自己的身份標識;步驟102 可信中心根據(jù)各個子密鑰管理員公開的身份標識計算各個子密鑰管理 員的子密鑰,并將計算得到的各個子密鑰管理員的子密鑰發(fā)送給相應(yīng)的子密鑰管理員,同 時根據(jù)各個子密鑰管理員的身份標識計算并公開該子密鑰管理員的子密鑰驗證信息;步驟103 子密鑰管理員收到可信中心發(fā)來的子密鑰后,根據(jù)可信中心公開的子 密鑰驗證信息驗證其接收到的子密鑰的正確性;步驟104 當有某個子密鑰管理員的子密鑰的安全性受到了威脅或者其他情況需 要更新子密鑰時,該子密鑰管理員自己選擇子密鑰更新份額并完成其子密鑰的更新,即該 子密鑰管理員在(t,η)門限中隨機選取自己的子密鑰更新份額,根據(jù)選取的子密鑰更新份 額計算對應(yīng)的子密鑰更新驗證信息發(fā)并送給可信中心;可信中心收到該子密鑰管理員發(fā)來 的子密鑰更新驗證信息后修改該子密鑰管理員的子密鑰驗證信息并重新公開;步驟105 當?shù)竭_密鑰的更新周期時,所有子密鑰管理員分別根據(jù)預(yù)先確定的子 密鑰更新份額完成自己的子密鑰的更新,更新方法包括兩種(1)由各個子密鑰管理員分別選擇子密鑰更新份額并自己完成自己子密鑰的更新,具體更新過程同步驟104中所描述內(nèi)容;(2)可信中心和子密鑰管理員共同完成子密鑰的更新;具體的說就是,可信中心根據(jù)各個子密鑰管理員的身份標識計算生成該子密鑰管 理員的子密鑰更新份額,同時修改子密鑰驗證信息并重新公開,將子密鑰更新份額發(fā)送給 對應(yīng)的子密鑰管理員;子密鑰管理員收到可信中心發(fā)來的子密鑰更新份額后,根據(jù)可信中 心重新公開的驗證信息和其接收到的子密鑰更新份額驗證可信中心是否存在欺騙行為,如 果不存在欺騙行為,子密鑰管理員在(t,η)門限中隨機選取自己的子密鑰更新份額,然后 利用可信中心生成的子密鑰更新份額、該子密鑰管理員自己生產(chǎn)的子密鑰更新份額和當前 的子密鑰共同得出更新后的子密鑰;如果存在欺騙行為,該子密鑰管理員拒絕更新,并向其 他管理員發(fā)送可信中心存在欺騙行為的消息,終止更新過程。為了便于理解本發(fā)明第一種方法,下面將舉個具體的例子進一步說明。如圖2所示,圖2為本發(fā)明第一方法實施例的流程示意圖,本發(fā)明第一方法實施例 jSfflTWAPI (Wireless LAN Authentication and Privacy Infrastructure,
別和保密基礎(chǔ)結(jié)構(gòu))協(xié)議中,以(3,5)門限為例,門限值為3,有5個認證服務(wù)為ASU1,ASU2, ASU3,ASU4,ASU5,AP為訪問接入點,MT為網(wǎng)絡(luò)移動終端設(shè)備,IDi為認證服務(wù)器ASUi公開 的身份標識,Si為可信中心根據(jù)IDi計算得到的ASUi的子密鑰(i = 1,2,. . .,η),S為簽 名私鑰;具體可以包括如下步驟步驟201 =MT登陸到ΑΡ,ΑΡ向MT發(fā)送認證激活,以啟動認證過程;MT向AP發(fā)出認 證請求,將MT證書和MT接入認證請求時間發(fā)往AP ;步驟202 =AP收到MT的接入認證請求后,隨機選擇3個ASU(ASU1、ASU3、ASU5),并 將MT證書、接入認證請求時間、AP證書并利用AP的私鑰對MT證書、接入認證請求時間、AP 證書進行簽名構(gòu)成證書認證請求報文,發(fā)送給ASUl、ASU3、ASU5 ;ASUl、ASU3、ASU5用自己的 子密鑰對AP證書中的AP公鑰信息以及MT證書中的MT公鑰信息簽名生成子證書,ASUl、 ASU3.ASU5相互交換子證書后,根據(jù)驗證信息驗證子證書的有效性;步驟203 =ASUU ASU3、ASU5合并子證書,并與認證請求報文中的MT證書和AP證 書比較得出驗證結(jié)果后,向AP發(fā)送認證請求響應(yīng)報文;步驟204 =AP收到ASU1、ASU3、ASTO發(fā)來的認證響應(yīng)報文后,根據(jù)ASU1、ASU3、ASTO 對MT的證書驗證結(jié)果決定是否允許MT接入網(wǎng)絡(luò);如果所有的證書驗證請求報文對MT的證 書驗證都通過,則允許MT接入網(wǎng)絡(luò),AP向MT發(fā)送接入認證響應(yīng)報文,MT根據(jù)ASU1、ASU3、 ASU5對AP證書的驗證結(jié)果決定是否接入該AP,如果所有的接入認證請求報文對AP的證書 驗證通過,則MT決定接入該AP ;如果證書認證通過,則AP和MT之間進行密鑰協(xié)商,用協(xié)商 的密鑰進行通信;步驟205 當其中某個認證服務(wù)器的子密鑰的安全性受到了威脅或者其他原因需 要進行更新時(本發(fā)明實施例假定認證服務(wù)器ASU3需要更新子密鑰),ASU3隨機選擇子 密鑰更新份額并獨自完成子密鑰的更新,然后計算更新后子密鑰的驗證信息發(fā)送給可信中 心;具體的說就是,ASU3在域(1,N)上隨機的選取B3為自己子密鑰更新份額,然后根據(jù)點 值(0,0), (ID1,0), (ID2,0),(ID3,B3),(ID4,0),(ID5,0)進行拉格朗日插值,得到一個多
項式為F3(X)三 B3 Π -=a3ix+a32x +a33x +a34x +a35x modN,計算得到驗證信息a3iG并發(fā)送給可信中心,同時根據(jù)子密鑰更新份額更新自己的子密鑰,更新后的 子密鑰S3 ^ S3+B3mod N ;可信中心收到ASU3發(fā)來的更新驗證信息后,修改ASU3的子密鑰 驗證信息并重新公開,修改后的子密鑰驗證信息aA = aiG+a3iG(i = 1,2,... ,5);步驟206 在第T個周期需要更新認證服務(wù)器的子密鑰,即ASU1、ASU2、ASU3、ASU4 和ASTO都要更新自己的子密鑰;需要說明的是,對于子密鑰的更新,根據(jù)是否需要可信中心生成子密鑰更新份額 可以包括兩種方法第一種方法是認證服務(wù)器自己選擇子密鑰更新份額并且自己完成子密 鑰的更新,更新過程與步驟205描述內(nèi)容相同;第二種方法為所有認證服務(wù)器和可信中心 共同完成子密鑰的更新,即可信中心在域(1,N)上隨機的選擇一個常數(shù)項為零的5次多項 ^Fm (x) ^ ai(T)X+a2(T)X2+a3(T)X3+a4(T)X4+a5(T)X5HiodN,根據(jù)認證服務(wù)器 ASUi 公開的身份標識 IDi計算子密鑰更新份額Ci^F(IDi) modN,計算并更新驗證信息= a,(T)G+aiG,并將子密 鑰更新份額Ci發(fā)送給ASUi ;認證服務(wù)器ASUi收到Ci后利用可信中心公開的驗證信息驗證 等式 CiG = ai(T) (IDi) G+a2(T) (IDi) 2G+a3(T) (IDi) 3G+a4(T) (IDi) 4G+a5(T) (IDi) 5G 是否成立,如果 成立不存在欺騙行為,認證服務(wù)器ASUi自身產(chǎn)生子密鑰更新份額Bi,然后根據(jù)Ci、Bi和原 來的子密鑰得出更新后的子密鑰,即Si ε Si+Bi+CiMod N,同時計算并發(fā)送更新后的子密 鑰驗證信息auG給可信中心,可信中心修改子密鑰驗證信息aiG = Bij^aiG (i = 1,2,..., 5j j 1,2,. . .,ο如果采用第一種方法,包括步驟207和步驟208,其中,步驟207 :ASU1、ASU2、ASU3、ASU4和ASTO自己分別選擇子密鑰更新份額并且自己 完成子密鑰的更新,然后計算更新后子密鑰的驗證信息發(fā)送給可信中心;步驟208 可信中心收到ASU1、ASU2、ASU3、ASU4和ASTO分別發(fā)來的更新驗證信息 后,更新驗證信息;如果采用第二種方法,包括步驟209 步驟211,其中,步驟209 可信中心產(chǎn)生ASUl、ASU2、ASU3、ASU4和ASU5的子密鑰更新份額,將子 密鑰更新份額發(fā)送給ASU1、ASU2、ASU3、ASU4和ASU5,并且修改ASU1、ASU2、ASU3、ASU4和 ASU5的子密鑰更新驗證信息,;步驟210 =ASUU ASU2、ASU3、ASU4和ASTO收到可信中心發(fā)給其的子密鑰更新份 額后,分別根據(jù)可信中心公開的驗證信息驗證其接收到的子密鑰更新份額是否存在欺騙行 為,如果存在欺騙行為,執(zhí)行步驟211 ;如果不存在欺騙行為,則轉(zhuǎn)向步驟212 ;步驟211 通知其他ASU拒絕更新,終止更新過程;步驟212 按照步驟205描述的過程完成子密鑰的更新。接下來,對本發(fā)明第一種動態(tài)密鑰管理裝置進行詳細說明。本發(fā)明第一種動態(tài)密鑰管理裝置具體可以包括可信中心和多個子密鑰管理員, 其中,可信中心,負責計算每個子密鑰管理員的子密鑰并發(fā)送給對應(yīng)的子密鑰管理員, 同時計算并公開每個子密鑰管理員的子密鑰驗證信息;并且,可信中心在接收到子密鑰管 理員發(fā)來的子密鑰更新驗證信息后,根據(jù)接收到的子密鑰更新驗證信息修改子密鑰管理員 的子密鑰驗證信息并重新公開;子密鑰管理員,在需要更新其子密鑰時,該子密鑰管理員選擇其子密鑰更新份額并據(jù)此對其子密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā)送給可信中心;當?shù)竭_密鑰的更新周期時,子密鑰管理員根據(jù)預(yù)先確定的子密鑰更新份額對其子 密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā)送給可信中心;可信中心根據(jù)接收到 的每個子密鑰管理員發(fā)來的子密鑰更新驗證信息修改對應(yīng)的子密鑰驗證信息并重新公開; 具體的說就是,當?shù)竭_密鑰的更新周期時,可以通過兩種方法完成子密鑰的更新一種方法 是,子密鑰管理員自己選擇其子密鑰更新份額并據(jù)此對其子密鑰進行更新;另一種方法是, 可信中心根據(jù)每個子密鑰管理員的身份標識計算生成對應(yīng)的子密鑰更新份額并發(fā)送給對 應(yīng)的子密鑰管理員,修改并重新公開每個子密鑰管理員的子密鑰驗證信息;子密鑰管理員 根據(jù)接收到的所述可信中心生成的子密鑰更新份額和所述子密鑰管理員自己產(chǎn)生的子密 鑰更新份額對其子密鑰進行更新;其中第二種方法中,子密鑰管理員在收到可信中心發(fā)來 的子密鑰更新份額時,子密鑰管理員根據(jù)可信中心重新公開的子密鑰驗證信息和其接收到 的子密鑰更新份額驗證可信中心是否存在欺騙行為,當確認不存在欺騙行為時子密鑰管理 員自己隨機產(chǎn)生子密鑰更新份額,并根據(jù)可信中心發(fā)來的子密鑰更新份額、子密鑰管理員 自己產(chǎn)生的子密鑰更新份額對其子密鑰進行更新;如果子密鑰管理員根據(jù)可信中心重新公 開的子密鑰驗證信息和其接收到的子密鑰更新份額驗證確認可信中心存在欺騙行為,子密 鑰管理員拒絕本次更新,并通知其他子密鑰管理員可信中心存在欺騙行為,終止更新過程。接下來,結(jié)合附圖3和附圖4對本發(fā)明第二種動態(tài)密鑰管理方法進行詳細說明。如圖3所示,圖3為本發(fā)明第二種動態(tài)密鑰管理方法的流程示意圖,對于網(wǎng)絡(luò)組 織結(jié)構(gòu)動態(tài)變化的情形或者無可信中心參與的情況下,如MANET網(wǎng)絡(luò),設(shè)定門限為(t,n),t 為門限值,η為節(jié)點數(shù),所述第二種動態(tài)密鑰管理方法可以包括如下步驟步驟301 :網(wǎng)絡(luò)中η個節(jié)點的每個節(jié)點(該節(jié)點就相當于前面所述的子密鑰管理 員)分別根據(jù)自己的身份標識計算本節(jié)點的部分子密鑰及驗證信息,然后與其他節(jié)點相互 交換部分子密鑰及驗證信息;步驟302 每個節(jié)點根據(jù)其他節(jié)點發(fā)來的部分子密鑰和本節(jié)點自己產(chǎn)生的部分子 密鑰計算出本節(jié)點的子密鑰,同時根據(jù)本節(jié)點的部分子密鑰驗證信息驗證本節(jié)點的部分子 密鑰的正確性,然后計算并保存本節(jié)點的子密鑰驗證信息;步驟303 當其中某個節(jié)點的子密鑰的安全性受到了威脅或者其他原因需要進行 更新時,該節(jié)點隨機選擇子密鑰更新份額并完成自己的子密鑰的更新,同時計算子密鑰更 新累加和并保存;步驟304 到達更新周期時,所有節(jié)點分別選擇子密鑰更新份額并完成子密鑰 的更新,同時計算子密鑰更新累加和并保存;對于在所有節(jié)點更新過程中的不活動節(jié)點,當 其變?yōu)榛顒庸?jié)點后,于更新周期已過,且當前周期的更新標志為未更新,然后按照步驟303 的方法完成子密鑰的更新,并且置節(jié)點新周期的子密鑰為已更新標識。為了便于理解本發(fā)明第二種方法,下面將舉個具體的例子進一步說明。如圖4所示,圖4為對本發(fā)明第二方法實施例的流程示意圖,本發(fā)明第二方法實施 例應(yīng)用于Adhoc (移動自組織網(wǎng)絡(luò)),以(5,10)門限為例,Pl,Ρ2,...,PlO為網(wǎng)絡(luò)中的節(jié)點, IDi為對應(yīng)節(jié)點公開的身份標識。步驟401 網(wǎng)絡(luò)中的節(jié)點完成子密鑰的生成;具體的說就是,網(wǎng)絡(luò)10個節(jié)點 分別在域(1,N)上隨機的選擇一個常數(shù)項非零的10次多項式,并且根據(jù)本節(jié)點的IDi (i = 1,2, ...,10)計算節(jié)點的部分子密鑰,然后相互交換部分子密鑰信息和驗證信 息;具體的說就是,節(jié)點Pi在域(1,N)隨機的選取一個常數(shù)項非零的多項式Fi(X)= ai0+anx+ai2x2+. . . +ail0x10Mod N,計算部分子密鑰 Fi (IDj)和驗證信息 auG(i = 1,2,. . . ,10, j = 1,2,· · . ,10)發(fā)送給 Pj (j = 1,2, ... ,10, j ^ i),G 表示基點;每個節(jié)點收到其他9個節(jié)點發(fā)來的部分子密鑰和驗證信息后,根據(jù)部分子密鑰驗 證信息驗證其他9節(jié)點是否存在欺騙行為,確認都不存在欺騙行為后根據(jù)其他9個節(jié)點的 部分子密鑰和本節(jié)點自身產(chǎn)生的部分子密鑰計算出本節(jié)點的子密鑰,然后計算并保存子密 鑰驗證信息;具體的說就是,節(jié)點Pj根據(jù)等式Fi (IDj)G = ai0G+anIDjG+ai2 (IDj) 2G+. · · +Bi n(IDj)10G驗證Pi是否存在欺行為,確認不存在欺騙行為后Pj根據(jù)其他節(jié)點發(fā)來的部分子 密鑰和Pj自己產(chǎn)生的部分子密鑰計算Pj的子密鑰Sj三Fl (IDj) +F2 (IDj) +· · · +FlO (IDj) Mod N,計算驗證信息 a/; = Blj^a2jG+. . . +a10JG(j = 1,2,. . .,10)。步驟402 當有一個新的節(jié)點Pnew加入網(wǎng)絡(luò)時,由于該節(jié)點還沒有獲取到證書,則 該新的節(jié)點選取PL P3,P4,P7,P9個節(jié)點發(fā)出證書請求,節(jié)點PI, P3,P4,P7,P9收到Pnew
的證書請求M信息后,分別用自己的子密鑰對M進行簽名生成子證書,并且將子證書發(fā)送給 ρ .
1 new,步驟403 :Pnew收到子證書后,利用驗證信息驗證各節(jié)點是否存在欺騙行為,如果 節(jié)點Pl,P3,P4,P7,P9不存在欺騙行為,將子證書合成一個完整的證書;所述節(jié)點Pi (i = 1,2,...,5)生成Pnew子證書可以采用以下方法,Pi隨機的選擇 Ri e (1,N),Ri 保密;節(jié)點 Pi 根據(jù) 5 個點(IDi,l), (IDj,0) (j = 1,2,· · ·,5,j 乒 i)進
-IDj
行拉格朗日插值Π m _ η ;計算Ci = RiG (Ci為Ri與G點乘的結(jié)果)和H(M)(哈希函
5 -id
數(shù)),計算簽名信息SIGb(SiH(M) Π m_;n +Ri) ModN,則(Μ, SUMi0,CiiSIGi)為
J=KM 1Ui 1LJj
Pi利用自己子密鑰Si產(chǎn)生的Pnew子證書;所述節(jié)點Pnew驗證節(jié)點生成的子證書是否存在欺騙行為可以采用以下方法,Pnew收 到節(jié)點Pi發(fā)來的簽名后,計算X Π TXn~IDTn -bi^+b^+.-.+bijoX10 Mod N,并且通過
Μ,.M 1L>i ~ 1Uj
等式 SIGiG-((bi5SUMiG+a5G)(IDi)5+(bi6SUMiG+a6G)(IDi)V·. +(bil0SUMiG+a10G)(IDi)10)H(M) Π=((SG+(bilSUMiG+a1G)IDi+(bi2SUMiG
J=K/*' IDi — 1Dj
+a2G)(IDi)2+...+(bi4SUMiG+a4G)(IDi)4)H(M) Π+Ci)ModM驗證簽名是
i=\j*i 1Di ~ lDj
否來自Pi和簽名正確性,如果等式成立則簽名正確并且來自節(jié)點Pi。步驟404 對于已獲得證書的節(jié)點P。ld加入網(wǎng)絡(luò)時,則選取Pl,P3,P4,P7,P9節(jié)點 發(fā)出證書認證請求,PI, P3,P4,P7,P9收到請求后,利用PI, P3,P4,P7,P9的子密鑰對Pold 的證書進行驗證,如果驗證通過,則允許節(jié)點P。ld接入網(wǎng)絡(luò),否則不允許。步驟405 當其中某個節(jié)點(本發(fā)明實施例假定為P2)子密鑰的安全性受到了威 脅或者其他原因需要進行更新時,P2選擇子密鑰更新份額并完成子密鑰更新過程,同時修改子密鑰更新份額累加和SUM2,并計算SUM2和基點G的點乘值SUM2e ;具體的說就是,節(jié)點 P2在域(1,N)上隨機選擇B2為子密鑰更新份額,更新子密鑰為S2eS2+B2 Mod N,然后計 算子密鑰對應(yīng)的公鑰D2 = S2G,更新子密鑰更新累加和SUM2 ^ SUM2+B2 Mod N,并且計算 SUM2g = SUM2*G ;步驟406 在第T個周期需要更新節(jié)點的子密鑰,在網(wǎng)絡(luò)中所有節(jié)點按照步驟505 完成子密鑰的更新;步驟407 當網(wǎng)絡(luò)中的不活動的節(jié)點當狀態(tài)轉(zhuǎn)化為活動節(jié)點后,由于更新周期已 過,且當前周期的更新標志為未更新,然后按照步驟305完成子密鑰的更新,并且置節(jié)點新 周期的子密鑰為已更新標識。最后,對本發(fā)明第二種動態(tài)密鑰管理裝置進行詳細說明。本發(fā)明第二種動態(tài)密鑰管理裝置具體可以包括多個子密鑰管理員,每個子密鑰管理員,負責接收其他子密鑰管理員發(fā)來的部分子密鑰,并根據(jù)其他 子密鑰管理員發(fā)來的部分子密鑰和該子密鑰管理員自己產(chǎn)生的部分子密鑰計算出子密鑰 管理員的子密鑰,同時計算并保存子密鑰管理員的子密鑰驗證信息;并且,當子密鑰管理員 的子密鑰需要更新或者到達密鑰的更新周期時,子密鑰管理員選擇其子密鑰更新份額并據(jù) 此對其子密鑰進行更新,同時計算其子密鑰更新份額累加和并保存。對于在更新周期中不活動的子密鑰管理員,當該子密鑰管理員的狀態(tài)從不活動轉(zhuǎn) 換為活動時,該子密鑰管理員還用于,選擇其子密鑰更新份額并據(jù)此對其子密鑰進行更新, 同時計算其子密鑰更新份額累加和并保存,并且置該子密鑰管理員新周期的子密鑰為已更 新標識。綜述所述,本發(fā)明提供了分布式動態(tài)密鑰管理方法及裝置,其特殊之處在于,各個 管理員可以獨立的完成子密鑰的更新,無需和其他管理員之間進行大量的交互行為,而且 管理員子密鑰的更新不會對其他管理員的子密鑰產(chǎn)生任何影響,只是需要將相關(guān)信息發(fā)送 給可信中心或者修改本機信息,減少了通信量,提高了效率;當管理員的子密鑰受到安全威 脅時,可以隨時更新自己的子密鑰,提高了安全性,更新對于其他的管理員是透明的,更新 后子密鑰仍然可以與其他管理員的子密鑰恢復(fù)出共享的密鑰,克服了在更新過程中各個管 理員的子密鑰必須同步更新的缺點;在更新過程中,可以采用管理員的子密鑰的更新有可 信的第三方和管理員共同完成,可信中心產(chǎn)生的管理員子密鑰更新份額和管理員自己產(chǎn)生 的子密鑰更新份額構(gòu)成了一個完整的子密鑰更新份額,在攻擊者已經(jīng)獲取某些管理員子密 鑰的情況下,任何一方子密鑰更新份額的泄露都不會影響管理員子密鑰的安全性。以上所述,僅為本發(fā)明較佳的具體實施方式
,但本發(fā)明的保護范圍并不局限于此, 任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換, 都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求書的保護范 圍為準。
權(quán)利要求
一種分布式動態(tài)密鑰管理方法,其特征在于,包括可信中心計算每個子密鑰管理員的子密鑰并發(fā)送給相應(yīng)的子密鑰管理員,同時計算并公開每個子密鑰管理員的子密鑰驗證信息;當有子密鑰管理員需要更新子密鑰時,所述子密鑰管理員選定其子密鑰更新份額并據(jù)此對其子密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā)送給所述可信中心;所述可信中心在接收到所述子密鑰管理員發(fā)來的子密鑰更新驗證信息后,根據(jù)接收到的子密鑰更新驗證信息修改所述子密鑰管理員的子密鑰驗證信息并重新公開。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括當?shù)竭_密鑰的更新周期 時,每個子密鑰管理員分別根據(jù)預(yù)先確定的子密鑰更新份額對其子密鑰進行更新,同時計 算其子密鑰更新驗證信息并發(fā)送給所述可信中心;所述可信中心根據(jù)接收到的每個子密鑰 管理員的子密鑰更新驗證信息修改對應(yīng)的子密鑰驗證信息并重新公開。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述所有子密鑰管理員根據(jù)預(yù)先確定的 子密鑰更新份額對其子密鑰進行更新的步驟具體包括每個所述子密鑰管理員自己選擇確定其子密鑰更新份額并據(jù)此對其子密鑰進行更新;或者,所述可信中心根據(jù)每個所述子密鑰管理員的身份標識計算生成對應(yīng)的子密鑰更新份 額并發(fā)送給對應(yīng)的子密鑰管理員,修改并重新公開每個所述子密鑰管理員的子密鑰驗證信 息;每個所述子密鑰管理員根據(jù)所述可信中心生成的子密鑰更新份額和所述子密鑰管理員 自己產(chǎn)生的子密鑰更新份額對其子密鑰進行更新。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述子密鑰管理員根據(jù)所述可信中心生 成的子密鑰更新份額和所述子密鑰管理員自己產(chǎn)生的子密鑰更新份額對其子密鑰進行更 新的步驟具體包括所述子密鑰管理員收到所述可信中心發(fā)來的子密鑰更新份額后,根據(jù)所述可信中心重 新公開的子密鑰驗證信息和其接收到的子密鑰更新份額驗證所述可信中心是否存在欺騙 行為,當確認不存在欺騙行為時所述子密鑰管理員自己產(chǎn)生子密鑰更新份額,并根據(jù)所述 可信中心發(fā)來的子密鑰更新份額和所述子密鑰管理員自己產(chǎn)生的子密鑰更新份額其子密 鑰進行更新。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述子密鑰管理員根據(jù)所述可信中心生 成的子密鑰更新份額和所述子密鑰管理員自己產(chǎn)生的子密鑰更新份額對其子密鑰進行更 新的步驟還包括當所述子密鑰管理員根據(jù)所述可信中心重新公開的子密鑰驗證信息和其接收到的子 密鑰更新份額驗證所述可信中心存在欺騙行為時,所述子密鑰管理員拒絕本次更新,并通 知其他子密鑰管理員可信中心存在欺騙行為,終止更新過程。
6.一種分布式動態(tài)密鑰管理裝置,其特征在于,包括可信中心和多個子密鑰管理員, 其中,所述可信中心,用于計算每個所述子密鑰管理員的子密鑰并發(fā)送給對應(yīng)的子密鑰管理 員,同時計算并公開每個所述子密鑰管理員的子密鑰驗證信息;以及在接收到所述子密鑰 管理員發(fā)來的子密鑰更新驗證信息后,根據(jù)接收到的子密鑰更新驗證信息修改所述子密鑰管理員的子密鑰驗證信息并重新公開;所述子密鑰管理員,用于在需要更新其子密鑰時,選擇其子密鑰更新份額并據(jù)此對其 子密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā)送給所述可信中心。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,當?shù)竭_密鑰的更新周期時,每個所述子密鑰管理員還用于,根據(jù)預(yù)先確定的子密鑰更新份額對其子密鑰進行更 新,同時計算其子密鑰更新驗證信息并發(fā)送給所述可信中心;所述可信中心還用于,根據(jù)接收到的每個所述子密鑰管理員發(fā)來的子密鑰更新驗證信 息修改對應(yīng)的子密鑰驗證信息并重新公開。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,當?shù)竭_密鑰的更新周期時,所述子密鑰管理員具體用于,自己選擇其子密鑰更新份額并據(jù)此對其子密鑰進行更 新,或者,根據(jù)接收到的所述可信中心生成的子密鑰更新份額和所述子密鑰管理員自己產(chǎn) 生的子密鑰更新份額對其子密鑰進行更新;所述可信中心還用于,根據(jù)每個所述子密鑰管理員的身份標識計算生成對應(yīng)的子密鑰 更新份額并發(fā)送給對應(yīng)的子密鑰管理員,修改并重新公開每個所述子密鑰管理員的子密鑰 驗證信息。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,在收到所述可信中心發(fā)來的子密鑰更新 份額時,所述子密鑰管理員具體用于,根據(jù)所述可信中心重新公開的子密鑰驗證信息和其 接收到的子密鑰更新份額驗證所述可信中心是否存在欺騙行為,當確認不存在欺騙行為時 所述子密鑰管理員自己隨機產(chǎn)生子密鑰更新份額,并根據(jù)所述可信中心發(fā)來的子密鑰更新 份額、所述子密鑰管理員自己產(chǎn)生的子密鑰更新份額對其子密鑰進行更新。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,在收到所述可信中心發(fā)來的子密鑰更新 份額,并且所述子密鑰管理員根據(jù)所述可信中心重新公開的子密鑰驗證信息和其接收到的 子密鑰更新份額驗證確認所述可信中心存在欺騙行為時,所述子密鑰管理員還用于,拒絕 本次更新,并通知其他子密鑰管理員可信中心存在欺騙行為,終止更新過程。
11.一種分布式動態(tài)密鑰管理方法,其特征在于,包括每個子密鑰管理員接收其他子密鑰管理員發(fā)來的部分子密鑰,并根據(jù)其他子密鑰管理 員發(fā)來的部分子密鑰和所述子密鑰管理員自己產(chǎn)生的部分子密鑰計算出所述子密鑰管理 員的子密鑰,同時計算并保存所述子密鑰管理員的子密鑰驗證信息;當有子密鑰管理員的子密鑰需要更新時,該子密鑰管理員選擇其子密鑰更新份額并對 其子密鑰進行更新,同時計算子密鑰更新份額累加和并保存。
12.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述方法還包括當?shù)竭_密鑰的更新周 期時,所有所述子密鑰管理員分別選定其子密鑰更新份額并據(jù)此對其子密鑰進行更新,同 時計算其子密鑰更新份額累加和并保存。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述方法還包括對于在密鑰更新周期中不活動的子密鑰管理員,當該子密鑰管理員的狀態(tài)從不活動 轉(zhuǎn)換為活動時,該子密鑰管理員選擇其子密鑰更新份額并據(jù)此對其子密鑰進行更新,同時 計算其子密鑰更新份額累加和并保存,并且置該子密鑰管理員新周期的子密鑰為已更新標 識。
14.一種分布式動態(tài)密鑰管理裝置,其特征在于,包括多個子密鑰管理員,每個所述子密鑰管理員,用于接收其他子密鑰管理員發(fā)來的部分子密鑰,并根據(jù)其他 子密鑰管理員發(fā)來的部分子密鑰和該子密鑰管理員自己產(chǎn)生的部分子密鑰計算出所述子 密鑰管理員的子密鑰,同時計算并保存所述子密鑰管理員的子密鑰驗證信息;并且,當所述 子密鑰管理員的子密鑰需要更新或者到達密鑰的更新周期時,所述子密鑰管理員選擇其子 密鑰更新份額并據(jù)此對其子密鑰進行更新,同時計算其子密鑰更新份額累加和并保存。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,對于在更新周期中不活動的子密鑰管 理員,當該子密鑰管理員的狀態(tài)從不活動轉(zhuǎn)換為活動時,該子密鑰管理員還用于,選擇其子 密鑰更新份額并據(jù)此對其子密鑰進行更新,同時計算其子密鑰更新份額累加和并保存,并 且置該子密鑰管理員新周期的子密鑰為已更新標識。
全文摘要
本發(fā)明公開了分布式動態(tài)密鑰管理方法及裝置,其中一個方法包括可信中心計算每個子密鑰管理員的子密鑰并發(fā)送給相應(yīng)的子密鑰管理員和子密鑰驗證信息;當有子密鑰管理員需要更新子密鑰時,子密鑰管理員選定其子密鑰更新份額并對其子密鑰進行更新,同時計算其子密鑰更新驗證信息并發(fā)送給可信中心;另一個方法包括每個子密鑰管理員根據(jù)其他子密鑰管理員發(fā)來的部分子密鑰和子密鑰管理員自己產(chǎn)生的部分子密鑰計算出子密鑰管理員的子密鑰,同時計算并保存子密鑰管理員的子密鑰驗證信息;當有子密鑰管理員的子密鑰需要更新時,選擇其子密鑰更新份額并對其子密鑰進行更新并計算子密鑰更新份額累加和并保存;本發(fā)明提高了子密鑰更新的效率和安全性。
文檔編號H04L9/08GK101895388SQ201010219450
公開日2010年11月24日 申請日期2010年7月7日 優(yōu)先權(quán)日2010年7月7日
發(fā)明者周偉 申請人:中興通訊股份有限公司