余哲賦 周海剛 吳兆峰 朱曉薇
1 解放軍理工大學通信工程學院 江蘇 210007 2 中國人民解放軍73689部隊 江蘇 210042
多層衛星網絡是一個在雙層或多層軌道平面內同時布星,利用層間星際鏈路建立的立體交叉衛星網絡。與單層衛星網絡相比,多層衛星網絡具有覆蓋域廣、空間頻譜利用率高、組網靈活、抗毀性強、功能多樣性(融合天基通信、導航、定位等多種功能)等優點,能夠實現各種軌道高度衛星星座的優勢互補,為許多軍事任務及科研任務服務,成為未來衛星網發展的一種理想組網模式,其網絡架構如圖1所示。
衛星網絡因其靈活性和適用性而廣泛應用于軍用、民用、商用等領域,其固有的廣播信道的特點使其可以在大范圍內提供數據組播服務,與其他組播網絡相比具有更大優勢。然而由于衛星自身的特點使得衛星網絡不同于傳統網絡:衛星網絡通過移動節點間的相互協作進行組網,具有網絡拓撲動態變化、帶寬和計算能力受限等特征。此外,衛星之間的通信具有開放性,網絡中傳輸的數據容易被非授權者甚至惡意攻擊者截獲從而引發大量安全性問題,比如主動入侵、拒絕服務等攻擊。因此,衛星網絡節點之間的通信安全面臨極其嚴峻的挑戰。
衛星網絡通信的安全需求一般包括對節點的身份鑒別,以及對信息鏈路的機密性、完整性保護。為了滿足上述安全需求,最重要的是實現節點之間安全、可靠的密鑰管理。對有安全性要求的衛星網絡而言,使用組密鑰對通信進行加密是一個能夠保證多個節點之間安全通信的有效方法。為保證衛星網絡的通信安全,在衛星網絡內實現組密鑰管理已經成為一個重要課題。

