一種基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法
【專利摘要】本發(fā)明提供一種基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,本發(fā)明采用和AODV一樣的On-demand路由機(jī)制,但源節(jié)點(diǎn)和目的節(jié)點(diǎn)的身份在路由請求階段和響應(yīng)階段分別被隱藏。一個(gè)公開的單向Hash函數(shù)可以利用這些隱藏的路由信息對所有路由信息進(jìn)行認(rèn)證,源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間并不需要一個(gè)預(yù)先的啟動(dòng)密鑰或共享密鑰。只有位于被選擇路徑上的節(jié)點(diǎn)才能獲得完整的路由信息,其它節(jié)點(diǎn),包括攻擊者,將缺乏充分的路由信息進(jìn)行攻擊。此外,路由如果在數(shù)據(jù)傳輸過程中有節(jié)點(diǎn)耗能過多而失效,有專門的路由恢復(fù)策略來進(jìn)行路徑局部更改和修復(fù),使方法具有足夠的健壯性。
【專利說明】一種基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通訊【技術(shù)領(lǐng)域】,特別涉及一種基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法。
【背景技術(shù)】
[0002]目前對點(diǎn)對點(diǎn)(Ad Hoc)網(wǎng)絡(luò)的研究主要集中在基本路由協(xié)議上,MANET研究組提出的許多協(xié)議草案,比如單播路由協(xié)議DSR、AODV、ZRP和多播路由協(xié)議AMRIS、AMRoute等,而在無線多播中大部分路由協(xié)議是基于樹狀的,但多樹的結(jié)構(gòu)非常脆弱,并且當(dāng)連接改變時(shí)它必須進(jìn)行調(diào)整,進(jìn)一步來說,多播樹總是需要一個(gè)全局的路由子結(jié)構(gòu)如鏈路狀態(tài)或距離向量。路由向量或鏈路狀態(tài)的頻繁改變產(chǎn)生拓?fù)浣Y(jié)構(gòu)的頻繁變化,最終產(chǎn)生大量開銷和信道負(fù)載。
[0003]由于無線網(wǎng)的廣播特性,使得自組網(wǎng)中的多播有著獨(dú)特的優(yōu)勢,打破了有線網(wǎng)絡(luò)中多播建立在單播基礎(chǔ)之上的定律,可以獨(dú)立地更有效地解決多播路由問題。常見的多播協(xié)議有 MAODV,AMRIS,AMRoute、ODMRP、CAMP 等。其中 ODMRP (On-Demand Multicast RoutingProtocol)協(xié)議是上述自組網(wǎng)多播協(xié)議中性能較好的一個(gè),具有吞吐量大、適合高速運(yùn)動(dòng)等特點(diǎn)。但ODMRP是建立在數(shù)據(jù)明文傳送的基礎(chǔ)之上,數(shù)據(jù)傳輸過程中安全問題得不到保障。
[0004]Ad Hoc網(wǎng)絡(luò)可以廉價(jià)、快速的建立,其應(yīng)用范圍包括軍事、災(zāi)難救助、社區(qū)網(wǎng)絡(luò)等等。為了防止攻擊,安全的路由協(xié)議在Ad Hoc網(wǎng)絡(luò)中是必需的。由于Ad Hoc網(wǎng)絡(luò)具有高度動(dòng)態(tài)變化的特點(diǎn)和有限資源,導(dǎo)致設(shè)計(jì)一個(gè)安全有效的路由協(xié)議是困難的。類似前面提到的許多Ad Hoc路由協(xié)議已經(jīng)被提出,但它們均沒有采取任何的安全措施,并且在本質(zhì)上信任每個(gè)路由協(xié)議參與者。
[0005]Perlman首先研究路由協(xié)議的安全問題,并且提出了基于數(shù)字簽名技術(shù)的安全flooding和最短路徑算法。使用數(shù)字簽名技術(shù)保護(hù)路由信息很直觀,但效率不高,特別是在一個(gè)移動(dòng)Ad Hoc網(wǎng)絡(luò)環(huán)境中。Papadimitratos提出了一個(gè)基于動(dòng)態(tài)源路由協(xié)議(DSR)的安全路由協(xié)議(SRP)。這個(gè)協(xié)議假設(shè)源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間存在一個(gè)安全聯(lián)盟(SA),并且共享一個(gè)秘密鑰。Dahill提出了認(rèn)證的AdHoc路由協(xié)議(ARAN),從而將認(rèn)證、信息完整性和不可否認(rèn)性的概念引入Ad Hoc網(wǎng)絡(luò)。但是這個(gè)協(xié)議使用的是公鑰系統(tǒng),這對于Ad Hoc網(wǎng)絡(luò)來說是很昂貴的,并且如何選擇一個(gè)可信的CA并不清楚。Hu Yih-Chun分別提出了安全的on-demand和proactive Ad Hoc路由協(xié)議。這兩個(gè)協(xié)議使用單向Hash函數(shù)鏈進(jìn)行路由信息的安全保護(hù)。盡管單向Hash鏈?zhǔn)且粋€(gè)快速的密碼工具,適合Ad Hoc網(wǎng)絡(luò),但是它們要求網(wǎng)絡(luò)中的節(jié)點(diǎn)時(shí)鐘同步,而且Ariadene協(xié)議還要求相互通信的節(jié)點(diǎn)之間預(yù)先擁有一個(gè)啟動(dòng)密鑰。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的在于從一個(gè)新的角度提出了一種基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法。該方法采用和AODV —樣On-demand路由機(jī)制,但源節(jié)點(diǎn)和目的節(jié)點(diǎn)的身份在路由請求階段和路由響應(yīng)階段分別被隱藏。一個(gè)公開的單向Hash函數(shù)可以利用這些隱藏的路由信息對所有路由信息進(jìn)行認(rèn)證,源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間并不需要一個(gè)預(yù)先的啟動(dòng)密鑰或共享密鑰。該方法的另外一個(gè)重要特點(diǎn)是只有位于被選擇路徑上的節(jié)點(diǎn)才能獲得完整的路由信息,其它節(jié)點(diǎn)(包括攻擊者)將缺乏充分的路由信息進(jìn)行攻擊。
[0007]為解決上述技術(shù)問題,本發(fā)明提供一種基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,包括:
[0008]源節(jié)點(diǎn)廣播路由請求分組給自己的鄰節(jié)點(diǎn)進(jìn)行路徑搜索;
[0009]某一鄰節(jié)點(diǎn)處理與轉(zhuǎn)發(fā)所述路由請求分組;
[0010]目的節(jié)點(diǎn)產(chǎn)生路徑響應(yīng)分組,建立反向路徑;
[0011]某一鄰節(jié)點(diǎn)處理與轉(zhuǎn)發(fā)所述路徑響應(yīng)分組。
[0012]進(jìn)一步的,在所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法中,所述路由請求分組包括{broadcast_id, dest_addr, temporary_id, hop_cnt, hash_chain,encrypted_message},其中,{broadcast_id, dest_addr}唯一地標(biāo)識(shí)了路由請求分組,所述broadcast_id通過H(S|D|R|Ts)獲得,其中,S表示源節(jié)點(diǎn);D表示目的節(jié)點(diǎn);R表示源節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù);I表示連接;TS為當(dāng)前時(shí)戳;所述dest_addr表示目的節(jié)點(diǎn)的IP地址;所述temporary_id的初始值為源節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符;所述hop_cnt的初始值為源節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù);所述hash_chain的初始值為H1=H(SjDlR);所述encrypted_message包括用目
的節(jié)點(diǎn)公鑰加密的信息Epkd(S\D\R\Ts).[0013]進(jìn)一步的,在所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法中,所述源節(jié)點(diǎn)廣播路由請求分組給自己的鄰節(jié)點(diǎn)進(jìn)行路徑搜索的步驟包括:
[0014]源節(jié)點(diǎn)獲取一單向Hash鏈的初始值;
[0015]所述源節(jié)點(diǎn)在自己的預(yù)處理路由表中建立不完善的前向路徑。
[0016]進(jìn)一步的,在所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法中,所述預(yù)處理路由表包括目的節(jié)點(diǎn)、下一節(jié)點(diǎn)、Hop計(jì)數(shù)器、前一節(jié)點(diǎn)標(biāo)識(shí)符、當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)符、Hash鏈和時(shí)間戳。
[0017]進(jìn)一步的,在所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法中,所述前向路徑由源節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符索引。
[0018]進(jìn)一步的,在所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法中,所述處理與轉(zhuǎn)發(fā)所述路由請求分組的步驟包括:
[0019]某一鄰節(jié)點(diǎn)產(chǎn)生隨機(jī)產(chǎn)生的標(biāo)識(shí)符;
[0020]根據(jù)現(xiàn)有的路由表在預(yù)處理路由表中建立不完善的前向路徑和反向路徑。
[0021]進(jìn)一步的,在所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法中,在前向路徑和反向路徑中,將temporary_id的值從源節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符替換成所述鄰節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符;hop_cnt的值由上一節(jié)點(diǎn)的hop_cnt+l得到;將hash_chain的值從前一節(jié)點(diǎn)hash值替換成所述鄰節(jié)點(diǎn)的hash值。
[0022]進(jìn)一步的,在所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法中,所述路徑響應(yīng)分組包括{temporary_id, source_addr, R, hop_cnt},其中,所述 temporary_id 是路徑響應(yīng)分組中原有的臨時(shí)標(biāo)識(shí)符;所述source_addr為源節(jié)點(diǎn)S的IP地址;所述R是源節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù);所述hop_cnt的初始值為O。[0023]進(jìn)一步的,在所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法中,在轉(zhuǎn)發(fā)所述路徑響應(yīng)分組前,該鄰節(jié)點(diǎn)將hop_cnt的值+1 ;將temporary_id的值從上一點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符替換成該鄰節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符。
[0024]本發(fā)明提供的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,具有以下有益效果:源節(jié)點(diǎn)和目的節(jié)點(diǎn)的IP地址并不同時(shí)出現(xiàn)在路由請求分組(RREQ)和路徑響應(yīng)分組(RREP)分組中,它們通過鄰節(jié)點(diǎn)產(chǎn)生的隨機(jī)標(biāo)識(shí)符相聯(lián)系,只有位于被選擇路徑上的節(jié)點(diǎn)可以獲得完整的路由信息。即使非選擇路徑上的節(jié)點(diǎn)可以捕獲到RREP分組,它也無法將兩部分路由信息相關(guān)聯(lián),因?yàn)镽REP分組中的臨時(shí)標(biāo)識(shí)符不是它自己產(chǎn)生的,預(yù)處理路由表中并不包含由此標(biāo)識(shí)符索引的路徑。這個(gè)特點(diǎn)可以用來抵抗一些簡單卻頑固的攻擊。此外,攻擊者無法通過減少RREQ分組中的hop_cnt域來增加進(jìn)入被選擇路徑的機(jī)會(huì),因?yàn)槟康墓?jié)點(diǎn)使用RREQ分組所包含的Hash鏈的最后一個(gè)值對hop_cnt進(jìn)行驗(yàn)證。
【專利附圖】
【附圖說明】
[0025]圖1-2是本發(fā)明優(yōu)選實(shí)施例的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法示意圖?!揪唧w實(shí)施方式】
[0026]以下結(jié)合附圖和具體實(shí)施例對本發(fā)明提出的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法作進(jìn)一步詳細(xì)說明。根據(jù)下面說明和權(quán)利要求書,本發(fā)明的優(yōu)點(diǎn)和特征將更清楚。需說明的是,附圖均采用非常簡化的形式且均使用非精準(zhǔn)的比例,僅用以方便、明晰地輔助說明本發(fā)明實(shí)施例的目的。
[0027]如圖1和圖2所示,本發(fā)明提供一種基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,具體包括以下步驟:
[0028]步驟一:源節(jié)點(diǎn)廣播路由請求分組給自己的鄰節(jié)點(diǎn)進(jìn)行路徑搜索;
[0029]如果源節(jié)點(diǎn)希望和另外一個(gè)節(jié)點(diǎn)通信,但在其正式路由表中沒有相應(yīng)的路徑,則它發(fā)起一個(gè)路徑搜索程序。源節(jié)點(diǎn)首先計(jì)算單向Hash鏈的初始值,H1=IKs|dIr),并且在自己的預(yù)處理路由表中建立不完善的前向路徑,這條路徑由源節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符IDs索引。
[0030]所述路由請求分組(RREQ)包括{broadcast_id,dest_addr, temporary_id, hop_cnt, hash_chain, encrypted_message},其中,{broadcast_id, dest_addr} P隹一地標(biāo)識(shí)了路由請求分組,所述broadcast_id通過H(S|D|R|Ts)獲得,其中,S表示源節(jié)點(diǎn);D表示目的節(jié)點(diǎn);R表示源節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù);I表示連接;TS為當(dāng)前時(shí)戳;所述dest_addr表示目的節(jié)點(diǎn)的IP地址;所述temporary_id的初始值為源節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符;所述hop_cnt的初始值為源節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù);所述hash_chain的初始值為H1=H(SlDlR);所述encrypted_
message包括用目的節(jié)點(diǎn)公鑰加密的信息EPKd(S \D\R\Ts)0本發(fā)明的RREQ分組和A0Dv
中的RREQ分組不同,源節(jié)點(diǎn)的IP地址S不是以明文方式存在的,是被隱藏的。
[0031]如表I所示,所述預(yù)處理路由表包括目的節(jié)點(diǎn)、下一節(jié)點(diǎn)、Hop計(jì)數(shù)器、前一節(jié)點(diǎn)標(biāo)識(shí)符、當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)符、Hash鏈和時(shí)間戳。
【權(quán)利要求】
1.一種基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,包括: 源節(jié)點(diǎn)廣播路由請求分組給自己的鄰節(jié)點(diǎn)進(jìn)行路徑搜索; 某一鄰節(jié)點(diǎn)處理與轉(zhuǎn)發(fā)所述路由請求分組; 目的節(jié)點(diǎn)產(chǎn)生路徑響應(yīng)分組,建立反向路徑; 某一鄰節(jié)點(diǎn)處理與轉(zhuǎn)發(fā)所述路徑響應(yīng)分組。
2.如權(quán)利要求1所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,所述路由請求分組包括{broadcast_id, dest_addr, temporary_id, hop_cnt, hash_chain,encrypted_message},其中,{broadcast_id, dest_addr}唯一地標(biāo)識(shí)了路由請求分組,所述broadcast_id通過H(S|D|R|Ts)獲得,其中,S表示源節(jié)點(diǎn);D表示目的節(jié)點(diǎn);R表示源節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù);I表示連接;TS為當(dāng)前時(shí)戳;所述dest_addr表示目的節(jié)點(diǎn)的IP地址;所述temporary_id的初始值為源節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符;所述hop_cnt的初始值為源節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù);所述hash_chain的初始值為H1=H(SjDlR);所述encrypted_message包括用目的節(jié)點(diǎn)公鑰加密的信息Epkd (S\D\R\Ts),
3.如權(quán)利要求2所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,所述源節(jié)點(diǎn)廣播路由請求分組給自己的鄰節(jié)點(diǎn)進(jìn)行路徑搜索的步驟包括: 源節(jié)點(diǎn)獲取一單向Hash鏈的初始值; 所述源節(jié)點(diǎn)在自己的預(yù)處理路由表中建立不完善的前向路徑。
4.所述如權(quán)利要求3所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,所述預(yù)處理路由表包括目的節(jié)點(diǎn)、下一節(jié)點(diǎn)、Hop計(jì)數(shù)器、前一節(jié)點(diǎn)標(biāo)識(shí)符、當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)符、Hash鏈和時(shí)間戳。
5.如權(quán)利要求3所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,所述前向路徑由源節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符索引。
6.如權(quán)利要求2所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,所述處理與轉(zhuǎn)發(fā)所述路由請求分組的步驟包括: 某一鄰節(jié)點(diǎn)產(chǎn)生隨機(jī)產(chǎn)生的標(biāo)識(shí)符; 根據(jù)現(xiàn)有的路由表在預(yù)處理路由表中建立不完善的前向路徑和反向路徑。
7.如權(quán)利要求6所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,在前向路徑和反向路徑中,將temporary_id的值從源節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符替換成所述鄰節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符;hop_cnt的值由上一節(jié)點(diǎn)的hop_cnt+l得到j(luò)#hash_chain的值從前一節(jié)點(diǎn)hash值替換成所述鄰節(jié)點(diǎn)的hash值。
8.如權(quán)利要求1所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,所述路徑響應(yīng)分組包括{temporary_id, source_addr, R, hop_cnt},其中,所述 temporary_id 是路徑響應(yīng)分組中原有的臨時(shí)標(biāo)識(shí)符;所述source_addr為源節(jié)點(diǎn)S的IP地址;所述R是源節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù);所述hop_cnt的初始值為O。
9.如權(quán)利要求1所述的基于身份隱藏的安全點(diǎn)對點(diǎn)按需路由方法,其特征在于,在轉(zhuǎn)發(fā)所述路徑響應(yīng)分組前,該鄰節(jié)點(diǎn)將hop_cnt的值+1 ;將temporary_id的值從上一點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符替換成該鄰節(jié)點(diǎn)隨機(jī)產(chǎn)生的標(biāo)識(shí)符。
【文檔編號(hào)】H04W12/00GK103906046SQ201410155860
【公開日】2014年7月2日 申請日期:2014年4月17日 優(yōu)先權(quán)日:2014年4月17日
【發(fā)明者】熊鵬, 董晨曦 申請人:上海電機(jī)學(xué)院