專利名稱:一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,它屬于計(jì)算機(jī)安全技術(shù)領(lǐng)域。
背景技術(shù):
現(xiàn)有的組播通信體系是一種開(kāi)放的通信系統(tǒng),其特點(diǎn)是信源確定,信宿明確而不具體,即在任一時(shí)刻,參與某組播系統(tǒng)的主機(jī)中一定有信源,但信宿數(shù)量通常是不固定的,甚至為零個(gè)信宿;而且,組播通信系統(tǒng)不提供數(shù)據(jù)源鑒別服務(wù)機(jī)制,使得任意主機(jī)都可以向任意組播組發(fā)送數(shù)據(jù)。這就意味著任何主機(jī)都可混雜信源主機(jī)的組播數(shù)據(jù)或冒充信源主機(jī)組播數(shù)據(jù),這是目前組播通信系統(tǒng)組播安全中一個(gè)極其嚴(yán)重的問(wèn)題。因此,為了對(duì)組播進(jìn)行有效監(jiān)控,需要對(duì)組播進(jìn)行源監(jiān)控,對(duì)已識(shí)別的組播組成員發(fā)送的信息進(jìn)行攔截、過(guò)濾。如果沒(méi)有組播源的認(rèn)證(驗(yàn)證),惡意的攻擊者向組播組發(fā)送數(shù)據(jù)是輕而易舉的事,而該組接收者由于無(wú)從判別而只得接受攻擊者的數(shù)據(jù)。
在單播通信系統(tǒng)中,使用純粹的對(duì)稱加密機(jī)制就可以提供數(shù)據(jù)包的認(rèn)證,即發(fā)送者和接收者共享一個(gè)密鑰計(jì)算信息認(rèn)證碼。當(dāng)一個(gè)帶著信息認(rèn)證碼的信息到達(dá)時(shí),接收者驗(yàn)證正確即可確認(rèn)是由發(fā)送者產(chǎn)生的該消息。但在組播通信系統(tǒng)中,再使用對(duì)稱加密機(jī)制認(rèn)證就不是很安全了。因?yàn)楦鶕?jù)組播通信系統(tǒng)的特點(diǎn),如果每個(gè)接收者都知道該密鑰,則很有可能冒充發(fā)送者偽造信息發(fā)送給其它接收者。另外,由于在組播環(huán)境中對(duì)數(shù)據(jù)認(rèn)證有較高的要求,即需要在有包丟失、發(fā)送者不知道接收者狀態(tài)的情況下,高效地認(rèn)證數(shù)據(jù)包。這使得在組播環(huán)境中仍然使用對(duì)稱加密機(jī)制進(jìn)行源認(rèn)證是行不通的。
通過(guò)使用非對(duì)稱加密機(jī)制可實(shí)現(xiàn)組播系統(tǒng)的源認(rèn)證,使每個(gè)接收者只通過(guò)檢驗(yàn)它接收到的認(rèn)證信息而不必產(chǎn)生認(rèn)證信息實(shí)現(xiàn)對(duì)組播源的認(rèn)證。通常,非對(duì)稱機(jī)制是使用非對(duì)稱密鑰技術(shù)產(chǎn)生的,如數(shù)字簽名。但是,由于非對(duì)稱加密技術(shù)的高成本,使得這個(gè)方法只能用于低速的數(shù)據(jù)流,并且要求發(fā)送者和接收者是強(qiáng)大的工作站。
使用對(duì)稱加密機(jī)制還是非對(duì)稱加密機(jī)制對(duì)信息源進(jìn)行認(rèn)證不是絕對(duì)的。純粹使用對(duì)稱密鑰技術(shù),如僅僅使用對(duì)稱密鑰信息認(rèn)證碼對(duì)信息源認(rèn)證,目前還不可能達(dá)到組播的源認(rèn)證。因此,提供一個(gè)成本低、認(rèn)證速度快、抗丟失性好的能夠滿足需求的組播源認(rèn)證機(jī)制,是組播安全服務(wù)中需要重點(diǎn)解決的問(wèn)題。
發(fā)明內(nèi)容
鑒于上述原因,本發(fā)明的目的是提供一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,使得在組播環(huán)境中能夠確認(rèn)組播信息的信息源。
為實(shí)現(xiàn)上述目的,本發(fā)明采用以下技術(shù)方案一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,它包括以下步驟1、對(duì)每一個(gè)參與組播通信的成員提供一個(gè)身份憑證,用來(lái)在組播客戶和認(rèn)證中心之間進(jìn)行雙向認(rèn)證,確定通信各方的傳輸密鑰和客戶公私鑰;2、在組播信息傳輸時(shí),采用基于事件序列的源認(rèn)證方案對(duì)傳輸?shù)男畔⑦M(jìn)行簽名認(rèn)證。
在所述的雙向認(rèn)證過(guò)程中,被許可的組通信成員首先向認(rèn)證中心注冊(cè)他的授權(quán)身份識(shí)別號(hào),并使用類(lèi)似Diffie-Hellmen算法生成口令交付認(rèn)證中心保存,為防止重放攻擊,本發(fā)明設(shè)計(jì)了被動(dòng)防御和主動(dòng)防御措施,認(rèn)證消息的因果關(guān)系和順序被設(shè)計(jì)成邏輯時(shí)鐘同步和事件順序一致性。每一條消息中,消息發(fā)送設(shè)置一個(gè)一次性隨機(jī)值給接收方作為發(fā)送應(yīng)答的消息“隨機(jī)數(shù)值鏈”上鏈標(biāo)識(shí);并且,通過(guò)設(shè)定時(shí)戳和時(shí)限來(lái)實(shí)現(xiàn)消息的時(shí)效性,解決相對(duì)離散的每次應(yīng)答的時(shí)間一致問(wèn)題。
基于事件序列的源認(rèn)證方法是只對(duì)接收端數(shù)據(jù)包中的一部分進(jìn)行單獨(dú)認(rèn)證,其它的包則依賴這些已認(rèn)證的包得到認(rèn)證。這就要求已認(rèn)證的包攜帶下一待認(rèn)證包的認(rèn)證信息,那么這些已認(rèn)證包中所附的后續(xù)認(rèn)證信息環(huán)環(huán)相扣形成一個(gè)鏈。這個(gè)鏈?zhǔn)窃诎l(fā)送端根據(jù)數(shù)據(jù)包發(fā)送的序列(順序或逆序)構(gòu)造的,那么在接收端,按照這個(gè)鏈中的認(rèn)證順序認(rèn)證數(shù)據(jù)包。
本發(fā)明采用上述源認(rèn)證方法的有益效果是1、采用雙向身份認(rèn)證,使得認(rèn)證中心在認(rèn)證客戶身份的時(shí)候,客戶同樣能夠?qū)φJ(rèn)證中心進(jìn)行認(rèn)證,可有效地抵御中間人攻擊。同時(shí),使用隨機(jī)數(shù)值鏈,又能夠很好的抵抗重放等攻擊。
2、減少源認(rèn)證所需的成本。由于網(wǎng)絡(luò)傳輸路徑的不確定性以及其它原因,經(jīng)常會(huì)發(fā)生亂序現(xiàn)象,即造成在接收端收到的數(shù)據(jù)包順序與發(fā)送端發(fā)送的數(shù)據(jù)包順序不一致。如果對(duì)每個(gè)包都單獨(dú)的進(jìn)行源認(rèn)證,那么通訊成本、計(jì)算成本就會(huì)非常高。本發(fā)明使用的基于事件序列的源認(rèn)證方案很好的解決了這個(gè)問(wèn)題,具有成本低、擴(kuò)展性好、快速認(rèn)證、抗丟失性好等特點(diǎn)。
圖1為本發(fā)明雙向身份認(rèn)證時(shí)認(rèn)證中心的流程2為雙向鏈?zhǔn)疽?為點(diǎn)名單的包結(jié)構(gòu)圖4為組播用戶發(fā)送組播數(shù)據(jù)的流程5為組播用戶接收組播數(shù)據(jù)的流程圖
具體實(shí)施例方式
本發(fā)明公開(kāi)的應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法是以非對(duì)稱密鑰技術(shù)為主的源認(rèn)證方法,并且集成了一些現(xiàn)有的技術(shù)手段,如Diffie-Hellman密鑰交換算法,單向散列算法,RSA公開(kāi)密鑰算法等。
下面結(jié)合附圖和實(shí)例對(duì)本發(fā)明作詳細(xì)說(shuō)明。
本發(fā)明提供的應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法包括兩步驟1、為每一個(gè)參與組播通信的成員提供一個(gè)身份識(shí)別號(hào),在組播通信過(guò)程中首先進(jìn)行組播客戶和認(rèn)證中心之間身份的雙向認(rèn)證;2、在組播信息傳輸時(shí),采用基于事件序列的源認(rèn)證方案對(duì)傳輸?shù)男畔⑦M(jìn)行簽名認(rèn)證。
在雙向身份認(rèn)證時(shí),被許可的組通信成員A向認(rèn)證中心S注冊(cè)他的授權(quán)身份識(shí)別號(hào)IDa;并使用Diffie-Hellmen算法生成一個(gè)組通信成員身份認(rèn)證的憑據(jù)Ya交付認(rèn)證中心保存,算法大體如下Xa<p,Xs<p.
Ya=aXamod(p)......[A.0.1]]]>Ys=aX,mod(p)......[A.0.2]]]>Kas=(Ya)Xsmod(p)=(Ys)Xamod(p)......[A.0.3]]]>已知素?cái)?shù)p及其原根整數(shù)a∈Z*p。Xa,Xs是隨機(jī)數(shù),由組通信成員隨機(jī)生成Xa并計(jì)算出Ya作為組通信成員的身份認(rèn)證的憑據(jù),預(yù)先交付認(rèn)證中心保存、直到下一次該用戶改變。在每次認(rèn)證會(huì)話時(shí),認(rèn)證中心都隨機(jī)地給出Xs,并計(jì)算出Ys發(fā)送給組通信成員A生成通話密鑰Kas。
盡管Xa和Ya相對(duì)不變,但由于每次認(rèn)證會(huì)話,認(rèn)證中心都隨機(jī)地指定Xs,進(jìn)而隨機(jī)地改變Ys,最終令通話密鑰Kas成為一次性的隨機(jī)密鑰,增加對(duì)手分析密鑰的難度。
認(rèn)證消息的時(shí)效性(Ts)通過(guò)時(shí)戳(Time-stamp)和時(shí)限(Life-time)實(shí)現(xiàn),相對(duì)離散的每次應(yīng)答是兩兩交互消息組成,因果關(guān)系和事件順序需要具有惟一和互斥性質(zhì)。本發(fā)明采用前后兩兩消息中分別加入同一個(gè)一次性隨機(jī)值(Nonce)構(gòu)成“隨機(jī)數(shù)值鏈(Na)”,解決認(rèn)證過(guò)程在分布式環(huán)境中遇到的“事件順序一致性”問(wèn)題。
每一條消息中,消息發(fā)送設(shè)置一個(gè)一次性隨機(jī)值(Na)給接收方作為發(fā)送應(yīng)答的消息“隨機(jī)數(shù)值鏈”上鏈標(biāo)識(shí)。并且,通過(guò)設(shè)定時(shí)戳和時(shí)限來(lái)實(shí)現(xiàn)消息的時(shí)效性(Ts),解決相對(duì)離散的每次應(yīng)答的時(shí)間一致問(wèn)題。
也就是說(shuō),一次性隨機(jī)值(Na)作為消息鏈標(biāo)識(shí),鏈接整個(gè)協(xié)議過(guò)程。防止“米特尼克”攻擊、消息的時(shí)效值(Ts)和“隨機(jī)數(shù)值鏈”標(biāo)識(shí)則用于防范“重放攻擊”。
雙向認(rèn)證過(guò)程中每條消息的結(jié)構(gòu)相同。為求簡(jiǎn)潔,每條消息的單向雜湊值均表示為H(mi),形式如下所示Mi.P→Q:{mi,{H(mi)}Kp-1}Kp,i=1,2,3,4;]]>因此,其的消息序列可描述為M1.A→S:{Ta,Na,S,X1,{H(m1)}Ka-1}Ks;]]>其中m1=(Ta,Na,S,X1),X1=IDaM2.S→A:{Na,Ns,A,X2{H(m2)}Ks-1}Ka;]]>其中m2=(Na,Ns,A,X2),X2=(Ys,{N′s,Ts}Kas).]]>M3.A→S:{Ns,N′a,S,X3,{H(m3)}Ka-1}Ks;]]>其中m3=(Ns,N′a,S,X3),X3={N′s,N′′a,mgroup}Kas]]>M4.S→A:{N′a,A,X4{H(m4)}Ka-1}Ka;]]>其中m4=(N′a,A,X4),X4={N′′a,warrant}Kas,]]>warrant=(type,iv,Kmgroup)。
其中,mgroup表示申請(qǐng)的組播組地址,Kmgroup表示組播組的通信傳輸密鑰。用戶和認(rèn)證中心進(jìn)行認(rèn)證時(shí),認(rèn)證中心的程序流程圖如圖1所示。具體過(guò)程如下(1)、接收用戶向認(rèn)證中心發(fā)送的用戶公鑰。
(2)、認(rèn)證中心向用戶發(fā)送認(rèn)證中心的公鑰。
(3)、接收用戶向認(rèn)證中心發(fā)送的用戶認(rèn)證請(qǐng)求,其中用戶認(rèn)證請(qǐng)求的內(nèi)容格式如上面消息序列中的M1所示,消息中包含了用戶時(shí)間戳Ta、隨機(jī)值Na、身份識(shí)別號(hào)IDa,將這些內(nèi)容采用單向雜湊算法生成一個(gè)單向雜湊值,用戶使用用戶的私鑰進(jìn)行簽名,最后將這些內(nèi)容連同用戶的簽名一起用認(rèn)證中心的公鑰加密,最終形成用戶認(rèn)證請(qǐng)求。
(4)、認(rèn)證中心用認(rèn)證中心的私鑰對(duì)用戶認(rèn)證請(qǐng)求解密,并驗(yàn)證用戶的簽名,提取用戶的身份識(shí)別號(hào)IDa,檢查用戶是否存在錯(cuò)誤記錄,如果存在錯(cuò)誤記錄,則結(jié)束此次身份認(rèn)證,不進(jìn)行組播通信;如果沒(méi)有錯(cuò)誤記錄,則隨機(jī)地生成一個(gè)Xs,并計(jì)算出Ys,然后根據(jù)預(yù)先保留的Ya計(jì)算此次會(huì)話的密鑰Kas,并生成兩個(gè)隨機(jī)數(shù)Ns和Ns’。
(5)、認(rèn)證中心向用戶發(fā)送認(rèn)證請(qǐng)求響應(yīng),認(rèn)證請(qǐng)求響應(yīng)的內(nèi)容格式如上面消息序列中的M2所示,消息中包含了認(rèn)證中心的時(shí)間戳Ts、隨機(jī)值Ns和Ns’以及認(rèn)證中心生成的Ys,其中Ns’、Ts、和Ys將由會(huì)話的密鑰Kas進(jìn)行加密,生成的密文將和隨機(jī)值Ns以及先前收到的用戶隨機(jī)值Na采用單向雜湊算法生成一個(gè)單向雜湊值,再使用認(rèn)證中心的私鑰對(duì)這個(gè)單向雜湊值進(jìn)行簽名,最后將生成的密文和隨機(jī)值Ns以及先前收到的用戶隨機(jī)值Na連同用戶的簽名一起用用戶的公鑰加密,最終形成認(rèn)證請(qǐng)求響應(yīng)。
(6)、接收客戶向認(rèn)證中心發(fā)送的用戶認(rèn)證響應(yīng),用戶認(rèn)證響應(yīng)的內(nèi)容格式如上面消息序列中的M3所示,消息中包含了用戶生成的隨機(jī)值Na’和Na”、用戶還原認(rèn)證中心的認(rèn)證請(qǐng)求響應(yīng)得出的Ns和Ns’以及用戶申請(qǐng)加入的組播組地址mgroup,其中Ns’、Na”、和mgroup將由用戶生成的會(huì)話密鑰Kas進(jìn)行加密,生成的密文將和隨機(jī)值Na’以及先前收到的認(rèn)證中心隨機(jī)值Ns采用單向雜湊算法生成一個(gè)單向雜湊值,再使用用戶的私鑰對(duì)這個(gè)單向雜湊值進(jìn)行簽名,最后將生成的密文和隨機(jī)值Na’、Ns連同用戶的簽名一起用認(rèn)證中心的公鑰加密,最終形成用戶認(rèn)證響應(yīng)。
(7)、認(rèn)證中心判斷自己生成的隨機(jī)數(shù)Ns和Ns’與接收的用戶認(rèn)證響應(yīng)中給出的Ns和Ns’是否相同,如果不一致,則結(jié)束此次身份認(rèn)證,不接受用戶的請(qǐng)求,并在錯(cuò)誤記錄中添加該用戶的記錄;如果一致,通過(guò)此次身份認(rèn)證,認(rèn)證中心可以根據(jù)用戶申請(qǐng)的組播組地址,組播通信的傳輸密鑰等信息發(fā)送給用戶,消息格式如上面消息序列中的M4所示。組播用戶經(jīng)過(guò)認(rèn)證獲取了組播通信的傳輸密鑰后便可進(jìn)行組播通信。
經(jīng)過(guò)認(rèn)證后,組播通信成員即可獲取組播通信的傳輸密鑰等信息,同時(shí)將自己的公鑰發(fā)送給了認(rèn)證中心,以便組播通信時(shí)進(jìn)行源認(rèn)證。
組播用戶進(jìn)行通信時(shí),發(fā)送端首先基于事件序列的源認(rèn)證方案采用將數(shù)據(jù)包進(jìn)行分組,對(duì)每個(gè)分組的組頭包單獨(dú)進(jìn)行簽名,組內(nèi)包包含前后數(shù)據(jù)包的HASH值構(gòu)成雙向HASH鏈。雙向HASH鏈?zhǔn)窃诿恳环纸M的數(shù)據(jù)包上有兩條方向不同的HASH鏈,一條鏈?zhǔn)乔耙粋€(gè)包的HASH值附在后一個(gè)包上,另一條鏈?zhǔn)呛笠粋€(gè)包的HASH值附在前一個(gè)包上。當(dāng)使用其中一條鏈無(wú)法認(rèn)證時(shí),使用另一方向的HSAH鏈可以得到認(rèn)證。由于HASH值校驗(yàn)的快速性和雙向鏈的抗丟失性,該方法具有快速認(rèn)證和抗丟失的優(yōu)點(diǎn)。如圖2所示。
當(dāng)有包丟失時(shí),等待下一分組組頭包的到來(lái),再根據(jù)從后向前的HASH鏈得到認(rèn)證。若發(fā)生“孤島”情況,即接收到的包前后鏈都斷,這時(shí)等待“點(diǎn)名單”到來(lái)再認(rèn)證。
點(diǎn)名單來(lái)源于生活中使用點(diǎn)名來(lái)核對(duì)人員的思路。點(diǎn)名的含義是在見(jiàn)到一些人之前已經(jīng)有一個(gè)花名冊(cè),這個(gè)花名冊(cè)中包括這些人的基本資料,以備點(diǎn)到某個(gè)人時(shí)核對(duì)。本文中的點(diǎn)名單技術(shù)采用這個(gè)思想用于提高源認(rèn)證的抗丟失性。
將一些數(shù)據(jù)包的HASH值集中起來(lái)存儲(chǔ)在一個(gè)包中,當(dāng)需要認(rèn)證時(shí),從這個(gè)包中分別取出需要認(rèn)證的某個(gè)包的HASH值,通過(guò)計(jì)算比較,即可獲得認(rèn)證。該方法的前提是存放多個(gè)HASH值的數(shù)據(jù)包應(yīng)首先得到身份確認(rèn),如使用數(shù)字簽名等。點(diǎn)名單的包結(jié)構(gòu)如圖3所示。
進(jìn)行組播通信時(shí),發(fā)送端首先緩存一個(gè)分組的數(shù)據(jù)后,構(gòu)造保護(hù)ESA認(rèn)證信息的數(shù)據(jù)包,然后發(fā)送各數(shù)據(jù)包給該組成員。該數(shù)據(jù)包的構(gòu)造如圖2所示,每一個(gè)包中具體包括第i個(gè)數(shù)據(jù)包的信息Mi;第i個(gè)數(shù)據(jù)包的HASH值H’i,它是后一個(gè)數(shù)據(jù)包的信息Mi+1和它所包含H’i+1的HASH值,即H’i=H(Mi+1+H’i+1);第i個(gè)數(shù)據(jù)包的HASH值Hi,它是前一個(gè)數(shù)據(jù)包的信息Mi-1和它所包含Hi-1的HASH值,即Hi=H(Mi-1+Hi-1);每個(gè)分組開(kāi)頭包還包括第i個(gè)數(shù)據(jù)包的UMAC值Ui=UHAC((Mi,Hi,H’i),K,noncei),K為組密鑰,nonce為隨機(jī)數(shù);第i個(gè)數(shù)據(jù)包中對(duì)UMAC的簽名Sig(Ui),并帶上該包的隨機(jī)值noncei。
圖4為組播通信過(guò)程中組播用戶發(fā)送組播數(shù)據(jù)的流程圖。發(fā)送端主要是按照上述方法生成數(shù)據(jù)包,然后向該組成員發(fā)送各數(shù)據(jù)包。
圖5為組播通信過(guò)程中組播用戶接收組播數(shù)據(jù)的流程圖。當(dāng)接收端接收到初始化參數(shù)簽名包時(shí),首先校驗(yàn)簽名是否正確,然后獲得各種認(rèn)證所需的參數(shù)。
當(dāng)接收到的是組頭包時(shí),首先檢查該包的隨機(jī)值noncei,用于防范偽造和重放攻擊。判斷noncei序列號(hào)是否是最新的,再看noncei是否是這個(gè)單行鏈中的一部分根據(jù)以前接收到的已認(rèn)證的noncej,(j<i),計(jì)算是否noncej=Fi-jnoncei。如果是,則可以認(rèn)為noncei是第i個(gè)包的隨機(jī)值,如果不是,則說(shuō)明noncei為假冒或是以前數(shù)據(jù)包隨機(jī)值的重發(fā),丟棄。確認(rèn)noncei后可直接計(jì)算nonce’i=F’(noncei),再計(jì)算UMAC((Mi,Hi,H’i),K,noncei),用發(fā)送者的公鑰驗(yàn)證簽名是否與計(jì)算的UMAC值相符,如果是,則證明Mi和Hi,H’i正確。
當(dāng)接收到的是組內(nèi)包時(shí),檢查包中的隨機(jī)值,以防止重放攻擊。安全性檢查通過(guò)后,判斷是否第i-1數(shù)據(jù)包存在且已被認(rèn)證,若是,直接用第i-1包中的H’i-1來(lái)驗(yàn)證第i個(gè)包的正確性,如果不是,則緩存該包,等待下一分組開(kāi)頭包的到來(lái),然后使用正序鏈來(lái)逐個(gè)驗(yàn)證未認(rèn)證的包。如果逆序鏈和正序鏈都不能認(rèn)證,則等待點(diǎn)名單的到來(lái),再認(rèn)證。
本發(fā)明的技術(shù)方案具有成本低、擴(kuò)展性好、快速認(rèn)證、抗丟失性好等特點(diǎn),能夠有效地保證組播通信安全,提高組播應(yīng)用場(chǎng)景下低端接收者的效率。
權(quán)利要求
1.一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,其特征在于該方法包括以下步驟(1)、為每一個(gè)參與組播通信的成員提供一個(gè)身份憑證,在組播通信前,首先對(duì)組播通信成員進(jìn)行身份認(rèn)證;(2)、在組播信息傳輸時(shí),采用基于事件序列的源認(rèn)證方案對(duì)傳輸?shù)男畔⑦M(jìn)行簽名認(rèn)證。
2.根據(jù)權(quán)利要求1所述的一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,其特征還在于所述步驟(1)中的身份認(rèn)證為雙向身份認(rèn)證,認(rèn)證中心認(rèn)證組播通信成員身份的同時(shí),組播通信成員同樣對(duì)認(rèn)證中心進(jìn)行認(rèn)證。
3.根據(jù)權(quán)利要求2所述的一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,其特征還在于所述步驟(1)中的雙向身份認(rèn)證過(guò)程使用了隨機(jī)數(shù)值鏈,確定通信各方的傳輸密鑰和客戶公私鑰。
4.根據(jù)權(quán)利要求3所述的一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,其特征還在于所述雙向身份認(rèn)證包括以下步驟(1)、認(rèn)證中心接收用戶向認(rèn)證中心發(fā)送的用戶公鑰;(2)、認(rèn)證中心向用戶發(fā)送認(rèn)證中心的公鑰;(3)、認(rèn)證中心接收用戶向認(rèn)證中心發(fā)送的用戶認(rèn)證請(qǐng)求;(4)、認(rèn)證中心用認(rèn)證中心的私鑰對(duì)用戶認(rèn)證請(qǐng)求解密,并驗(yàn)證用戶的簽名,提取用戶的身份識(shí)別號(hào)IDa,檢查用戶是否存在錯(cuò)誤記錄,如果存在錯(cuò)誤記錄,則結(jié)束此次身份認(rèn)證,不進(jìn)行組播通信;如果沒(méi)有錯(cuò)誤記錄,則隨機(jī)地生成一個(gè)Xs,并計(jì)算出Ys,然后根據(jù)預(yù)先保留的Ya計(jì)算此次會(huì)話的密鑰Kss,并生成兩個(gè)隨機(jī)數(shù)Ns和Ns’;(5)、認(rèn)證中心向用戶發(fā)送認(rèn)證請(qǐng)求響應(yīng);(6)、接收客戶向認(rèn)證中心發(fā)送的用戶認(rèn)證響應(yīng);(7)、認(rèn)證中心判斷自己生成的隨機(jī)數(shù)Ns和Ns’與接收的用戶認(rèn)證響應(yīng)中給出的Ns和Ns’是否相同,如果不一致,則結(jié)束此次身份認(rèn)證,不接受用戶的請(qǐng)求,并在錯(cuò)誤記錄中添加該用戶的記錄;如果一致,通過(guò)此次身份認(rèn)證,認(rèn)證中心可以根據(jù)用戶申請(qǐng)的組播組地址,組播通信的傳輸密鑰等信息發(fā)送給用戶;組播用戶經(jīng)過(guò)認(rèn)證獲取了組播通信的傳輸密鑰后便可進(jìn)行組播通信。
5.根據(jù)權(quán)利要求1或2或3或4所述的一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,其特征還在于所述步驟(2)中采用的基于事件序列的源認(rèn)證方案是將數(shù)據(jù)包進(jìn)行分組,只對(duì)每個(gè)分組的組頭包單獨(dú)進(jìn)行簽名,組內(nèi)包則通過(guò)前后數(shù)據(jù)包中的HASH值所構(gòu)成雙向HASH鏈來(lái)進(jìn)行認(rèn)證。
6.根據(jù)權(quán)利要求5所述的一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,其特征還在于所述步驟(2)中采用的基于事件序列的源認(rèn)證方案對(duì)發(fā)生的通信數(shù)據(jù)包前向后向HASH鏈均中斷而產(chǎn)生的“孤島”情況,采用“點(diǎn)名單”的方法進(jìn)行認(rèn)證。
全文摘要
本發(fā)明公開(kāi)了一種應(yīng)用于組播通信系統(tǒng)中的源認(rèn)證方法,屬于計(jì)算機(jī)安全技術(shù)領(lǐng)域。本發(fā)明的技術(shù)方案為對(duì)每一個(gè)參與組播通信的成員提供一個(gè)身份憑證,用來(lái)在組播客戶和認(rèn)證中心之間進(jìn)行雙向認(rèn)證,確定通信各方的傳輸密鑰和客戶公私鑰;在組播信息傳輸時(shí),采用基于事件序列的源認(rèn)證方案對(duì)傳輸?shù)男畔⑦M(jìn)行簽名認(rèn)證,保證組播信息的發(fā)送者即為其聲明的發(fā)送者。本發(fā)明的技術(shù)方案具有成本低、擴(kuò)展性好、快速認(rèn)證、抗丟失性好等特點(diǎn),能夠有效提高組播應(yīng)用場(chǎng)景下低端接收者的效率。
文檔編號(hào)H04L9/32GK1571335SQ200410037399
公開(kāi)日2005年1月26日 申請(qǐng)日期2004年4月30日 優(yōu)先權(quán)日2004年4月30日
發(fā)明者吳威, 李肖堅(jiān), 沈玲 申請(qǐng)人:北京航空航天大學(xué)