圖1 多層衛星網絡架構
組密鑰即組播密鑰,它是所有參與組播的成員之間共享的秘密密鑰,用來對組播數據進行加/解密、認證等操作,以滿足數據的機密性、完整性和組成員認證等安全需求。組密鑰管理則是為組成員生成、分發和更新組密鑰,其基本任務是:為合法的組成員分配和維護密鑰,實現組播通信時秘密信息在合法組成員或某個成員子集之間共享,而非組成員因不能解密而無法知道該秘密信息。組密鑰的更新與組成員關系的變化有著密切的關系,組成員的加入、退出、失效等往往要觸發密鑰更新操作,以確保前向安全性和后向安全性。
與單播密鑰管理機制相比,組密鑰在安全性和性能方面具有一些特殊的要求,主要包括以下幾個方面:
(1) 前向保密性:當新節點加入組或者當前密鑰泄露時,前向保密性能夠保證過去使用的密鑰的安全性。
(2) 后向保密性:當節點退出組或者已使用的密鑰泄露時,后向保密性能夠保證將來使用的密鑰的安全性。
(3) 健壯性:對于單播來說,通信的任何一方失效都會使會話終止,而組播中部分節點的失效不應當影響到整個組播會話的繼續進行,這就對組播密鑰管理提出了健壯性要求。
(4) 可擴展性:組播的規模從幾個到成百上千個節點,甚至更多,隨著組播規模的擴大,保存密鑰所占用的節點存儲空間、密鑰生成所需要的計算量、密鑰分發所占用的網絡帶寬、密鑰更新的時間延遲都會相應增加,所以可擴展性也是組密鑰管理所要考慮的重點之一。
(5) 通信效率:衛星網絡中衛星節點之間距離遠,通信時延長,誤碼率高,需要通信效率高、通信交互次數少的方案。
根據拓撲結構的不同,現有的組密鑰管理方案可以分為集中式、分組式和分布式三種。
集中式組密鑰管理方案通過設置一個組控制者,負責組密鑰的生成、分發和更新操作。此類方案設計簡單,組成員不參與組密鑰的生成,適用于規模較小的組播通信,文獻中所提出的方案就是一種典型的集中式密鑰管理方案。但由于集中式組密鑰管理方案可靠性較差,當組控制者被攻擊時容易導致整個組癱瘓,即存在單點失效問題,所以一般用得較少。
分組式組密鑰管理方案則將所有成員分成多個子組,每個子組都有其自身的控制者,負責每個子組內的密鑰管理,并由一個總的組控制者管理各子組控制者。分組式管理方案較集中式方案擴展性好,適用于規模較大的群組。
分布式組密鑰管理方案不需要設置固定的組控制者,組密鑰由其所有成員共同協商得到。但在組密鑰初始協商、成員加入和退出時,必須要由某個或某些組成員來擔當臨時管理者,為其它節點計算分發相關參數。此類方案管理靈活、通信量小,是當前研究的熱點。
鐘焰濤等提出了一種適用于LEO/MEO雙層衛星網絡的組密鑰管理方案(簡稱 ZM 方案),該方案采用基于身份的密碼系統IBC(Identity-Based Cryptosystem),消除了對證書系統的依賴,能在衛星網絡中靈活高效地實現。具體實現方法是:在衛星地面站設置系統中的密鑰生成中心 KGC(Key Generate Center),因為地面站具有相對較高的計算能力和抗攻擊能力,所以能夠保證系統主密鑰和用戶私鑰的安全性。衛星網絡中的組成員根據其所在邏輯位置劃分為不同的簇,其中 MEO衛星作為簇頭節點,MEO衛星覆蓋域內的所有LEO衛星作為簇內節點。當一顆LEO衛星移動到一個新的簇內時,需要向簇頭MEO衛星注冊。注冊成功后,所有的簇頭節點之間進行組密鑰交換操作以建立一個共享密鑰;之后每個簇頭節點通過加入盲因子方式秘密地將共享密鑰發送給各簇內的LEO衛星節點。和分布式的組密鑰協商相比,這種僅由簇頭節點協商建立共享密鑰的機制不需要 LEO衛星參與密鑰的生成,大大減少了通信量。同時因為所有簇內節點均在簇頭節點的覆蓋范圍內,所以簇頭節點向簇內節點發送密鑰僅需簇頭的一次廣播就可以實現。在有節點加入或退出群組時,為了保證密鑰的前向保密性和后向保密性,需要對組密鑰進行更新。密鑰更新時,所在簇內成員發生變動的簇的簇頭節點向其它簇頭節點發送一個新的隨機值,所有簇頭節點根據該隨機值更新共享密鑰并廣播給其簇內的LEO衛星節點。該方案能夠有效抵抗外部攻擊者,并且具有前向保密性和后向保密性。
王宇等提出了一個基于網絡的分布式組密鑰管理方案(簡稱 WLW 方案),該方案包含一個基于網絡的分布式組密鑰管理框架及其組密鑰交換協議。在該方案中,網絡中存在若干組密鑰控制器GKC(Group Key Controller),它們通過網絡彼此連接,在組密鑰管理層次上是平等的,形成一個組密鑰管理的分布式網絡,每個 GKC負責一個局部區域網絡內節點的組密鑰分發和更新,管理框架如圖2所示。該方案基于公鑰基礎設施PKI(Public Key Infrastructure),能夠方便衛星網絡的密鑰管理和分發,GKC之間采用組密鑰傳播協議將新的組密鑰或更新的組密鑰傳遞給相鄰的GKC,再由這些相鄰的GKC將變動的組密鑰信息傳遞下去,最后遍及整個網絡。組密鑰傳播采用單向、無連接的通信方式,組密鑰傳播消息包含了當前所有新產生的或更新的組密鑰信息。
一旦有新的組密鑰產生,或者組密鑰進行更新,負責該組的 GKC就把這一信息作為組密鑰傳播消息發送給相鄰的GKC。接收到組密鑰傳播消息的GKC如果發現消息中有新產生的組密鑰,或者某個組密鑰的新鮮值比已有的組密鑰的新鮮值大,則用它替換本地保存的組密鑰信息,同時把所有新增的和更新的組密鑰信息重新用組密鑰傳播協議廣播給相鄰的GKC。以此類推,新的組密鑰或者更新的組密鑰能很快被廣播到整個衛星網絡中。

