多播通信中的安全性問題綜述_第1頁
多播通信中的安全性問題綜述_第2頁
多播通信中的安全性問題綜述_第3頁
多播通信中的安全性問題綜述_第4頁
多播通信中的安全性問題綜述_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

多播通信中的安全性問題綜述MatthewJ.Moyer,GeorgiaInstituteofTechnologyJosyulaR.RaoandPankajRohatgi,IBMThomasJ.WotsonResearchCenter摘要萬維網(wǎng)的出現(xiàn)和集團(tuán)化應(yīng)用的普及已經(jīng)引發(fā)了組通信的可擴(kuò)展的安全解決方案的需求。這樣一個(gè)解決方案,安全多播吸引力,因?yàn)樗媒M播數(shù)據(jù)傳遞的高效率。然而,它也提出了幾個(gè)研究挑戰(zhàn),最引人注目的是一組通信的體系結(jié)構(gòu),組密鑰管理,消息源認(rèn)證。在本次調(diào)查中,我們討論這些問題,并驗(yàn)證對它們提出的解決方案。最近萬維網(wǎng)迅速發(fā)展已經(jīng)引起了新的研究?;ヂ?lián)網(wǎng)組通信的新型類型廣泛地應(yīng)用于各個(gè)方面,就像多方視頻會(huì)議和實(shí)時(shí)的基于“push”技術(shù)“push”技術(shù):所謂的PUSH技術(shù)是一種基于客戶服務(wù)器機(jī)制,由服務(wù)器主動(dòng)的將信息發(fā)往客戶端的技術(shù)。的信息傳遞系統(tǒng)(如股票報(bào)價(jià)服務(wù)等)。“push”技術(shù):所謂的PUSH技術(shù)是一種基于客戶服務(wù)器機(jī)制,由服務(wù)器主動(dòng)的將信息發(fā)往客戶端的技術(shù)。傳統(tǒng)的機(jī)制,用于支持多播通信是IP多播。在IPv4中,D類地址(范圍從224.0.0.0到239.255.255.255)是為多播通信預(yù)留的地址。此外,參加啟用多播的主機(jī)和路由器必須提供Internet組管理協(xié)議(IGMP)[1]用以管理組成員身份信息,并且啟用多播的路由器也參與一個(gè)或多個(gè)多播路由協(xié)議[2]。目前,IP多播是只能通過UDP訪問。呼吁任何主機(jī)發(fā)送一個(gè)UDP包到多播地址,和底層的多播路由機(jī)制將所有已明確加入該多播組的受助人提供的數(shù)據(jù)包和時(shí)間到該數(shù)據(jù)包的生存期(TTL)的范圍內(nèi)。多播有潛力成為非常價(jià)值的網(wǎng)絡(luò)服務(wù),但是它也存在許多問題。這些問題出于發(fā)送給大量接收器的路由數(shù)據(jù)包的固有復(fù)雜性。特別是,保證可靠性(及時(shí),有序地將每個(gè)數(shù)據(jù)包傳遞到每一個(gè)組接收)和安全(概念,只有一個(gè)多播組的注冊會(huì)員可以數(shù)據(jù)包發(fā)送到組或接收數(shù)據(jù)包發(fā)送到該組)是非常困難的。這些問題都包含了許多具有挑戰(zhàn)性的研究課題。在這篇文章中,我們解釋了多播安全的主要研究的挑戰(zhàn)和突出在這一領(lǐng)域已作出的重要貢獻(xiàn)。下一節(jié)將介紹很難研究的問題一一安全多播的現(xiàn)狀。然后,我們提出了安全多播的體系結(jié)構(gòu)和密鑰管理的設(shè)計(jì)解決方案。接著,在三個(gè)部分,我們將介紹一些目前一些重大問題最好的解決方案。我們討論了一些相關(guān)的工作,最后一節(jié)總結(jié)全文。多播安全問題組播安全基礎(chǔ)設(shè)施的目標(biāo)很簡單:保留所有組通信的身份驗(yàn)證和保密性,因此,只有注冊發(fā)件人可以發(fā)送數(shù)據(jù)包到組,只有注冊的接收器可以讀取發(fā)送到該組的數(shù)據(jù)包。在互聯(lián)網(wǎng)中,由于缺乏在Internet網(wǎng)絡(luò)層訪問控制權(quán)利,執(zhí)行一個(gè)多播組的消息保密要求數(shù)據(jù)加密。這就需要一個(gè)組密鑰管理方案加密密鑰分配和維護(hù)注冊組的成員。同樣,密碼認(rèn)證方案是必要的,以確保注冊的接收器可以驗(yàn)證收到來自于注冊發(fā)件人的報(bào)文。安全組通信的大多數(shù)研究都集中在安全組和組密鑰管理問題的體系結(jié)構(gòu),然而,最近的研究還集中于高效分組認(rèn)證。本文概括地介紹了所有這三個(gè)領(lǐng)域。密鑰管理的設(shè)計(jì)解決方案我們首先通過介紹一個(gè)簡單的組密鑰管理的解決方案,檢查其弱點(diǎn),并列出了一系列與其它方案比較之后的標(biāo)準(zhǔn),討論在密鑰管理方面的相關(guān)問題。本地組密鑰管理的不足本機(jī)的組密鑰管理問題的解決方案很簡單。我們建立一個(gè)集中的組控制器,負(fù)責(zé)管理該組的密鑰。控制器將組密鑰通過一個(gè)安全的單播傳送到每個(gè)組獨(dú)立的成員。分發(fā)到每一組的密鑰要求與溝通成本與組成員的數(shù)量呈線性關(guān)系。這種解決方案的簡單是極具吸引力的的。然而,由于兩方面的原因,它的低效率使大部分的多播應(yīng)用稍顯不足。首先,我們必須分配新組密鑰每當(dāng)有一方加入或離開了團(tuán)隊(duì)。為了保護(hù)過去信息的保密性和完整性,本組必須改變其密鑰每當(dāng)一個(gè)新的成員加入時(shí)。此外,為了保障未來信息的保密性和完整性,本組必須改變其密鑰在每次當(dāng)前成員離開時(shí)。唯一可以知道當(dāng)前密鑰的人士是那些目前在參與小組交流。對于具有高度動(dòng)態(tài)成員的大型多播組,在每一個(gè)成員加入或離開的時(shí)候執(zhí)行線性成本的密鑰更新是不可行的。因此,我們需要密鑰管理解決方案,即被一個(gè)密鑰更新的次線性消息成本。其次,多種多樣的系統(tǒng)和網(wǎng)絡(luò)問題,很難始終如一地使路線包從一個(gè)單一來源及時(shí)地到一個(gè)分布廣泛的接收器組。第一個(gè)潛在的危險(xiǎn)是失敗的組控制器結(jié)點(diǎn),對于任何采用集中式解決方案的組,這是致命的??赡艹霈F(xiàn)的第二個(gè)問題是網(wǎng)絡(luò)故障。如果有一個(gè)高流量負(fù)載或分區(qū)在位于網(wǎng)絡(luò)某處,一些成員可能會(huì)收到密鑰更新比別人更迅速,也可能完全錯(cuò)過密鑰更新。這不僅抑制一個(gè)合法組成員之間的安全通信,而且還造成潛在的安全漏洞。并非所有現(xiàn)任成員使用相同的密鑰,這樣的事實(shí)可能會(huì)被以前的小組成員所利用。惡意的一方可以使用過時(shí)的密鑰向組發(fā)送非法的消息加密,或發(fā)送合法郵件到該組下的過時(shí)的密鑰可以哄到當(dāng)前的一些成員。顯然,一個(gè)集中密鑰管理解決方案是不可靠的設(shè)計(jì)。系統(tǒng)和網(wǎng)絡(luò)經(jīng)常變慢或者崩潰,我們需要一個(gè)架構(gòu),可以有效一個(gè)處理這些現(xiàn)實(shí)情況。密鑰管理解決方案的評估標(biāo)準(zhǔn)基于以上的論述,我們展示和評估了一個(gè)安全多播組的組密鑰管理的替代解決方案。在我們討論每一個(gè)解決方案之前,我們也提出了一個(gè)有益研究和比較不同解決方案的標(biāo)準(zhǔn)列表,檢查標(biāo)準(zhǔn)比較不同的方案。每一個(gè)標(biāo)準(zhǔn)都列出并給予簡要介紹:系統(tǒng)架構(gòu):一個(gè)理想的系統(tǒng)面對網(wǎng)絡(luò)和系統(tǒng)故障可能會(huì)降低性能,但不應(yīng)該完全失敗。各種分層和分布式體系結(jié)構(gòu)可以提供這個(gè)級別的可用性,集中解決方案(尤其是簡單的解決方案)不能。故障恢復(fù):一個(gè)精心設(shè)計(jì)的系統(tǒng)不僅要經(jīng)受住各種結(jié)點(diǎn)和網(wǎng)絡(luò)故障,同時(shí)也能從大多數(shù)系統(tǒng)故障中恢復(fù),而無需重新初始化整個(gè)組。可擴(kuò)展性:解決方案應(yīng)擴(kuò)展到系統(tǒng)能夠處理非常大的并且分布廣泛群體。同時(shí)它也應(yīng)該能夠處理頻繁的密鑰更新,以適應(yīng)高度動(dòng)態(tài)的成員群體??刂破鞯拿荑€數(shù):一般解決方案要求組控制器存儲(chǔ)n+1鍵:每個(gè)組成員的一對雙密鑰,再加上一個(gè)共享的組密鑰。其他的方案中,控制器儲(chǔ)存更多的密鑰來容納更多高效的密鑰管理算法。組成員的密鑰數(shù):一般解決方案要求成員存儲(chǔ)密鑰的數(shù)量一直不變,但其帶寬的需求是不可實(shí)現(xiàn)的。后來我們提出了一個(gè)替代方案,即每個(gè)成員存儲(chǔ)更多的密鑰,但同時(shí)也實(shí)現(xiàn)更高的帶寬效率。加入和離開保密:在小組交流時(shí),加入保密,確保新組的成員不能讀取過去的消息,離開保密確保過去的組的成員不能讀取當(dāng)前或未來的消息。在一般情況下,加入保密容易實(shí)現(xiàn)高效:在有新成員加入時(shí),組密鑰可以及時(shí)更新。新密鑰和舊的組密鑰一起加密后通過多播傳送給該組。一般的解決方案,保留加入保密和離開保密;然而,使用一般的解決方案維護(hù)離開保密,這就意味著在每一個(gè)成員離開該組時(shí)需要一個(gè)線性成本密鑰更新。一些替代解決方案并不總是通過在離開的時(shí)候更新密鑰來提高密鑰更新效率。在一些應(yīng)用中,這種行為是可行的。總體上來說保證加入和離開保密是必要的。新成員加入時(shí)密鑰更新的消息數(shù):在新成員加入時(shí)一般的解決方案更新組密鑰需要使用n條消息:每個(gè)小組成員一條信息。一些替代方案在更新組密鑰時(shí)利用多播在消息帶寬一定的情況下。而其他交易在加入時(shí)使用代價(jià)較高的密鑰分配,用以提高密離開時(shí)的鑰分配。離開時(shí)密鑰更新的消息數(shù):當(dāng)一個(gè)成員離開多播組,一般的解決方案使用n消息更新組密鑰:剩余的每個(gè)組成員一條消息。我們提出的替代方案,使用多播消息組合、物理和虛擬群的成員、以及輔助密鑰的層次結(jié)構(gòu)組合。通過這些做法來減少該組規(guī)模的次線性數(shù)量。密鑰管理的處理時(shí)間:一般的解決方案,當(dāng)一個(gè)成員加入或離開該組,該組控制器必須生成新的密鑰,然后加密和標(biāo)記含有該密鑰的n條信息。替代方案,為了達(dá)到更好的加密處理性能,要一個(gè)更復(fù)雜的密鑰管理結(jié)構(gòu)為代價(jià)。防止共謀:thenaivesolution,確保該多播組的非成員不能串通,打破多播組的加密方案。然而,也有其他的密鑰管理解決方案為了實(shí)現(xiàn)更有效的密鑰管理犧牲了防止共謀的強(qiáng)度。在一般情況下,這種做法在防止非成員之間的共謀上是可取的。可靠性要求:天真的解決方案使用單播向組成員分發(fā)密鑰。因此,在其中一個(gè)成員錯(cuò)過了密鑰的更新消息時(shí),很容易及時(shí)發(fā)現(xiàn)和糾正的。其他計(jì)劃使用多播更有效地分發(fā)密鑰更新消息,但是不可靠的IP多播(盡最大努力交付)。因此如果要使用多播來分發(fā)密鑰,必須采用可靠多播子系統(tǒng)。路由協(xié)議的可依賴性:在這一點(diǎn)上,并不是所有互聯(lián)網(wǎng)路由器支持IP多播,并存在著許多不同的多播路由協(xié)議。就長遠(yuǎn)來說,目前還不清楚是否會(huì)出現(xiàn)作為互聯(lián)網(wǎng)標(biāo)準(zhǔn)的多播協(xié)議。因此,保持完全獨(dú)立底層多播路由協(xié)議的組播安全基礎(chǔ)設(shè)施是最可取。然而,也存在這樣的解決方案,依賴特定的多播基礎(chǔ)設(shè)施。在靈活性的成本上,這些解決方案往往能夠比模塊化系統(tǒng)取得更好的性能。特定應(yīng)用的約束:在這篇文章中工作重點(diǎn)在通用安全多播解決方案上;然而,重要的是要注意,有許多應(yīng)用通用解決方案是不必要和低效的。本文的大綱和范圍在本文的其余部分中,我們總結(jié)了安全多播中的一些重要研究,包括工作進(jìn)程和原型系統(tǒng)。我們集中于安全組播體系結(jié)構(gòu),組密鑰管理,和數(shù)據(jù)包的源認(rèn)證的研究。我們的結(jié)論,包括對每個(gè)貢獻(xiàn)的一個(gè)高層次的概述。當(dāng)然,我們鼓勵(lì)有興趣的讀者咨詢的原始來源以了解更多。安全多播體系路由包的固有復(fù)雜性到大量的,分布廣泛的接受組成為設(shè)計(jì)安全多播的體系框架的動(dòng)機(jī)。lolusIolus[5],是高層次的安全多播的基礎(chǔ)設(shè)施.作為一個(gè)獨(dú)立的組密鑰管理服務(wù)是非常有用的。它為多播應(yīng)用程序的安全多播或安全模塊提供服務(wù)。我們將會(huì)首先描述lolus的主要特點(diǎn),然后分析其優(yōu)點(diǎn)和缺點(diǎn)。體系結(jié)構(gòu)框架lolus將多播組按層次分成許多子組,每個(gè)子組有較少的組成員并擁有自己的多播組地址。每個(gè)子組是相對獨(dú)立的??梢杂靡环N稱為安全分布樹的結(jié)構(gòu)來描述這種框架。這個(gè)樹由組安全代理(GSAs)構(gòu)成,它是一種可信賴的實(shí)體,負(fù)責(zé)協(xié)調(diào)分組的路由并維護(hù)組的安全性。在結(jié)點(diǎn)上的GSA稱為組安全控制器(GSC),其它的GSAs稱為組安全中(GSIs)。GSI主要為子組提供兩種服務(wù):管理本子組的密鑰;處理本子組和其它子組問的通信。GSls和相應(yīng)的子組可以分布在多個(gè)層次上,低層次的GSIs作為高層次GSIs的客戶。所有的這些GSAs和GSls形成了整個(gè)多播組的一個(gè)映像。圖1是一個(gè)安全分布樹的例子。圖1安全分布樹操作語義本節(jié)提供了一個(gè)最重要的操作細(xì)節(jié)的lolous高層次的概述,包括用于初始化組,添加和刪除成員,并傳送信息的算法。組的初始化和成員的加入:嚴(yán)格地說,要啟動(dòng)安全多播組只需要先啟動(dòng)組中的GSCoGSC擁有一張?jiān)L問控制列表,通過它可以設(shè)置一些主機(jī)有權(quán)訪問安全組。一旦GSC啟動(dòng)起來,GSIs和其它成員就可以申請加入它的子組。具體實(shí)現(xiàn)時(shí)可以將所有的GSls也啟動(dòng)起來,但這不是必需的;OSls也可以等到有成員申請加入時(shí)再啟動(dòng)。要加入安全多播組,主機(jī)要定位一個(gè)GSA并通過安全單播通道向它發(fā)出加入請求。在收到請求后,GSA檢查信息庫以判斷是否接受請求。假設(shè)接受了請求,GSA要執(zhí)行以下操作:首先生成一個(gè)密鑰,它只在GSA和新成員之間共享。然后將密鑰以及其它一些和新成員有關(guān)的信息存儲(chǔ)到數(shù)據(jù)庫中。最后通過安全單播通道將新生成的密鑰送給新成員。在這以后,GSA需要更新子組的密鑰。為此,GsA在子組中多播一條密鑰更新信息,它包含新的密鑰(用舊密鑰加密),所有組中已有的成員都能夠收到這條信息。然后它通過安全單播通道將新的組密鑰發(fā)送給新成員。在執(zhí)行以上這些操作之前,GSA本身必須是多播組的成員。如果不是,那么它可以用類似的步驟加入父親子組。成員的刪除:有兩種情況會(huì)引發(fā)成員的刪除,即成員自己提出離開請求或是GSA強(qiáng)制成員離開。如果要?jiǎng)h除的成員是子組中的最后一個(gè),那么GSA與它的父GSA聯(lián)系并將自己從安全分布樹中刪除。如果組中還有其它成員,GSA必須產(chǎn)生新的子組密鑰并通過單播將它發(fā)布給子組中剩余的成員。更新操作附加的通信開銷是子組大小的線性函數(shù),與整個(gè)多播組的大小無關(guān)。也可以使用多播來實(shí)現(xiàn)密鑰更新,這需要將新的組密鑰分別用每個(gè)單播密鑰加密并封裝在一條信息里。這減少了更新所需發(fā)布的信息數(shù),代價(jià)是增加了信息長度并需要可靠的多播傳輸支持。數(shù)據(jù)傳輸:因?yàn)槊總€(gè)分組適用不同的密鑰,在GSIs中負(fù)責(zé)傳輸數(shù)據(jù)從一個(gè)密鑰到其它,并且選擇合適的路由將其傳送到其它的GSI。如圖2所示,如圖2所示,如果在小組1的一個(gè)客戶端發(fā)送消息到組,他需要為小組1將信息用子組密鑰加密。小組1所有的成員都知道這個(gè)密鑰,包括GSI;然而,小組1外的任何人都不知道這個(gè)密鑰。為了將消息發(fā)送到其它小組,需要用GSI對消息進(jìn)行解密,并為小組12創(chuàng)建新的密鑰,然后將密鑰發(fā)送到小組12的所有成員。一旦收到消息,GSI將會(huì)對其解密,并對其重新加密,然后將密鑰發(fā)送給小組2的所有成員。Subgroup1zClientClientClientClientSuhgro叩1Subgr0UR2CliAnt圖2lolus中的數(shù)據(jù)傳輸Subgroup1zClientClientClientClientSuhgro叩1Subgr0UR2CliAnt圖2lolus中的數(shù)據(jù)傳輸lolus方案的缺點(diǎn)也很明顯:管理多個(gè)子組需要額外的資源,當(dāng)組很大,子組很多時(shí),這種復(fù)雜的層次結(jié)構(gòu)將降低系統(tǒng)性能,對于特定的應(yīng)用程序,如果可以事先估計(jì)到組成員的數(shù)目和分布情況,那么通過合理的規(guī)劃這種層次結(jié)構(gòu),能夠減弱這種影響。由于Internet本身就是由各種自治系統(tǒng)組成的,lolus的內(nèi)在結(jié)構(gòu)符合這一特點(diǎn),因此可以參考網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)來設(shè)計(jì)安全分布樹。雖然這種結(jié)構(gòu)具有一定的分布式安全性。但GSC卻是整個(gè)系統(tǒng)的脆弱點(diǎn),它的崩潰將導(dǎo)致整個(gè)系統(tǒng)失效,為了避免出現(xiàn)這種情況,可以在最高層引入多個(gè)GSC,各GSC間通過分布式協(xié)議進(jìn)行協(xié)商,確定一個(gè)主GSC,主GSC執(zhí)行一般操作,其它GSC充當(dāng)后備。當(dāng)主GSC失效時(shí),其它GSC重新協(xié)商產(chǎn)生新的主GSC。新的主GSC通告其子GSI,更新地址信息。這種方式通過增加冗余信息提高了系統(tǒng)的健壯性。北電網(wǎng)絡(luò)框架我們解決第二個(gè)架構(gòu)來自一對北電公布的Internet草案。文獻(xiàn)[6]指定一個(gè)高層次的的體系結(jié)構(gòu)框架,沒有討論密鑰管理的細(xì)節(jié),和[7]介紹了可使用的架構(gòu)內(nèi)的一個(gè)特別的密鑰管理解決方案,。我們將會(huì)總結(jié)這兩項(xiàng)草案。高層次的體系結(jié)構(gòu)框架一一北電網(wǎng)絡(luò)架構(gòu)包含一個(gè)區(qū)域的兩個(gè)層次結(jié)構(gòu)。在最高級別的主干區(qū)域,它是由許多葉片地區(qū)接壤。每個(gè)葉區(qū)域有邊界的密鑰管理,這也是一個(gè)主干區(qū)域成員。圖3展示了這個(gè)設(shè)計(jì)。每個(gè)葉區(qū)域的邊境密鑰管理為主干密鑰參加密鑰管理協(xié)議。

