一種基于無(wú)線自組織網(wǎng)的防欺騙和抗攻擊的數(shù)據(jù)傳輸方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于無(wú)線自組網(wǎng)技術(shù)領(lǐng)域的一種基于無(wú)線自組織網(wǎng)的防欺騙和抗攻擊的數(shù)據(jù)傳輸方法,采用簽密算法協(xié)議和基于流加密的數(shù)據(jù)封裝協(xié)議。簽密算法協(xié)議實(shí)現(xiàn)了無(wú)線自組網(wǎng)中節(jié)點(diǎn)的快速認(rèn)證和密鑰協(xié)商;在流加密的基礎(chǔ)上,使用數(shù)據(jù)封裝協(xié)議可以容忍數(shù)據(jù)丟失,最終實(shí)現(xiàn)了無(wú)線自組網(wǎng)下的防欺騙和抗攻擊。
技術(shù)背景
[0002]無(wú)線自組網(wǎng)由一組按需組建的、沒(méi)有任何固定基礎(chǔ)設(shè)施輔助的可移動(dòng)終端組成的網(wǎng)絡(luò),具有單獨(dú)組網(wǎng)、分布式、自組織、多跳傳輸、抗毀性強(qiáng)等特點(diǎn),可以在沒(méi)有基礎(chǔ)設(shè)施或基礎(chǔ)設(shè)施被破壞情況下提供靈活方便的通信。但無(wú)線自組網(wǎng)還存在不足:1)無(wú)線自組網(wǎng)中網(wǎng)絡(luò)節(jié)點(diǎn)資源受限、拓?fù)浣Y(jié)構(gòu)動(dòng)態(tài)變化快的特點(diǎn)使得網(wǎng)絡(luò)中節(jié)點(diǎn)對(duì)拓?fù)浣Y(jié)構(gòu)變化反應(yīng)遲緩;2)無(wú)線自組網(wǎng)的無(wú)線通信信道容易造成數(shù)據(jù)的丟失。
[0003]廣州杰賽科技股份有限公司申請(qǐng)的專利“無(wú)線自組織網(wǎng)絡(luò)分布式認(rèn)證多層樹(shù)路由方法”(申請(qǐng)?zhí)朇N200710028234.7申請(qǐng)公開(kāi)號(hào)CN101060479)公開(kāi)了一種無(wú)線自組織網(wǎng)絡(luò)分布式認(rèn)證與生成路由的方法。該方案的核心思想:將無(wú)線自組織網(wǎng)絡(luò)結(jié)構(gòu)重構(gòu)成多層群的樹(shù)狀網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),和在該結(jié)構(gòu)上的路由和分布式認(rèn)證方法。自組織路由和分布式認(rèn)證方法簡(jiǎn)單有效。分布式認(rèn)證明顯縮短了信息認(rèn)證的路徑,提高了認(rèn)證的效率,減小了無(wú)線網(wǎng)絡(luò)的開(kāi)銷。同時(shí)除最高群外的每個(gè)群只保留其群內(nèi)的認(rèn)證信息,大大的提高了無(wú)線網(wǎng)絡(luò)的安全性。
[0004]中國(guó)船舶重工集團(tuán)公司第七O九研宄所申請(qǐng)的專利“移動(dòng)自組織網(wǎng)絡(luò)中用于分布式身份認(rèn)證的安全引導(dǎo)模型”(申請(qǐng)?zhí)朇N200610124572.6申請(qǐng)公開(kāi)號(hào)CN1953374)公開(kāi)了一種無(wú)線自組織網(wǎng)絡(luò)中用于分布式身份認(rèn)證的安全引導(dǎo)模塊。該模型主要包括兩個(gè)過(guò)程:將基于門(mén)限數(shù)字簽名的安全模型引導(dǎo)給所有節(jié)點(diǎn);利用已經(jīng)建立好的安全模型來(lái)進(jìn)行分布式身份認(rèn)證。其優(yōu)點(diǎn)是:提出并實(shí)現(xiàn)的模型可以使源路由在路由請(qǐng)求階段不會(huì)被篡改,可以防止合法的參與者進(jìn)行假“局部簽名”以阻止簽名驗(yàn)證;由于設(shè)計(jì)了路由請(qǐng)求信息的標(biāo)識(shí)號(hào),這樣就能夠保證安全通信中的“新鮮性”,一旦有數(shù)據(jù)包的竊聽(tīng),也不可能再被重放,可以有效抵御蟲(chóng)洞攻擊或者其他重放攻擊;采用了逐跳身份認(rèn)證,可以有效防御惡意節(jié)點(diǎn)的拒絕服務(wù)(DoS)攻擊。
[0005]以上兩個(gè)專利只是實(shí)現(xiàn)節(jié)點(diǎn)的身份認(rèn)證,但對(duì)于上述無(wú)線自組網(wǎng)存在的安全隱患并沒(méi)有完全解決,無(wú)法實(shí)現(xiàn)無(wú)線自組網(wǎng)對(duì)數(shù)據(jù)的安全通信需求。而且在網(wǎng)絡(luò)拓?fù)渥兓?、無(wú)線傳輸信道不穩(wěn)定等情況時(shí)數(shù)據(jù)丟包嚴(yán)重的問(wèn)題也沒(méi)有解決,針對(duì)以上問(wèn)題,我們提出一種可以快速身份認(rèn)證以及容忍數(shù)據(jù)丟包的無(wú)線自組網(wǎng)通信協(xié)議。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的是實(shí)現(xiàn)無(wú)線自組網(wǎng)的快速認(rèn)證及容忍數(shù)據(jù)丟包的安全傳輸,主要包括簽密認(rèn)證及密鑰協(xié)商協(xié)議和基于流加密的安全數(shù)據(jù)封裝協(xié)議。
[0007]本發(fā)明所采取的技術(shù)方案為:
[0008]一種基于無(wú)線自組織網(wǎng)的防欺騙和抗攻擊的數(shù)據(jù)傳輸方法,包括簽密認(rèn)證過(guò)程和基于流加密的加、解密過(guò)程,其特征在于:
[0009]簽密認(rèn)證過(guò)程:
[0010](I)進(jìn)行初始化:為無(wú)線自組織網(wǎng)中的每個(gè)節(jié)點(diǎn)設(shè)置一個(gè)唯一的標(biāo)識(shí)符并對(duì)外部進(jìn)行公開(kāi),初始化每個(gè)節(jié)點(diǎn)的公私鑰對(duì);
[0011](2)請(qǐng)求認(rèn)證節(jié)點(diǎn)隨機(jī)生成通信密鑰并取得時(shí)間戳,根據(jù)簽密算法對(duì)請(qǐng)求認(rèn)證消息進(jìn)行加密,之后對(duì)加密后的請(qǐng)求認(rèn)證消息和接收認(rèn)證節(jié)點(diǎn)的標(biāo)識(shí)進(jìn)行廣播;請(qǐng)求認(rèn)證消息包括請(qǐng)求認(rèn)證的節(jié)點(diǎn)的通信密鑰、時(shí)間戳和標(biāo)識(shí)符;
[0012](3)接收認(rèn)證節(jié)點(diǎn)對(duì)加密后的請(qǐng)求認(rèn)證消息進(jìn)行解簽密,得到請(qǐng)求認(rèn)證消息,如果請(qǐng)求認(rèn)證的節(jié)點(diǎn)的時(shí)間戳是否與接收認(rèn)證節(jié)點(diǎn)的本地時(shí)間相吻合,則將請(qǐng)求認(rèn)證消息中的通信密鑰作為請(qǐng)求認(rèn)證節(jié)點(diǎn)與接收認(rèn)證節(jié)點(diǎn)之間數(shù)據(jù)傳輸?shù)膶?duì)稱加密密鑰;
[0013]基于流加密的加、解密過(guò)程:
[0014](4)發(fā)送節(jié)點(diǎn)利用對(duì)稱加密密鑰和初始化向量并依照流加密算法生成密鑰流,將生成的密鑰流和傳輸數(shù)據(jù)進(jìn)行異或處理,得到傳輸數(shù)據(jù)的密文;
[0015](5)將傳輸數(shù)據(jù)的密文按照設(shè)定長(zhǎng)度進(jìn)行分段,并在每段密文信息前加一個(gè)頭部標(biāo)識(shí),該頭部標(biāo)識(shí)包含發(fā)送的順序號(hào),用于幫助查找解密密鑰;
[0016](6)接收節(jié)點(diǎn)利用對(duì)稱加密密鑰和初始化向量并依照流加密算法生成密鑰流;
[0017](7)接收節(jié)點(diǎn)根據(jù)生成的密鑰流對(duì)接收到的傳輸數(shù)據(jù)的密文進(jìn)行異或處理,得到傳輸數(shù)據(jù);
[0018]完成基于無(wú)線自組織網(wǎng)的防欺騙和抗攻擊的數(shù)據(jù)傳輸。
[0019]其中,在步驟(6)和步驟(7)之間還包括以下步驟:
[0020](101)接收節(jié)點(diǎn)在收到傳輸數(shù)據(jù)的密文后,首先讀取當(dāng)前該段密文信息前的頭部標(biāo)識(shí)并跟接收到的上一段密文信息前的頭部標(biāo)識(shí)進(jìn)行比較,如果兩個(gè)頭部標(biāo)識(shí)的序列號(hào)是相連的,則說(shuō)明當(dāng)前該段密文信息與上一段密文信息之間沒(méi)有數(shù)據(jù)丟失,則直接轉(zhuǎn)入步驟(7);否則,說(shuō)明當(dāng)前該段密文信息與上一段密文信息之間有數(shù)據(jù)丟失,之后轉(zhuǎn)入步驟(102);
[0021](102)直接跳過(guò)與丟失的數(shù)據(jù)段對(duì)應(yīng)的長(zhǎng)度的密鑰流,然后,用之后的密鑰流作為解密密鑰流,轉(zhuǎn)入步驟(7)。
[0022]本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點(diǎn):
[0023]1.本發(fā)明提出的節(jié)點(diǎn)之間快速認(rèn)證方法,在身份認(rèn)證時(shí),使用簽密算法僅需一輪通信就實(shí)現(xiàn)了節(jié)點(diǎn)間快速的身份認(rèn)證,并完成了節(jié)點(diǎn)之間的會(huì)話密鑰協(xié)商。
[0024]2.本發(fā)明提出的數(shù)據(jù)加密傳輸方法,可以實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)加密傳輸,;另外一方面,使用特殊的同步該類算法可以實(shí)現(xiàn)收發(fā)雙方的密鑰同步,這樣就可以保證在丟失數(shù)據(jù)的情況下也能對(duì)收到的密文進(jìn)行正確解密。
【附圖說(shuō)明】
[0025]圖1為本發(fā)明中的整體流程圖;
[0026]圖2為本發(fā)明中的節(jié)點(diǎn)認(rèn)證流程圖;
[0027]圖3為本發(fā)明中流加密中密文分段處理圖。
[0028]具體實(shí)施措施
[0029]下面,結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
[0030]一種基于無(wú)線自組織網(wǎng)的防欺騙和抗攻擊的數(shù)據(jù)傳輸方法,包括簽密認(rèn)證過(guò)程和基于流加密的加、解密過(guò)程,參考附圖1,其特征在于:
[0031]簽密認(rèn)證過(guò)程,參考附圖2:
[0032](I)進(jìn)行初始化:為無(wú)線自組織網(wǎng)中的每個(gè)節(jié)點(diǎn)設(shè)置一個(gè)唯一的標(biāo)識(shí)符并對(duì)外部進(jìn)行公開(kāi),初始化每個(gè)節(jié)點(diǎn)的公私鑰對(duì);
[0033]假設(shè)無(wú)線自組織網(wǎng)中有η個(gè)節(jié)點(diǎn),把η個(gè)節(jié)點(diǎn)放在一個(gè)集合Q= (Q1, Q2......Q1J,
每個(gè)節(jié)點(diǎn)Qi都擁有一個(gè)唯一的標(biāo)示符ID i,它可以唯一的表示節(jié)點(diǎn)Qi并且可以對(duì)外部進(jìn)行公開(kāi)。由離線的可信任第三方生成系統(tǒng)參數(shù):兩個(gè)哈希函數(shù)G和H,以及每個(gè)節(jié)點(diǎn)的密鑰對(duì);
[0034](2)請(qǐng)求認(rèn)證節(jié)點(diǎn)隨機(jī)生成通信密鑰并取得時(shí)間戳,根據(jù)簽密算法對(duì)請(qǐng)求認(rèn)證消息進(jìn)行加密,之后對(duì)加密后的請(qǐng)求認(rèn)證消息和接收認(rèn)證節(jié)點(diǎn)的標(biāo)識(shí)進(jìn)行廣播;請(qǐng)求認(rèn)證消息包括請(qǐng)求認(rèn)證的節(jié)點(diǎn)的通信密鑰、時(shí)間戳和標(biāo)識(shí)符;
[0035]假設(shè)節(jié)點(diǎn)A和節(jié)點(diǎn)B進(jìn)行身份認(rèn)證及會(huì)話秘鑰協(xié)商,B為請(qǐng)求認(rèn)證方,A為接受認(rèn)證方,A和B節(jié)點(diǎn)進(jìn)行初始化之后,A節(jié)點(diǎn)進(jìn)行偵聽(tīng)階段,等待B節(jié)點(diǎn)的認(rèn)證請(qǐng)求,具體過(guò)程如下:
[0036]請(qǐng)求認(rèn)證方節(jié)點(diǎn)B:
[0037](BI