圖2 基于網絡的分布式組密鑰管理框架
組密鑰分發協議實現對組成員的組密鑰分發。每個GKC所轄的局部區域網絡中可能存在屬于不同小組的成員,因此它要針對不同的小組廣播不同的組密鑰消息。該方案給出了兩種組密鑰分發方法:一種方法是采用以前的組密鑰加密更新的組密鑰,然后把這一個信息廣播出去。采用這種方法只需一條消息就能讓所有的小組成員獲得更新的組密鑰,節省了GKC的開銷,但無法防止已經離開小組的成員獲得新的組密鑰。另一種方法是用每個組成員的公鑰加密它所屬小組的新產生或更新的組密鑰,然后把這一消息發送給對應的成員。采用這種方法的優點是安全性高,但是GKC必須存儲該局部區域網絡內所有成員的公鑰信息,而且分發密鑰的開銷較高。
該方案中,如果某個 GKC出現故障,產生的影響范圍只限于它所轄的局部區域。但該方案并未指出公鑰基礎設施如何配置,也未給出安全性證明。
為解決在空間網絡中實施集中式密鑰管理困難以及維護證書開銷過大等問題,羅長遠等提出了一種基于身份的分布式密鑰管理方案(簡稱LLX方案)。該方案結合衛星網絡的特點,給出了分布式私鑰生成中心的構建方法,并利用基于身份的公鑰加密體制,設計了私鑰更新、主密鑰分量更新和會話密鑰協商等策略。
該方案利用(t,n)門限秘密共享機制,將私鑰生成中心PKG(Private Key Generator)的功能分散到n個服務節點上,這n個服務節點各自擁有一個互不相同的PKG主密鑰分量,組成了一個分布式的私鑰生成中心 DPKGs(Distuibuted Private Key Generators)。當新節點加入群組時,需要PKG為其分配初始密鑰,這時 n個節點中的任意 t(t (1) 在地面控制中心設置一個擁有系統主密鑰的集中式私鑰生成中心PKG,節點經由地面控制中心進入網絡時,由PKG為其生成、分配初始密鑰。 (2) 選擇若干能夠在規定時間間隔內出現在PKG的安全視界內的衛星節點,組成一個分布式的私鑰生成中心DPKGs。在DPKGs節點經由地面控制中心進入網絡時,由PKG利用門限秘密共享機制,為其分配一個主密鑰分量。t個DPKGs節點聯合起來為網絡節點提供在線私鑰更新服務。 (3) 在網絡運行階段,當DPKGs節點運行到地面控制中心的安全視界內時,PKG負責為其提供主密鑰分量更新服務。 當然,該方案也存在兩個缺點:一是被指定為分布式私鑰生成中心DPKGs的n個節點用來完成密鑰生成工作,增加了這n個節點的計算負擔;二是新節點加入群組時必須向至少t個節點提出初始密鑰申請,這t個節點可能遍布網絡各處,需要多跳通信才能到達,只有至少與這t個節點通信成功后新節點才能獲得正確的私鑰,這無疑增加了網絡負載。 文獻提出了一種基于身份的空間網絡組密鑰管理方案(簡稱LLH方案),該方案的主要實現方法是:選擇衛星節點作為組播群組的服務節點,協助組播群組完成公共參數的生成和廣播操作,以及成員變化時密鑰參數的更新和廣播操作,用來解決成員開銷不平衡的問題。為避免單點失效,選擇多個衛星節點組成動態的服務節點集合,為同一個群組提供協助服務的節點動態可變,也就是不要求群組的所有操作(組密鑰初始協商、成員加入和成員退出)全部由同一個服務節點提供協助。衛星節點覆蓋范圍廣,能夠保證協商信息不需要轉發即可直接到達目的節點。 該方案假設服務節點是誠實可信的,即服務節點在同合法的網絡節點交互時不會發送虛假信息,不會利用掌握的整個網絡的密鑰信息來進行惡意攻擊,并且不會將掌握的密鑰信息泄露給非法實體。也就是說,該方案只能抵御外部攻擊,而不能抵御內部攻擊。 分組式密鑰管理方案和分布式密鑰管理方案是目前衛星通信中比較典型的兩種方案,表1對幾個具體方案進行了比較。 表1 現有的典型組密鑰管理方案比較 從比較中我們看出分組式密鑰管理方案具有密鑰更新開銷小,控制方便,可擴展性好的特點,適用于規模較大的群組,但是易造成單點失效,計算負擔較大,并增加了網絡流量;分布式密鑰管理在防止單點失效方面具有優勢,安全性高,但同樣也增加了計算負擔和網絡流量。另外,采用基于身份的密碼體制,在保證認證性、前向安全性和后向安全性等安全需求的同時,能夠消除對證書的依賴,衛星節點不需要存儲用于綁定成員身份和公鑰的證書列表,節省了用于維護和管理證書的開銷,計算開銷小,通信效率高,適用于計算能力和存儲資源受限的衛星網絡。 由于多層衛星網絡具有廣闊的應用前景,所以關于它的研究非常多。目前關于多層衛星網絡已經提出了一些組密鑰管理方案,但仍然存在很多不足,對組密鑰管理方案進一步研究的方向和問題說明如下。 (1) 衛星網絡對組密鑰管理的可靠性要求較高,因此不能采用單一的組密鑰控制節點實現密鑰的分發和更新,因為這樣容易造成單點失效,也容易帶來性能上的瓶頸。但是也不能采用完全分布的密鑰管理方法,因為它會占用大量的計算資源和通信資源,加重衛星網絡的運行負擔。 (2) 基于身份的密碼系統已經相當成熟,成為了繼基于證書中心CA密碼學之后的公鑰密碼體制中的另外一個重要發展方向,其在衛星網絡組密鑰管理中的應用有待于進一步的研究。 (3) 將門限秘密共享技術引入到衛星網絡分布式組密鑰的設計中,有助于解決單點失效問題,但同時增加了計算負擔和網絡負載。設計適合衛星網絡組密鑰管理的門限秘密機制,值得進一步研究。 (4) 分布式的組播密鑰管理要注意考慮密鑰管理以外的控制協議,使系統具有更強的適應性,進而提高系統在動態變化的網絡環境中的健壯性和可擴展性。 一個好的多層衛星網絡組密鑰管理方案應該在安全性和性能兩個方面都有較好的保障,只有這樣的組密鑰管理方案才能夠更好地適應未來多層衛星網絡的發展。 [1]郭慶,王振永,顧學邁.衛星通信系統[M].北京:電子工業出版社.2010. [2]Michael P H, Sunil I,Sun Z L,et al. Dynamics of Key Management in Secure Satellite Multicast[J].IEEE Journal on Selected Areas in Communications.2004. [3]Wang K,Zhao Z W,Yao L.An agile reconfigurable key distribution scheme in space information network[C]//IEEE Conference on Industrial Electronics and Applications. Harbin,China:IEEE Press.2007. [4]徐明偉,董曉虎,徐恪.組播密鑰管理的研究進展[J].軟件學報.2004. [5]鐘焰濤,馬建峰.LEO/MEO 雙層空間信息網中基于身份的群組密鑰管理方案[J].宇航學報.2011. [6]王宇,盧均,吳忠望.空間信息網絡的組密鑰管理[J].宇航學報.2006. [7]羅長遠,李偉,刑洪智.空間網絡中基于身份的分布式密鑰管理研究[J].電子與信息學報.2010. [8]羅長遠,李偉,霍士偉.基于身份的空間網絡組密鑰管理方案[J].通信學報.2010.3.3 密鑰管理方案的比較和分析

4 總結與展望