MWKeytPinlfttcrfl.<RjtorBorderMemberim&rKiig^rM新b升廠;M^nibnr占生心:MemberKsuterrftanagertixderBprdefKe^iranslat-or白TMemberMemLer,M^rnbet;tTian^ger/;—_MWKeytPinlfttcrfl.<RjtorBorderMemberim&rKiig^rM新b升廠;M^nibnr占生心:MemberKsuterrftanagertixderBprdefKe^iranslat-or白TMemberMemLer,M^rnbet;tTian^ger/;—_工止■四罰南Is?RouteTjt^^商/甌五;fKwtier斜、?,宰匕上1--7Trunk主干密鑰允許每個(gè)葉區(qū)域和消息轉(zhuǎn)換的邊界密鑰管理,發(fā)送和接收消息和來自于其他葉區(qū)域。主干密鑰管理的細(xì)節(jié)是不確定的;然而,在實(shí)踐中,主干密鑰可以由一個(gè)集中式主干控制器進(jìn)行管理或邊界的密鑰管理人員之間的談判。一個(gè)強(qiáng)大的主干密鑰協(xié)商算法可以使這個(gè)架構(gòu)非常強(qiáng)大,可以應(yīng)付在任何邊界的密鑰管理器的故障。在此我們不討論主干層次更詳細(xì)的內(nèi)容。在下一節(jié)中,我們討論每個(gè)葉區(qū)域內(nèi)的密鑰管理基礎(chǔ)設(shè)施。葉區(qū)域密鑰管理一一我們前面提到的將多播組成員進(jìn)行分組,當(dāng)成員變化時(shí)可以將影響局部化。這種體系結(jié)構(gòu)的另一個(gè)好處是,它允許每個(gè)葉區(qū)域擁有自己的密鑰管理技術(shù)。在實(shí)踐中,任何密鑰管理方案可用在每個(gè)葉區(qū)域。但是北電葉區(qū)域提出了具體的密鑰管理基礎(chǔ)設(shè)施,我們將會(huì)在這里對它進(jìn)行描述。每個(gè)葉的邏輯組成部分:密鑰管理器,一個(gè)或多個(gè)具有多播功能的路由器,一個(gè)密鑰的翻譯器,和一定數(shù)量的多播組成員。在葉區(qū)域最高級別的密鑰管理者是域密鑰分配器(DKD)。DKD為一系列區(qū)域密鑰分配器(AKDs)管理密鑰;每一個(gè)ADK作為多播組子集的密鑰管理者。這些多播組子集在葉區(qū)域。DKD和AKDs的目的是進(jìn)一步是組成員變動(dòng)的影響局部化。圖4顯示了一個(gè)leaf的邏輯結(jié)構(gòu)。圖4一個(gè)leaf的邏輯結(jié)構(gòu)北電的葉級密鑰管理方案的一個(gè)有趣的特點(diǎn)是,它由兩個(gè)平面組成:控制平面和數(shù)據(jù)平面。在一片樹葉,DKD和AKDs存儲(chǔ)在控制平面。DKD管理密鑰稱為All-KD-key,在葉之間共享DKD和所有的AKDs。每個(gè)AKD管理區(qū)域組密鑰。這個(gè)密鑰將會(huì)在組內(nèi)和它所有的子集成員里共享。但是這些密鑰不用于加密應(yīng)用數(shù)據(jù)。整個(gè)葉的應(yīng)用程序數(shù)據(jù)是在一個(gè)特殊的多播密鑰(MKey)下加密的。它是數(shù)據(jù)平面的一部分。邊境密鑰管理轉(zhuǎn)換應(yīng)用程序數(shù)據(jù)和來自主干密鑰和葉多播密鑰之間的主干。控制平面的目的是有效地分配多播密鑰到葉中多播組的所有成員。因此,隨時(shí)隨地在葉成員加入或離開多播組,所有組成員必須接受一個(gè)新的多播密鑰。這可能看起來代價(jià)很高,但因?yàn)槌蓡T變動(dòng)只限于一個(gè)AKD區(qū)域,而在其他區(qū)域的AKDs可以通過多播的方式將多播密鑰發(fā)送給組成。他們可以在區(qū)組密鑰下加密新的多播密鑰。在成員變動(dòng)頻繁的區(qū)域,其密鑰管理語義也是相當(dāng)復(fù)雜的。假設(shè)每個(gè)區(qū)域的成員數(shù)量仍然相對較小,即使是在一個(gè)簡單的密鑰管理解決方案中,這樣的成本也不是很高。優(yōu)點(diǎn)和缺點(diǎn)一一北電的框架有類似于lolus的地方:在其層次結(jié)構(gòu)最大限度地減少成員變動(dòng)成本,并使它對結(jié)點(diǎn)故障有更加強(qiáng)大處理能力。然而,與lolus不同的是在其頂層(主干線)的地區(qū)可能是完全分布式的。從而有可能比lolus在處理高層次的結(jié)點(diǎn)故障上有更好的健壯性。在其他大多數(shù)方面,這個(gè)框架與lolus相比有相同的長處和短處。SRM工具包Changetal.已經(jīng)建立了一個(gè)關(guān)于安全可靠多播(SRM)工具包的Java原型。SRM是結(jié)合Iolus和北電網(wǎng)絡(luò)框架的原理推導(dǎo)出來的。總體結(jié)構(gòu)——SRM的架構(gòu)由以下幾部分組成組成:目錄服務(wù)器主控制器,類似于lolus中的GSC一些區(qū)域控制器,類似于lolus中的GSIs一個(gè)處理區(qū)域間數(shù)據(jù)包路由的反射器使用其他系統(tǒng)組件所提供的服務(wù)的客戶端該系統(tǒng)采用兩個(gè)層次結(jié)構(gòu),類似北電的框架,將多播組分割成很多區(qū)域。一個(gè)域控制器管理在域中客戶端共享的密鑰。每個(gè)域也都有反射與域控制器相對應(yīng)。它從該組中的其他區(qū)域轉(zhuǎn)換和發(fā)送路由數(shù)據(jù)包,,類似于lolus中GSIs轉(zhuǎn)換和發(fā)送路由數(shù)據(jù)包的方式。在更高的層次,是一個(gè)頂級配置的服務(wù)器,也稱為主控制器。它用來管理域控制器。目錄服務(wù)器實(shí)現(xiàn)一組目錄服務(wù)。域控制器加入一個(gè)組播組時(shí),它使用輕量目錄訪問協(xié)議(LDAP)來回答客戶的查詢。因此,它必須有一個(gè)存儲(chǔ)該組域控制器的數(shù)據(jù)庫,以及可能加入客戶的一個(gè)訪問控制列表(ACL)。主控制器與啟動(dòng)了的目錄服務(wù)器聯(lián)系,然后為該組和其他域控制器的地址列表下載ACL??蛻舻怯浖叭∠怯浺灰患尤胍粋€(gè)組,一個(gè)客戶第一次接觸的目錄服務(wù)器并獲得該組的域控制器的地址。然后,客戶端接觸在一個(gè)安全的單播通道的域控制器,并驗(yàn)證自己。如果認(rèn)證成功,在域控制器更新域的共享密鑰,并發(fā)送相應(yīng)的消息域的新成員和現(xiàn)任成員。刪除客戶端與添加一個(gè)客戶端類似。去除發(fā)生通過更新域的共享密鑰和將相應(yīng)的消息多播給區(qū)域中的客戶。我們稍后來討論SRM密鑰管理結(jié)構(gòu)的細(xì)節(jié)。優(yōu)勢和缺點(diǎn)一一SRM構(gòu)架的優(yōu)缺點(diǎn)與北電網(wǎng)絡(luò)構(gòu)架有很多相似的地方。它的兩個(gè)層次的框架是簡單,但比之于lolus的多層結(jié)構(gòu),就缺少潛在的可擴(kuò)展性。此外,不同于北電的框架,它受到在主控制器中的單一故障點(diǎn),與lolus類似。技術(shù)比較一一表1總結(jié)了我們剛剛討論過的三種框架的主要特點(diǎn)。Criterialokts.1|Nortel,■nSftM/剪岫"「W景芯祗悠*?我溪炫.?賣得*夢艾IIO4代虹':口*件上專壬弋.L.飼.通2;g始忠土器湄舟蚌翌峻邪爽M耕麒??班槃『笑I;:.卸啊寒盤*冥成f詭";M…a*心*5%—1缺楸?噂嚏誓;..兢房W壬£^汶成勤蚓h*咆?街#5「岫傳a面疆1蜩涂幽£咋”加TTTre¥城咨亨F惹表1安全多播體系結(jié)構(gòu)的比較組密鑰管理技術(shù)前面的部分集中在組架構(gòu),但它也描述了一些為這些架構(gòu)已提出的密鑰管理方案。在本節(jié)中,我們把注意力放在高效的多播組密鑰管理算法和結(jié)構(gòu)上。我們將討論的一些方案不是在所有情況下都適用,是在可靠多播的基礎(chǔ)上。然而,他們很有趣,可能證明是有用的,特別是子密鑰管理。我們首先從回顧一般的密鑰管理方案開始展開討論,然后我們將介紹基于邏輯的密鑰層次和單向函數(shù)樹的更加有效的策略。最后,我們將提出一個(gè)方案,通過犧牲共謀靈敏度和加入/離開加密實(shí)現(xiàn)更好的效率。一般密鑰管理解決方案重談集中的組控制器在組間共享一個(gè)密鑰。在成員加入或離開時(shí),控制器更新密鑰通過單播通道將新密鑰發(fā)送給每個(gè)成員。每個(gè)客戶端存儲(chǔ)兩個(gè)密鑰(主一個(gè)與控制器共享的密鑰和一個(gè)組密鑰),控制器存儲(chǔ)n+1個(gè)密鑰(每個(gè)客戶端的一個(gè)密鑰,加上組密鑰)。這就是一般的密鑰管理解決方案。這個(gè)方案也有很多引人注目的積極特征。首先,它實(shí)現(xiàn)起來是簡單易行的。其次,它的密鑰存儲(chǔ)容量是合理的如果我們假定組控制器工作在一臺(tái)高效能的計(jì)算機(jī)上。然后,這個(gè)方案保證了加入和離開的保密性,并且容忍組中非成員之間任意的共謀。最后,這個(gè)方案不需要專業(yè)化、底層的基礎(chǔ)設(shè)施就像可靠的多播通信。然而,撇開這些優(yōu)點(diǎn),這個(gè)模型在組規(guī)模和組動(dòng)態(tài)上有所欠缺。網(wǎng)絡(luò)負(fù)載和組控制器在加入或離開時(shí)的處理負(fù)荷,同組的大小成線性比例。因此,除去它的一些理想特性,一般密鑰解決方案在除了小規(guī)模組之外的大部分時(shí)候是不適用的?;跇涞拿荑€管理現(xiàn)在我們介紹另外一種可供選擇的密鑰管理技術(shù)。這種技術(shù)使用了更加復(fù)雜的底層構(gòu)架和用以減少密鑰更新開銷的新增設(shè)想。Wallner等人和Wong等人曾由實(shí)驗(yàn)總結(jié),通過使用邏輯層次密鑰加密密鑰和可靠多播,所有密鑰更新產(chǎn)生的通訊和計(jì)算的成本同組的大小成對數(shù)增長。我們可以基于此管理組密鑰。Wong等人有各類密鑰圖表上進(jìn)行了廣泛的理論和實(shí)驗(yàn)分析;他們得出結(jié)論:大部分高效的組密鑰管理圖表是一個(gè)k叉樹。Wallner等人使用二叉樹以同樣的方式描述了密鑰管理結(jié)構(gòu)。在這一部分,我們將會(huì)描述和分析一個(gè)k叉樹更一般的情況。二叉樹算法是適用更一般情況的簡單的專業(yè)化模型?;跇涞拿荑€管理方案的工作過程如下:一個(gè)多播組有n個(gè)成員,從M1到M2,以及一個(gè)集成的組控制器。當(dāng)一個(gè)成員要加入多播組時(shí),它需要通過一個(gè)安全的單播通道與主控制器聯(lián)系。在新成員加入的同時(shí),它和主控制器生成了一個(gè)成對的保密密鑰。主控制器存儲(chǔ)一個(gè)k叉樹結(jié)構(gòu),每個(gè)結(jié)點(diǎn)包含一個(gè)密鑰。在樹的葉結(jié)點(diǎn)有n個(gè)秘密密鑰。主控制器通過此密鑰與各個(gè)成員進(jìn)行通信。每個(gè)成員存儲(chǔ)主控制器的密鑰的子集。成員j存儲(chǔ)的密鑰子集與葉結(jié)點(diǎn)j到根結(jié)點(diǎn)的路徑上的所有密鑰集合是一樣的,包括葉結(jié)點(diǎn)j和根結(jié)點(diǎn)本身。根結(jié)點(diǎn)存儲(chǔ)組的共享密鑰;樹中其他所有的密鑰都是輔助密鑰,僅用于更高效的密鑰更新。主控制器共享密鑰的總數(shù)約為:kn-1/k-1,每個(gè)成員所存儲(chǔ)的密鑰總數(shù)為log『。圖5說明了這棵樹的k=3,n=9。圖5k=3、n=9的k元密鑰管理樹現(xiàn)在我們討論的是在一個(gè)成員離開或者加入時(shí),密鑰是怎樣進(jìn)行更新的。在圖5中,假設(shè)M9離開了該組。當(dāng)組成員發(fā)生改變的時(shí)候,除控制器和變動(dòng)成員之間的共享密鑰之外,必須更新已加入和已離開成員的所有已知密鑰。在這個(gè)例子中,我們必須更新Kc和、碩。我們可以使用現(xiàn)有的密鑰層次以及可靠多播,高效地分配新的密鑰。首先,我們將發(fā)布一個(gè)新版本的Kc給那些需要的剩余成員。我們在K7和K8下通過單播或者多播發(fā)送加密的Kc。接著,我們將通過多播發(fā)送三次來發(fā)布一個(gè)新版本的Kroot,根據(jù)ka、Kb和新版本的^加密。在這一點(diǎn)上,M9可以有效地排除任何未知的通信。在新成員加入時(shí)更新密鑰的語義都非常相似。一般情況下,為一個(gè)K叉樹更新密鑰必須在樹的logkn層,在每個(gè)層次中,我們必須發(fā)送K條密鑰更新的消息。因此,基于樹的密鑰更新算法可以使用klogkn條消息來完成密鑰更新。這個(gè)方案里有有幾個(gè)需要注意重要的地方。首先,它需要一個(gè)可靠的多播基礎(chǔ)設(shè)施。這種做法是必要的,因?yàn)槿绻M成員錯(cuò)過了密鑰更新,他將不能夠參加小組交流或解密未來的密鑰更新消息。第二,這個(gè)方案可以很好地從組的大小這方面來衡量。關(guān)鍵更新,計(jì)算關(guān)鍵更新控制器發(fā)送的消息的成本,存儲(chǔ)的密鑰由每個(gè)組的成員都對數(shù)組的大小,而密鑰存儲(chǔ)在控制器的成本的大小呈線性關(guān)系組。第三,雖然這項(xiàng)計(jì)劃有效地處理較大的多播組,它并不一定能有效地處理動(dòng)態(tài)成員組。無論我們?nèi)绾斡行У馗陆M密鑰,我們?nèi)匀槐仨毎l(fā)送密鑰更新到每個(gè)組的成員,每個(gè)組成員的變化。這一觀察結(jié)果表明,基于樹的密鑰管理方案效果最好時(shí),作為一個(gè)子群密鑰管理方案內(nèi)使用前面介紹的架構(gòu)之一。單向函數(shù)樹Balenson等人提出了一種基于樹的密鑰管理的差異,在成員新加入或者離開時(shí)減少密鑰更新發(fā)送的消息數(shù)。他們的方案使用二進(jìn)制的單向函數(shù)樹(OFT)存儲(chǔ)組的密鑰層次。我們將在這里總結(jié)一下。組密鑰,葉結(jié)點(diǎn)存儲(chǔ)每個(gè)組的個(gè)別成員的密鑰,就像在標(biāo)準(zhǔn)的基于樹的算法。然而,在OFT中,有與每個(gè)結(jié)點(diǎn)關(guān)聯(lián)的多個(gè)密鑰。對于每個(gè)結(jié)點(diǎn)x,存在一個(gè)非盲的密鑰結(jié)點(diǎn)KX和盲結(jié)點(diǎn)密鑰K,x。盲結(jié)點(diǎn)的密鑰是運(yùn)用單向函數(shù)g到KX的結(jié)果,也就是說K’x=g(KX)。(計(jì)算上是不可行的,找到一個(gè)逆函數(shù)g',任何K’x映射到相應(yīng)的KX)。g可既可以是組的成員,也可以是非成員。每個(gè)組的成員都知道從葉到根的路徑上的每個(gè)結(jié)點(diǎn)的非盲密鑰。此外,每個(gè)成員都知道每個(gè)結(jié)點(diǎn)是一個(gè)從葉到根的路徑上的結(jié)點(diǎn)的同級密鑰盲的。圖6顯示了一個(gè)OFT樹的例子,突出特定組的成員的盲和非盲密鑰。圖6在OFT算法中組成員所知道的密鑰盲和非盲密鑰的目的是為了讓各組成員從較低級別的密鑰來計(jì)算更高級別的密鑰,從而減少密鑰組控制器必須明確在密鑰更新發(fā)送。每個(gè)內(nèi)部(非葉)樹中的結(jié)點(diǎn)包含一個(gè)派生密鑰,密鑰如下派生:假設(shè)該結(jié)點(diǎn)X是一個(gè)內(nèi)部結(jié)點(diǎn),而且,它的左邊和右邊的孩子們XL和XR分別。X的非盲密鑰,表示kx非盲密鑰是運(yùn)用一些混合功能,到XL和XR的盲密鑰;顯然,kx=f(k'xL,k'xR)。f可以是一個(gè)簡單的XOR函數(shù),它不不像g具有單向x,它可以是眾所周知的。'對于每一個(gè)結(jié)點(diǎn)x,擁有K,小組成員可以使用g計(jì)算kx、k’x。這些大家也知道K的,盲密鑰結(jié)點(diǎn)s,這是x的同級結(jié)點(diǎn)。然后,使用f,他們可以結(jié)合Ks和k'x計(jì)算Kp,非盲的密鑰結(jié)點(diǎn)p,這是父結(jié)點(diǎn)x和s這個(gè)過程中,每一個(gè)成員都可以計(jì)算所有必要的密鑰,包括根密鑰。盲和非盲密鑰的目的是為了讓各組成員從較低級別的密鑰來計(jì)算更高級別的密鑰,從而減少密鑰組控制器必須明確在密鑰更新發(fā)送。每個(gè)內(nèi)部(非葉)樹中的結(jié)點(diǎn)包含一個(gè)派生密鑰,密鑰如下派生:假設(shè)該結(jié)點(diǎn)x是一個(gè)內(nèi)部結(jié)點(diǎn),而且,它的左邊和右邊的孩子們xL和xR分別。x的非盲密鑰,表示KX非盲密鑰是運(yùn)用一些混合功能,到xL和xR的盲密鑰;顯然,kx=f(k.k'xR)。f可以是一個(gè)簡單的XOR函數(shù),它不不像g具有單向性,它可以是公共的。對于每一個(gè)結(jié)點(diǎn)x,擁有K,小組成員可以使用g計(jì)算kx、k'x。這些大家也知道k的,盲密鑰結(jié)點(diǎn)s,這是同級結(jié)點(diǎn)x。然后,使用f,他們可以結(jié)合k'和k'計(jì)算k,非盲的密鑰sxp結(jié)點(diǎn)p,這是父結(jié)點(diǎn)x和s這個(gè)過程中,每一個(gè)成員都可以計(jì)算所有必要的密鑰,包括根密鑰。當(dāng)有成員加入或者離開多播組時(shí),組控制器必須更新從變動(dòng)結(jié)點(diǎn)到根結(jié)點(diǎn)路徑上的所有密鑰。但因?yàn)樗袃?nèi)部節(jié)點(diǎn)的密鑰都是來自其他密鑰的,唯一的新的控制器必須明確產(chǎn)生的密鑰是在受影響的葉子。然后,控制器必須重新計(jì)算基于新葉密鑰樹的派生密鑰。派生新的密鑰樹后,控制器必須安全組播足夠本組的密鑰信息,所以目前所有的小組成員可以重新計(jì)算任何改變密鑰的成員變化的結(jié)果。這個(gè)過程需要控制器的多播log2n密鑰更新,其中n是該組的大小。實(shí)際發(fā)送的消息是沿著從受影響的葉結(jié)點(diǎn)到樹的根的路徑的結(jié)點(diǎn)的所有兄弟姐妹的盲密鑰。這些新的密鑰在現(xiàn)有的密鑰基礎(chǔ)上加密,只有那些應(yīng)該得到更新成員,才有權(quán)限來解密每個(gè)消息。OFT密鑰管理方案實(shí)現(xiàn)基于樹的算法與在上一節(jié)的性能類似,存在細(xì)微的差別。第一,它減少了密鑰更新所需的消息數(shù)。第二,它要求每個(gè)組的成員執(zhí)行一些本地的計(jì)算,以獲取更高級別來自較低級別的盲和非盲密鑰密鑰,而標(biāo)準(zhǔn)的基于樹的算法,不需要任何計(jì)算組成員。第三,根據(jù)對其中混合函數(shù)f計(jì)算更高級別的非盲密鑰來自較低級別的盲密鑰,這個(gè)算法可能需要小組成員存儲(chǔ)21og2n密鑰:所有成員的路徑到根結(jié)點(diǎn)中的非盲密鑰,這些結(jié)點(diǎn)的同級結(jié)點(diǎn)的盲密鑰。(相比之下,標(biāo)準(zhǔn)的基于樹的算法,要求每個(gè)成員只存儲(chǔ)log2n密鑰。)盲密鑰存儲(chǔ)在同級結(jié)點(diǎn)中可能是沒有必要。然而,如果選擇f,使得y可以計(jì)算x和x,x=f(y,z).(XOR函數(shù)有這個(gè)正確),否則,基于樹的算法不同OFT的密鑰管理方案的概念是沒有標(biāo)準(zhǔn)的。因此,其基本的長處和短處是類似上述討論。SRM密鑰管理在SRM工具包前面所述密鑰管理使用一種新的方法。其方案是不實(shí)際的,因?yàn)樗梢栽谀承┣闆r下被打破,正如我們先前描述的那樣。然而,有趣的是,它的洞察力提供了組密鑰管理問題。我們將在這里解釋算法。設(shè)n是一個(gè)域的成員數(shù)量。域控制器存儲(chǔ)21og2n+1鍵,每個(gè)成員知道這些鍵log2n+1獨(dú)特的子集。在邏輯上這些密鑰是安排在兩個(gè)列表,大小為log2n。剩余的密鑰是組密鑰,所有成員都知道的。圖7顯示了存儲(chǔ)控制器根據(jù)該方案對于n=32密鑰的例子。要?jiǎng)h除該域的成員j,域控制器更新組密鑰并多播,它根據(jù)除j之外的每個(gè)密鑰來進(jìn)行加密。假設(shè)成員j知道密鑰1a,2b,3b,4a,和5b。如圖7,域控制器將加密密鑰1a,2b,3b,4a,5b下的新的組密鑰,讓每一位委員除外j可以解密至少一個(gè)消息。這個(gè)消息中包含新的組密鑰。這種密鑰管理方法比上面討論的基于樹的方案存儲(chǔ)更少的密鑰,同時(shí)也減少了來自組成員更少的信息。但是它是不實(shí)際的,它因?yàn)楣仓\而變得脆弱,并且很難保證在第一個(gè)成員刪除時(shí)加入或離開的保密性。圖7SRM密鑰管理系統(tǒng)為了了解這個(gè)方案的缺陷,考慮在其中兩名成員是在繼承域刪除。2Iog2n,密鑰在域控制器的兩個(gè)列表,成員都知道確切的一半,但他們不知道密鑰的相同設(shè)置。因此,每個(gè)成員都知道至少有一個(gè)密鑰,其他的不知道。當(dāng)域控制器從組中刪除的第一個(gè)成員,多播組控制器加密所有密鑰,并且刪除的成員不知道。然后,刪除第二個(gè)成員,域控制器再次更新組密鑰和多播,并加密所有的密鑰,第二個(gè)成員不知道。但在第一次刪除的成員必須知道一個(gè)刪除的第二個(gè)成員的不知道的密鑰,因此,先刪除成員可以解密新的組密鑰,在一個(gè)額外的成員將被刪除后,未來的通信可能會(huì)被竊聽。

這個(gè)密鑰管理方案是有趣的,因?yàn)樗噲D使用少于n個(gè)密鑰來管理一組大小為n的多播組。它可證明的任何方案共謀之后將會(huì)變得脆弱??吹竭@一點(diǎn),請注意,任何此類組,必須有一個(gè)成員適當(dāng)?shù)淖蛹疭——知道所有的密鑰,尤其是在S的用戶都知道一些其他的組的成員G,密鑰管理方案不能刪除S的所有成員,但在面對S的成員之間共謀之后保留G。技術(shù)比較表2列出了關(guān)于在本節(jié)中討論的每個(gè)密鑰管理算法的基本情況。誦翊域觥鹵做琪嫁血心以£匕暴哄瀏廓q津即i均卵澳、;:'?上■表2列出了關(guān)于在本節(jié)中討論的每個(gè)密鑰管理算法的基本情況。誦翊域觥鹵做琪嫁血心以£匕暴哄瀏廓q津即i均卵澳、;:'?上■■.■-.■■■■,.土■■■-方.攔0WW?待f鋰.澄w.;■■■6■X-rd".?呻就?。恢|(zhì)w臉族演廉游¥密筒涔二.史.笙河-戒整押媛珪敦林_■■■-0LcX-V疑g江s?-■VV,.w;」點(diǎn)"胃誦誨漏幌商窿砂W尋;:::」;打..村、、."必洪早;.源醐財(cái)《菸:蛔y:BE皿山口£叩理華探口:被奶供現(xiàn)域:對冽gw點(diǎn)泌咨以料例三*?、。低血);,/.忑如挪您毓前盛磷匪崩而繇歸勒齡J'■=mt、:::!■:::"、「坐饕,J??3E1,.?.■-鼻町*%A-■;;s.Fl』心1或指勺訓(xùn)店診n專冬].....IJZN"套&瀚航甘@切饋就3客翌;、-i?w號(hào)京:“三旗上麟燃H俗尚;:!普旋t攜爵w妙烈■■■?蜻(:修明藝■11■111■ws、.,:Tdi■凈廿”提二:無"注弟■二杞K房三土脂;?5-r:■:■-「■..:麗善澹捋數(shù)據(jù)包源認(rèn)證我們現(xiàn)在討論安全多播的第三個(gè)活躍的研究領(lǐng)域。數(shù)據(jù)包源認(rèn)證(即對接收到數(shù)據(jù)包的發(fā)送者進(jìn)行身份驗(yàn)證)是多播中的基本安全問題。有三個(gè)層次源認(rèn)證;在這里我們按照復(fù)雜性增加的順序描述了他們。在第一和最基本的層次上,注冊接收器可以確認(rèn)由注冊組的成員(無論是注冊發(fā)件人或注冊接收器)發(fā)送的一個(gè)包,而不必知道發(fā)件人的身份。這個(gè)級別的身份驗(yàn)證,允許接收器知道該數(shù)據(jù)包并沒有被注入安全組外的人。為實(shí)現(xiàn)這一級別的身份驗(yàn)證的充分理解和有效的加密解決方案:使用一個(gè)共享的秘密密鑰的消息認(rèn)證碼(MAC)。同樣的技術(shù)采用的是單播認(rèn)證(例如,在IPSEC)。分布式共享的秘密消息認(rèn)證碼密鑰可以使用同一組密鑰管理方案為數(shù)據(jù)加密密鑰。然而,這種級別的身份驗(yàn)證,尤其是其執(zhí)行使用消息認(rèn)證碼,大多數(shù)多播組設(shè)置不足,因?yàn)橄⒄J(rèn)證碼可以被任何人訪問的密鑰生成。特別是,基于消息認(rèn)證碼的解決方案允許任何注冊的接收器偽裝成注冊發(fā)件人。這可能會(huì)導(dǎo)致在大組設(shè)置存在顯著的安全風(fēng)險(xiǎn)。同樣的技術(shù)采用的是單播認(rèn)證(例如,在IPSEC)。分布式共享的秘密消息認(rèn)證碼密鑰可以使用同一組密鑰管理方案為數(shù)據(jù)加密密鑰。然而,這種級別的身份驗(yàn)證,尤其是其執(zhí)行使用消息認(rèn)證碼,大多數(shù)多播組設(shè)置不足,因?yàn)橄⒄J(rèn)證碼可以被任何人訪問的密鑰生成。特別是,基于消息認(rèn)證碼的解決方案允許任何注冊的接收器偽裝成注冊發(fā)件人。這可能會(huì)導(dǎo)致在大組設(shè)置存在顯著的安全風(fēng)險(xiǎn)。在第二級的認(rèn)證,注冊的接收器可以驗(yàn)證,是由注冊的發(fā)件人發(fā)送的數(shù)據(jù)包。這允許接收器去確定該數(shù)據(jù)包的來源:是已注冊的發(fā)送者,或者沒有注冊的接收器,或者一些局外人發(fā)送的。第三也是最可取的身份驗(yàn)證形式,允許注冊的接收器精確地確定已注冊的發(fā)送方。有效地實(shí)現(xiàn)這些源認(rèn)證更可取的形式是一個(gè)很活躍的研究領(lǐng)域。在本節(jié)的其余部分,我們將展示如何實(shí)現(xiàn)源的身份驗(yàn)證的解決方案。然后,我們討論了幾種解決方案和基于標(biāo)準(zhǔn)的評估。判斷源認(rèn)證解決方案的標(biāo)準(zhǔn)這兒有幾個(gè)可以判斷源認(rèn)證的標(biāo)準(zhǔn)。簡單地說,它們是:效率:由于每一個(gè)數(shù)據(jù)包必須經(jīng)過認(rèn)證,認(rèn)證信息應(yīng)該是低成本地生成和驗(yàn)證。此外,由于必須放置在每一個(gè)數(shù)據(jù)包的認(rèn)證信息,這些信息的大小應(yīng)小。可靠性要求:某些身份驗(yàn)證方案需要來自底層傳輸機(jī)制某種形式的可靠性。可靠的要求可能有所不同,從絕對的可靠性(即后面板的序列數(shù)據(jù)包的順序沒有丟包)到部分的可靠性,這就要求,大多數(shù)數(shù)據(jù)包被接收。IP組播是一種盡最大努力交付的服務(wù),可靠多播目前的解決方案是復(fù)雜的,昂貴的部署,尚未標(biāo)準(zhǔn)化。因此,可靠性是一個(gè)重要的評價(jià)標(biāo)準(zhǔn)。共謀的脆弱性:理想的情況下,身份驗(yàn)證方案應(yīng)該抵制小組成員之間的共謀。不過,也有同謀者他們抵制參數(shù)化的高效認(rèn)證計(jì)劃中的類,在某些情況下,這些可能是有用的。延遲:有些計(jì)劃要求的發(fā)件人和/或接收之前要收集的幾個(gè)數(shù)據(jù)包驗(yàn)證他們一起,這可能無法順利單向流動(dòng)的問題,但重要的問題是一個(gè)高度互動(dòng)的應(yīng)用程序,其中包一旦生成必須盡快發(fā)送。一般的認(rèn)證方案最直觀的解決方案的認(rèn)證問題,對每個(gè)數(shù)據(jù)包使用的公鑰標(biāo)記。為了實(shí)現(xiàn)組發(fā)件人身份驗(yàn)證(即保證每一個(gè)數(shù)據(jù)包從該組中的注冊發(fā)件人),所有發(fā)送者可以有一個(gè)單獨(dú)的私有標(biāo)記密鑰。這個(gè)解決方案是可取的,因?yàn)樗ぷ饔谕耆豢煽康沫h(huán)境工程,對共謀免疫,盡量不引入延遲。不過,這種方法的性能也存在很大問題。公共密鑰標(biāo)記使用可接受的算法和密鑰生成和密鑰長。而密鑰生成和標(biāo)記驗(yàn)證的開銷是非常昂貴的。例如,即使是高端工作站也可以只產(chǎn)生約501024位RSA標(biāo)記每秒。一些多播應(yīng)用需要包少吞吐量,因此不能將CPU周期的很大一部分投入到數(shù)據(jù)包標(biāo)記。此外,私鑰標(biāo)記的大小一般是遠(yuǎn)遠(yuǎn)大于消息認(rèn)證碼,在一些設(shè)置中這可能是一個(gè)問題。因此,公鑰標(biāo)記每包的解決方案是不實(shí)際的的。認(rèn)識(shí)到這一點(diǎn)促使研究更高效的認(rèn)證方案。我們將討論以下方案中的一部分。多個(gè)消息認(rèn)證碼的算法一般的解決方案的一種替代方法是簡單地放寬認(rèn)證的安全要求。例如,可以使用更有效,但少被廣泛研究的標(biāo)記算法。如果底層的密碼假設(shè)是有效的,這種方法可以提供快速,安全的身份驗(yàn)證。任何依賴他們的方案,可以很容易打破。因此,這種類型的解決方案遭受主要缺陷,打破方案需要難以量化的代價(jià)。一個(gè)有效的多播數(shù)據(jù)包認(rèn)證的方法被提出。這種方法放松安全需求,但它不受這種缺點(diǎn)的影響。這一概念被稱為非對稱消息認(rèn)證碼。這種方法的基本思路是,發(fā)送者知道幾個(gè)密鑰,并與受助人共享這些密鑰。這一屬性,可能是沒有N個(gè)接收器的分組應(yīng)該知道任何其他接收的所有已知的密鑰。服務(wù)器可以驗(yàn)證計(jì)算使用其所有的密鑰和互助委員會(huì)追加所有這些消息認(rèn)證碼的消息。這種消息認(rèn)證碼的集合被稱為非對稱的消息認(rèn)證碼。每個(gè)收件人可以驗(yàn)證它知道秘密密鑰不對稱消息認(rèn)證碼的部分,如果所有這些消息認(rèn)證碼是有效的,該接收器能夠接受真正的消息。在一個(gè)完全不可靠的設(shè)置工作,該解決方案是高效計(jì)算的盟友,不會(huì)引入延遲。請注意,一個(gè)接收器不能自行偽造一個(gè)不對稱的消息認(rèn)證碼,因?yàn)樗恢腊l(fā)件人的所有鍵甚至一些其他的收件人的所有已知的密鑰。根據(jù)該小組的屬性如上所述,甚至n接收器不能勾結(jié),偽造一個(gè)不對稱的MAC欺騙其他一些收件人。但是,如果有N多同謀者,該計(jì)劃的安全性,可以打破。此外,如果有足夠的同謀者知道所有發(fā)送方的密鑰,該方案將會(huì)完全分解。這是很容易地看到,由發(fā)送方計(jì)算消息認(rèn)證碼的數(shù)量是同謀者數(shù)量的線性函數(shù)。這種方法的優(yōu)點(diǎn)是,可以聘請研究和加密安全的消息認(rèn)證碼算法,它可以保持?jǐn)?shù)量上的限制,直到安全。但是,即使這個(gè)計(jì)劃是有用的,在許多情況下(例如,當(dāng)組比較小的時(shí)候,共謀是可以控制的)當(dāng)組很大時(shí),共謀大都有可能發(fā)生,而不易察覺。這個(gè)方案的另一個(gè)問題是用于監(jiān)視共謀者追加的消息認(rèn)證碼的數(shù)量是非常龐大的,每個(gè)數(shù)據(jù)包可能將會(huì)引入大量的帶寬開銷。為了解決這個(gè)問題,注釋14還介紹了這個(gè)算法的變型。在這個(gè)變型算法中使用了更多的消息認(rèn)證碼,每個(gè)只有一位長。這極大地降低了對于規(guī)模的要求,只有輕微地影響方案的安全。(在沒有n個(gè)共謀者的情況下偽造信息也是可能的,但是概率是非常小的。)流標(biāo)記解決方案如果傳輸?shù)目煽啃圆皇且粋€(gè)問題,這兒有一個(gè)叫做流標(biāo)記的方法??梢杂盟鼇砗炇鹩行У亩嗖?shù)據(jù)包,并提供安全保障與數(shù)字標(biāo)記法。在這種方法中,只有一個(gè)普通的標(biāo)記傳輸流或一次性的下一個(gè)數(shù)據(jù)包,可以驗(yàn)證一次時(shí)間的私鑰標(biāo)記的公鑰的開始。然而,這種方法不容忍包丟失。雖然這可能不是一個(gè)問題,它是一個(gè)可靠的互聯(lián)網(wǎng)協(xié)議(例如,基于TCP/IP)使用IP組播UDP組播應(yīng)用的重大問題。流標(biāo)記的另一個(gè)問題是,如果不知道被送到流提前發(fā)件人,發(fā)件人需要嵌入到數(shù)據(jù)包流一次密鑰和標(biāo)記。這些密鑰和標(biāo)記都相當(dāng)大,在每個(gè)數(shù)據(jù)包可以導(dǎo)致大量的空間開銷。如果發(fā)件人允許引進(jìn)的延遲一些開銷可以減少,但這不是一個(gè)可行的點(diǎn)對點(diǎn)的交互式多播應(yīng)用,如分布式仿真和游戲。流量和多播的數(shù)字標(biāo)記方案當(dāng)發(fā)送方被允許引入延遲和多播組連續(xù)數(shù)據(jù)包的時(shí)候,注釋[17]中提出了不同的報(bào)文認(rèn)證方法。從本質(zhì)上講,在一個(gè)時(shí)間間隔內(nèi)這種方法形成來自收集數(shù)據(jù)包的身份驗(yàn)證樹,以及標(biāo)志認(rèn)證樹的根。每個(gè)數(shù)據(jù)包是增強(qiáng)根和輔助信息。這些輔助信息包括對數(shù)的很多驗(yàn)證樹節(jié)點(diǎn)的哈希標(biāo)記。這使得每個(gè)數(shù)據(jù)包單獨(dú)驗(yàn)證,因此該方案工作在在完全不可靠的設(shè)置下。這個(gè)方案本質(zhì)上是一個(gè)標(biāo)記方案,因此避免共謀攻擊。在客戶-服務(wù)器方式中,這種做法是相當(dāng)有效的。因?yàn)樵诳蛻?服務(wù)器方式中延遲不是問題。服務(wù)器是專門為多播流服務(wù)的,每一個(gè)合理的暢通率和處理器負(fù)載范圍嚴(yán)格執(zhí)行少數(shù)。出于這個(gè)原因,這項(xiàng)計(jì)劃被用來提供音頻和視頻會(huì)議的實(shí)時(shí)傳輸協(xié)議(RTP)的認(rèn)證。然而,這種方法較為普遍遭受形成幾個(gè)實(shí)際的弊端。首先,如前所述,延遲和分組發(fā)送者包不同于點(diǎn)對點(diǎn)的互動(dòng)多播應(yīng)用,如分布式仿真和游戲的。第二是提供多種多播流的問題。通過下面一個(gè)例子是最好的說明。假設(shè)一臺(tái)服務(wù)器有足夠的周期執(zhí)行每秒10個(gè)公鑰操作。這樣一臺(tái)服務(wù)器可能為把數(shù)以百計(jì)的鑒別順暢包/秒的延遲以很小的幾分之一秒。然而,如果相同的服務(wù)只要求發(fā)送50種不同的流量,數(shù)據(jù)包速率為1包/秒(例如,為多個(gè)手持設(shè)備提供服務(wù)),整個(gè)共50包/秒。它將不能滿足其要求,除非相同的簽約認(rèn)證樹數(shù)據(jù)結(jié)構(gòu)關(guān)密鑰和分享不同的流動(dòng)或?qū)γ恳粋€(gè)流程平均延遲的5s。這樣的延誤幾乎都是不可接受的。共享標(biāo)記密鑰和認(rèn)證樹的數(shù)據(jù)結(jié)構(gòu)在幾個(gè)不同的復(fù)雜的軟件架構(gòu)在發(fā)送者端會(huì)導(dǎo)致無關(guān)流動(dòng)。放置在不同的流的身份驗(yàn)證機(jī)制選擇上的不合理限制,并公開共享的信息方面的不同的流隱私問題。第三,這項(xiàng)計(jì)劃的實(shí)際問題是,加入每封郵件的身份驗(yàn)證信息的大小是不固定的,它取決于短期的包率,這在許多應(yīng)用中是極不規(guī)范。在突發(fā)期間,包開銷會(huì)更高,這可能會(huì)導(dǎo)致額外的不良副作用,如由于片段技術(shù)增加丟。當(dāng)流通量較大時(shí),它沒有提供任何機(jī)制來理順突發(fā)處理器負(fù)載,這是第四個(gè)問題。在任何實(shí)際的系統(tǒng)中都存在這樣的時(shí)段,當(dāng)處理器有足夠的空閑時(shí)間來計(jì)算每秒的幾個(gè)標(biāo)記,也當(dāng)處理器基本上沒有時(shí)間來計(jì)算一個(gè)或兩個(gè)的時(shí)間。在這種方法中有沒有辦法充分利用CPU的空閑時(shí)間以幫助在高負(fù)荷時(shí)段。因此,當(dāng)CPU負(fù)載過重時(shí)系統(tǒng)性能將會(huì)嚴(yán)重降低?;旌蠘?biāo)記方案參考文獻(xiàn)[20]提出了基于混合標(biāo)記的多播認(rèn)證方法。這種方法不會(huì)遭受任何以上流量和多播的數(shù)字標(biāo)記方案所述的種種弊端,但是需要更多的身份驗(yàn)證信息?;旌系臉?biāo)記方案本質(zhì)上是一個(gè)標(biāo)記的每包的算法,這使得它既無延遲和也能免疫共謀攻擊。它特別適合于高度互動(dòng)提供強(qiáng)大的認(rèn)證申請。這個(gè)方案也工作(額外開銷小但意義重大)在完全不可靠的設(shè)置。混合標(biāo)記解決方案,避免問題的速度緩慢公鑰標(biāo)記算法使用一個(gè)離線/在線的方式與參考文獻(xiàn)[21]相似,在單向功能的基礎(chǔ)上它采用與極快的時(shí)間有限標(biāo)記與緩慢的公鑰標(biāo)記的組合。標(biāo)準(zhǔn)的公共密鑰數(shù)字標(biāo)記,算法是緩慢的。但單一的標(biāo)記密鑰可以在實(shí)踐中被用來簽署任意數(shù)量的消息。另一方面,基于單向函數(shù)的標(biāo)記方案的速度極快,但單一的私鑰只能用于安全印記單個(gè)郵件或小數(shù)量有限的消息。在脫機(jī)/聯(lián)機(jī)的方式,離線計(jì)算用來創(chuàng)建一次性密鑰的緩沖區(qū),并證明公共一次性密鑰使用常規(guī)的數(shù)字標(biāo)記方案。當(dāng)需要簽署一個(gè)消息,在線計(jì)算進(jìn)行計(jì)算的密鑰的標(biāo)記數(shù)。相應(yīng)的一次性密鑰緩沖區(qū)緩存這些密鑰。相應(yīng)的一次性公鑰以及其授權(quán)的私鑰也附于本標(biāo)記之上。由于一次性密鑰的操作非常快,只需要非常小的負(fù)載或延遲來計(jì)算消息標(biāo)記?;旌蠘?biāo)記的方式,利用了一次性密鑰生成通常也是一個(gè)快速操作這樣的一個(gè)事實(shí)。它使用的一種技術(shù),類似于離線/在線的技術(shù),可以無限期地保持高簽約率,即使在離線和在線計(jì)算正在由同一臺(tái)機(jī)器的同一時(shí)間執(zhí)行。關(guān)鍵是使離線計(jì)算創(chuàng)建和證明多次使用的密鑰取代一次性密鑰,所以最昂貴的操作成本,創(chuàng)建認(rèn)證使用跌級標(biāo)記方案,可在K個(gè)標(biāo)記上攤銷。這種技術(shù)很容易地看到,大量的K值,在多次使用密鑰的生成過程中可持續(xù)率將可能接近潛在的簽約率,非常小的K值的速度將接近到K次定期簽約率。通過選擇適當(dāng)?shù)膋值,這種混合的標(biāo)記方案的速度可以達(dá)到在同一量級的多次使用密鑰生成過程的速度。參考文獻(xiàn)[2O]聲稱500-1000標(biāo)記/秒的速度在工作站級的機(jī)器上使用這種技術(shù)。在這個(gè)方案里多播發(fā)送方有一個(gè)進(jìn)程或線程,用來生產(chǎn)K次使用的密鑰對,并建立K次使用的公鑰。這些公鑰使用發(fā)件人的長期定期標(biāo)記密鑰。發(fā)送方使用這樣的K次使用密鑰來標(biāo)記K連續(xù)消息。根據(jù)網(wǎng)絡(luò)的工作的可靠性,K次使用公鑰的證明可以是單獨(dú)發(fā)送多次或添加到每個(gè)數(shù)據(jù)包或大部分?jǐn)?shù)據(jù)包。每個(gè)數(shù)據(jù)包本身是使用K次使用標(biāo)記方案標(biāo)記。顯而易見,這個(gè)基本的方式能夠解決與不可靠、多個(gè)流、突發(fā)流量,和不規(guī)則的處理器負(fù)載相關(guān)的問題。不可靠性通過在每個(gè)包中發(fā)送K次使用公鑰證明可以完全解決,或者更切實(shí)地解決多次發(fā)送K次使用的公鑰證明以降低小部分丟失數(shù)據(jù)包的影響。昂貴的標(biāo)記操作的離線特性,與在線K次標(biāo)記方案結(jié)合具有非常高的吞吐量,產(chǎn)生一個(gè)相當(dāng)簡潔的方式來處理多個(gè)流量、突發(fā)流量、突發(fā)性的處理器負(fù)載:為每個(gè)流,緩沖區(qū)k可以預(yù)先計(jì)算時(shí)間的密鑰和證明,填補(bǔ)低CPU使用率和慢行交通,共度高CPU使用率和高流量期間期間。多次或者一次性標(biāo)記最主要的缺陷是:多次或一次性公共密鑰和標(biāo)記都是非常大的,因此使用這樣的標(biāo)記是不切實(shí)際的。例如,上文所述的基本混合方法與一個(gè)合理的快速和安全的的K次標(biāo)記方案結(jié)合使用時(shí)會(huì)導(dǎo)致大小為1字節(jié)/包開銷,這顯然是不切實(shí)際。然而,在參考文獻(xiàn)[20]的結(jié)果表明,在其他加密技術(shù)的幫助下,它有可能大幅降低少于300個(gè)字節(jié)的開銷,而在工作站級的機(jī)器上維持500-1000標(biāo)記/秒。技術(shù)比較表3總結(jié)了在這篇綜述中的每個(gè)認(rèn)證方案用前面所述的評價(jià)標(biāo)準(zhǔn)來評價(jià)的結(jié)果。從這篇綜述中,應(yīng)當(dāng)明確的是,目前是多播源認(rèn)證問題沒有單一的最佳解決方案,而是有一系列的解決方案,它們都有各自的優(yōu)點(diǎn)和缺點(diǎn)。1?頃西再掀.;寸.:..明牌:??二-Gapd"?二..二::.?:?.:,?GgdHl■■._.-n....項(xiàng)炳峰佃妣..:mi二二:行:uR二=慶翩此麗始!輒:r中5■■++十■曹&V,任也2小?r?『亍"十『=、斗■■丫。&什很力,占土中中q??WZZR口tr■**+?牛'*KS-1-K-K-*必,M逐■:■女必§+進(jìn)*;■■中?We:擋混只q壯日、喜巨■心卜■■'<■<■■*■■?辛個(gè)節(jié)訃V導(dǎo)q匚甘尊##K''■f尸苗F如愈秘忘b$3f心丁…r■口…十■中*p■"T*-、卜”■>■>中A:?「*~.<武Qvv^-t』#*T了£rY-已!腳口曲1丁3卜t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論