亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種安全的無線網(wǎng)絡(luò)通信方法與流程

文檔序號:12731332閱讀:321來源:國知局
一種安全的無線網(wǎng)絡(luò)通信方法與流程

本發(fā)明涉及一種網(wǎng)絡(luò)通信方法,尤其涉及的是一種安全的無線網(wǎng)絡(luò)通信方法。



背景技術(shù):

無線網(wǎng)絡(luò)中的節(jié)點之間通信通過中間節(jié)點的轉(zhuǎn)發(fā)和路由來實現(xiàn),因此,節(jié)點之間的安全通信就顯得尤為重要。

在無線網(wǎng)絡(luò)中,通過查看數(shù)據(jù)包的頭部結(jié)構(gòu)以及負載可以看出用戶的活動規(guī)律,例如用戶何時在辦公室,何時在家里,經(jīng)常與誰通信等等。因此,保護用戶的隱私也尤為重要。目前的無線網(wǎng)絡(luò)通信中,用戶在會話過程中密碼并不變化,因此降低了安全性,需要一種安全的通信方式來保護用戶的安全通信和隱私。



技術(shù)實現(xiàn)要素:

發(fā)明目的:本發(fā)明所要解決的技術(shù)問題是針對現(xiàn)有技術(shù)的不足,提供一種安全的無線網(wǎng)絡(luò)通信方法。

技術(shù)方案:本發(fā)明公開了一種安全的無線網(wǎng)絡(luò)通信方法,包括遠程服務(wù)器和第三方認證數(shù)據(jù)中心,所述無線網(wǎng)絡(luò)包括接入路由器和節(jié)點;接入路由器包括一個無線接口和兩個以上的有線接口,有線接口用于連接路由骨干網(wǎng),無線接口用于與節(jié)點通信;節(jié)點通過距離自己最近的接入路由器實現(xiàn)通信,一個接入路由器以及通過該接入路由器實現(xiàn)通信的所有節(jié)點構(gòu)成一個子網(wǎng);一個子網(wǎng)內(nèi)的所有節(jié)點具有相同網(wǎng)絡(luò)前綴,一個節(jié)點通過所在子網(wǎng)的接入路由器從遠程服務(wù)器獲取數(shù)據(jù);

遠程服務(wù)器S1向第三方認證數(shù)據(jù)中心進行注冊后,第三方認證數(shù)據(jù)中心向服務(wù)器S1簽發(fā)一個秘鑰kS1,同時保存遠程服務(wù)器S1的地址以及簽發(fā)的秘鑰;

節(jié)點具有唯一的ID,例如硬件ID,節(jié)點向第三方認證數(shù)據(jù)中心進行注冊后,第三方認證數(shù)據(jù)中心向遠程服務(wù)器簽發(fā)一個秘鑰kV和單向哈希函數(shù)H,秘鑰kV用于實現(xiàn)與接入路由器的安全通信,單向哈希函數(shù)H用于產(chǎn)生秘鑰;

接入路由器具有唯一的網(wǎng)絡(luò)前綴,該網(wǎng)絡(luò)前綴預(yù)先設(shè)置,例如3EFC:1:1:1::/64,接入路由器向第三方認證數(shù)據(jù)中心進行注冊后,第三方認證數(shù)據(jù)中心向服節(jié)點簽發(fā)秘鑰kV和單向哈希函數(shù)H,秘鑰kV用于實現(xiàn)與節(jié)點的安全通信,單向哈希函數(shù)H用于產(chǎn)生秘鑰;

如果節(jié)點為有權(quán)限訪問遠程服務(wù)器S1的授權(quán)用戶設(shè)備,則第三方認證數(shù)據(jù)中心向該節(jié)點提供遠程服務(wù)器S1的秘鑰kS1;

節(jié)點或者接入路由器的單播地址包括網(wǎng)絡(luò)前綴和鏈路地址兩個部分,鏈路地址包括橫坐標、縱坐標和節(jié)點ID三個部分,接入路由器的節(jié)點ID為0;

無線網(wǎng)絡(luò)中消息負載的第一個字節(jié)定義消息的類型;注冊消息由消息類型值1定義;注冊響應(yīng)消息由消息類型值2定義;請求消息由消息類型值3定義;響應(yīng)消息由消息類型值4定義;切換消息由消息類型值5定義;切換響應(yīng)消息由消息類型值6定義;

接入路由器維護一個地址表,用于記錄所在子網(wǎng)中所有節(jié)點的信息,一個地址表項由3個域構(gòu)成,包括當前節(jié)點ID,當前秘鑰以及生命周期,生命周期設(shè)置時間一般設(shè)置為24小時;

如果接入路由器檢測到一個地址表項的生命周期衰減為0,則刪除該地址表項;

接入路由器定期廣播信標幀,信標幀的源地址為該接入路由器的鏈路地址,該鏈路地址的橫坐標和縱坐標為該接入路由器的橫坐標和縱坐標,節(jié)點ID為0;節(jié)點接收到接入路由器的信標幀后,判斷自己是否距離該接入路由器最近,如果是,則保存該接入路由器的鏈路地址并向鄰居節(jié)點轉(zhuǎn)發(fā)該信標幀,否則,則丟棄該信標幀;

每個節(jié)點保存當前節(jié)點ID值IDc,當前秘鑰kc,下一個節(jié)點ID值IDn以及下一個秘鑰kn。IDc,kc,IDn,kn是變量名稱,下標c是current的首字母,下標n是next的首字母。

本發(fā)明所述方法中,在節(jié)點V4具有唯一的ID值IDV,最近的接入路由器為AR1,接入路由器AR1的地理坐標為(xAR1,yAR1),節(jié)點V4向第三方認證數(shù)據(jù)中心進行注冊后獲取了秘鑰kV和單向哈希函數(shù)H,節(jié)點V4將當前節(jié)點ID IDc的值設(shè)置為IDV,將當前秘鑰kc的值設(shè)置為kV的條件下,如果節(jié)點V4的當前地理坐標為(x1,y1),那么通過下述步驟向接入路由器AR1執(zhí)行注冊操作:

步驟101:開始;

步驟102:節(jié)點V4隨機產(chǎn)生兩個正整數(shù)w1和n1,將變量k0的值設(shè)置為kc,將變量ID0的值設(shè)置為IDc,將變量j和p的值設(shè)置為1,節(jié)點V4執(zhí)行w1次下述兩個操作產(chǎn)生kw1:先執(zhí)行kj=H(kj-1,x1,y1,n1,w1),然后將j的值遞增1,H是單項哈希函數(shù),kj-1,x1,y1,n1,w1為H的輸入?yún)?shù),H(kj-1,x1,y1,n1,w1)的哈希值賦給變量kj;節(jié)點V4執(zhí)行w1次下述兩個操作產(chǎn)生IDw1:先執(zhí)行IDp=H(IDp-1,x1,y1,n1,w1),然后將p的值遞增1,H是單項哈希函數(shù),IDp-1,x1,y1,n1,w1為H的輸入?yún)?shù),H(IDp-1,x1,y1,n1,w1)的哈希值賦給變量IDp;最后,節(jié)點V4將變量kn的值設(shè)置為kw1,將變量IDn的值設(shè)置為IDw1;

步驟103:節(jié)點V4創(chuàng)建一個自己的單播地址和接入路由器AR1的單播地址,在自己的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為x1,縱坐標為y1,節(jié)點ID為IDc;在接入路由器的單播地址中,網(wǎng)絡(luò)前綴為0,鏈路地址為接入路由器AR1的鏈路地址;節(jié)點V4根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Msg的值為1,變量Key的值為kc,變量I的值為IDn,變量k的值為kn,Encrypt1為對稱加密算法;然后節(jié)點V4構(gòu)建一個注冊消息,該注冊消息的源地址為自己的單播地址,目的地址為接入路由器AR1的單播地址,負載為加密數(shù)據(jù)塊E,最后節(jié)點V4發(fā)送該注冊消息;

E=Encrypt1[Msg,I,k]Key (1)

步驟104:接入路由器AR1收到注冊消息后,利用秘鑰kV解密注冊消息負載中的加密數(shù)據(jù)塊E并獲取了節(jié)點ID值IDn和秘鑰kn,查看自己的地址表判斷是否存在當前節(jié)點ID等于節(jié)點ID IDn的地址表項,如果存在,則執(zhí)行步驟105,否則執(zhí)行步驟106;

步驟105:接入路由器AR1根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Msg的值為2,變量Key的值為kc,變量I的值為IDn,變量k的值為kn;接入路由器AR1構(gòu)建一個注冊響應(yīng)消息,該注冊響應(yīng)消息的源地址為收到的注冊消息的目的地址,目的地址為收到的注冊消息的源地址,負載為構(gòu)建的加密數(shù)據(jù)塊E,然后發(fā)送該注冊響應(yīng)消息,執(zhí)行步驟109;

步驟106:接入路由器AR1隨機產(chǎn)生兩個正整數(shù)w2和n2,將變量k0的值設(shè)置為秘鑰kn,將變量ID0的值設(shè)置為節(jié)點ID值IDn,將變量j和p的值設(shè)置為1,接入路由器AR1執(zhí)行w2次下述兩個操作產(chǎn)生kw2:先執(zhí)行kj=H(kj-1,xAR1,yAR1,n2,w2),然后將j的值遞增1;接入路由器AR1執(zhí)行w2次下述兩個操作產(chǎn)生IDw2:先執(zhí)行IDp=H(IDp-1,xAR1,yAR1,n2,w2),然后將p的值遞增1;

步驟107:接入路由器AR1查看自己的地址表判斷是否存在當前節(jié)點ID等于IDw2的地址表項,如果有,執(zhí)行步驟106,否則執(zhí)行步驟108;

步驟108:接入路由器AR1根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Msg的值為2,變量Key的值為kn,變量I的值為IDw2,變量k的值為kw2;接入路由器AR1構(gòu)建一個單播地址,該地址的網(wǎng)絡(luò)前綴為0,橫坐標和縱坐標分別為接收到的注冊消息的源地址的橫坐標和縱坐標,節(jié)點ID為IDn;接入路由器AR1構(gòu)建一個注冊響應(yīng)消息,該注冊響應(yīng)消息的源地址為收到的注冊消息的目的地址,目的地址為構(gòu)建的單播地址,負載為構(gòu)建的加密數(shù)據(jù)塊E;接入路由器AR1發(fā)送該注冊響應(yīng)消息,同時在地址表中創(chuàng)建一個地址表項,該地址表項的當前節(jié)點ID和秘鑰為IDw2和kw2;

步驟109:節(jié)點V4收到注冊響應(yīng)消息后,判斷該注冊響應(yīng)消息的目的地址是否與自己發(fā)送的注冊消息的源地址相同,如果是,執(zhí)行步驟110,否則執(zhí)行步驟111;

步驟110:節(jié)點V4執(zhí)行步驟102;

步驟111:節(jié)點V4利用秘鑰kn解密注冊響應(yīng)消息負載中的加密數(shù)據(jù)塊E獲取節(jié)點ID值IDw2和秘鑰kw2,然后將當前節(jié)點ID值IDc設(shè)置為IDw2,將當前秘鑰kc設(shè)置為kw2;

步驟112:結(jié)束。

通過上述過程,節(jié)點可以獲取秘鑰從而進行安全通信。

本發(fā)明所述方法中,每個接入路由器保存一個路由器表,每個路由器表項包括兩個域:接入路由器的網(wǎng)絡(luò)前綴集合和接入路由器的地理坐標;路由器表為預(yù)先設(shè)置,例如接入路由器AR1的坐標為(x1,y1),網(wǎng)絡(luò)前綴集合為{3EFC:1:1:1,3EFC:1:1:2};

如果節(jié)點V4從子網(wǎng)S1向子網(wǎng)S2進行移動,節(jié)點V4的地理坐標為(x4,y4),子網(wǎng)S1的接入路由器為AR1,地理坐標為(xAR1,yAR1),網(wǎng)絡(luò)前綴為GRP1,子網(wǎng)S2的接入路由器為AR2,地理坐標為(xAR2,yAR2),網(wǎng)絡(luò)前綴為GRP2,那么節(jié)點V4執(zhí)行下述切換操作:

步驟201:開始;

步驟202:節(jié)點V4隨機產(chǎn)生兩個正整數(shù)w5和n5,將變量k0的值設(shè)置為當前秘鑰kc,將變量ID0的值設(shè)置為當前節(jié)點ID值IDc,將變量j和p的值設(shè)置為1,節(jié)點V4執(zhí)行w5次下述兩個操作產(chǎn)生kw5:先執(zhí)行kj=H(kj-1,x4,y4,n5,w5),然后將j的值遞增1;節(jié)點V4執(zhí)行w5次下述兩個操作產(chǎn)生IDw5:先執(zhí)行IDp=H(IDp-1,x4,y4,n5,w5),然后將p的值遞增1;最后,節(jié)點V4將下一個秘鑰kn的值設(shè)置為kw5,將下一個節(jié)點ID值IDn的值設(shè)置為IDw5;

步驟203:節(jié)點V4創(chuàng)建一個自己的單播地址,接入路由器AR1的單播地址以及接入路由器AR2的單播地址;在節(jié)點V4自己的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為x4,縱坐標為y4,節(jié)點ID為IDc,在接入路由器AR1的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為xAR1,縱坐標為yAR1,節(jié)點ID為0;在接入路由器AR2的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為xAR2,縱坐標為yAR2,節(jié)點ID為0;然后根據(jù)公式(2)創(chuàng)建加密數(shù)據(jù)塊E4,本步驟中變量Msg的值為5,變量Addr的值為接入路由器AR2的單播地址,變量Key的值為kc,Encrypt1為對稱加密算法,變量I的值為IDn,變量k的值為kn;節(jié)點V4構(gòu)建一個切換消息,該切換消息的源地址為自己的單播地址,目的地址為接入路由器AR1的單播地址,負載為加密數(shù)據(jù)塊E4,最后節(jié)點V4發(fā)送該切換消息;

E4=Encrypt1[Msg,Addr,I,k]Key (2)

步驟204:接入路由器AR1收到切換消息后,查看地址表中當前節(jié)點ID域值等于接收到的切換消息的源地址的節(jié)點ID的地址表項;接入路由器AR1利用該地址表項的當前秘鑰域值kc解密請求消息負載中的加密數(shù)據(jù)塊E4從而獲取節(jié)點ID IDn和秘鑰kn以及接入路由器AR2的單播地址;接入路由器AR1刪除該地址表項,同時查看路由器表通過接入路由器AR2的地理坐標獲取接入路由器AR2的網(wǎng)絡(luò)前綴集合,并從中選取一個網(wǎng)絡(luò)前綴GRP2重建接入路由器AR2的單播地址,該單播地址中,網(wǎng)絡(luò)前綴為GRP2,橫坐標為xAR2,縱坐標為yAR2,節(jié)點ID為0;接入路由器AR1利用公式(1)產(chǎn)生加密數(shù)據(jù)塊E,本步驟中變量key的值為秘鑰kV,變量Msg的類型為5,變量I的值為IDn,變量k的值為kn;接入路由器構(gòu)建一個單播地址,該單播地址的網(wǎng)絡(luò)前綴為GRP1,橫坐標和縱坐標分別為x4和y4,節(jié)點ID為IDc;接入路由器發(fā)送一個切換消息,該切換消息的源地址為構(gòu)建的單播地址,目的地址為接入路由器AR2的單播地址,負載為構(gòu)建的數(shù)據(jù)塊E,然后發(fā)送該切換消息;

步驟205:接入路由器AR2收到切換消息后,利用秘鑰kV解密消息負載中的加密數(shù)據(jù)塊E從而獲取節(jié)點ID IDn和秘鑰kn,接入路由器AR2隨機產(chǎn)生兩個正整數(shù)w6和n6,將變量ID0的值設(shè)置為節(jié)點ID值IDn,將變量p的值設(shè)置為1,接入路由器AR2執(zhí)行w6次下述兩個操作產(chǎn)生IDw6:先執(zhí)行IDp=H(IDp-1,xAR2,yAR2,n6,w6),然后將p的值遞增1;然后執(zhí)行kw6=H(kV,xAR2,yAR2,n6,w6);

步驟206:接入路由器AR2查看自己的地址表判斷是否存在當前節(jié)點ID等于IDw6的地址表項,如果有,執(zhí)行步驟205,否則執(zhí)行步驟207;

步驟207:接入路由器AR2查看地址表是否存在當前節(jié)點ID為IDn的地址表項,如果是,執(zhí)行步驟209,否則執(zhí)行步驟208;

步驟208:接入路由器AR2創(chuàng)建一個地址表項,當前節(jié)點ID和當前秘鑰分別設(shè)置為IDw6和kw6,然后根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Key的值為kV,變量Msg的值為6,變量I的值為IDw,6,變量k的值為kw6;接入路由器AR2構(gòu)建一個單播地址,該單播地址的網(wǎng)絡(luò)前綴為0,橫坐標和縱坐標分別為接收到的切換消息的源地址的橫坐標和縱坐標,節(jié)點ID為IDn;接入路由器AR2發(fā)送一個切換響應(yīng)消息,該切換響應(yīng)消息的目的地址為構(gòu)建的單播地址,源地址為接收到的切換消息的目的地址,切換響應(yīng)消息負載為數(shù)據(jù)塊E,然后發(fā)送該切換響應(yīng)消息,執(zhí)行步驟210;

步驟209:接入路由器AR2創(chuàng)建一個地址表項,當前節(jié)點ID和當前秘鑰分別設(shè)置為IDw6和kw6,根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Key的值為kV,變量Msg的值為6,變量I的值為IDw,6,變量k的值為kw6;接入路由器AR2發(fā)送一個切換響應(yīng)消息,該切換響應(yīng)消息的目的地址為接收到的切換消息的源地址,源地址為接收到的切換消息的目的地址,消息負載為數(shù)據(jù)塊E,然后發(fā)送該切換響應(yīng)消息;

步驟210:節(jié)點V4接收到切換響應(yīng)消息后,根據(jù)響應(yīng)消息的目的地址的網(wǎng)絡(luò)前綴GRP2,使用秘鑰kV解密消息負載中的數(shù)據(jù)塊E獲取節(jié)點ID IDw6和秘鑰kw6,將當前節(jié)點ID的IDc的值設(shè)置為IDw6,將當前秘鑰kc的值設(shè)置為kw6;

步驟211:結(jié)束。

上述切換過程可以確保節(jié)點在移動過程中通信的連續(xù)性和安全性。

本發(fā)明所述方法中,節(jié)點V4位于子網(wǎng)S1中,當前的地理坐標為(x3,y3),子網(wǎng)S1的接入路由器為AR1,接入路由器AR1的網(wǎng)絡(luò)前綴為GRP1,地理坐標為(xAR1,yAR1),節(jié)點V4有權(quán)限訪問遠程服務(wù)器S1并從第三方認證數(shù)據(jù)中心獲取秘鑰kS1;遠程服務(wù)器S1的單播地址為Addr1且位于子網(wǎng)S2內(nèi),子網(wǎng)S2的接入路由器為AR2,接入路由器AR2的網(wǎng)絡(luò)前綴為GRP2,節(jié)點V4通過下述步驟實現(xiàn)與遠程服務(wù)器的安全通信:

步驟301:開始;

步驟302:節(jié)點V4隨機產(chǎn)生兩個正整數(shù)w3和n3,將變量k0的值設(shè)置為當前秘鑰kc,將變量ID0的值設(shè)置為當前節(jié)點ID IDc,將變量j和p的值設(shè)置為1,節(jié)點V4執(zhí)行w3次下述兩個操作產(chǎn)生kw3:先執(zhí)行kj=H(kj-1,x3,y3,n3,w3),然后將j的值遞增1;節(jié)點V4執(zhí)行w3次下述兩個操作產(chǎn)生IDw3:先執(zhí)行IDp=H(IDp-1,x3,y3,n3,w3),然后將p的值遞增1;最后,節(jié)點V4將下一個秘鑰kn的值設(shè)置為kw3,將下一個節(jié)點ID IDn的值設(shè)置為IDw3;

步驟303:節(jié)點V4創(chuàng)建一個自己的單播地址,在自己的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為x3,縱坐標為y3,節(jié)點ID為IDc,然后根據(jù)公式(3)和公式(4)創(chuàng)建加密數(shù)據(jù)塊E1和E2;公式(3)中,變量Msg的值為3,變量Key的值為kS1,Encrypt1為對稱加密算法;公式(4)中,變量I的值為IDn,變量k的值為kn,變量Key的值為kc;然后節(jié)點V4構(gòu)建一個請求消息,該請求消息的源地址為自己的單播地址,目的地址為單播地址Addr1,負載為加密數(shù)據(jù)塊E1和E2,最后節(jié)點V4發(fā)送該請求消息,該請求消息首先到達接入路由器AR1;

E1=Encrypt1[Msg]Key (3)

E2=Encrypt1[I,k]Key (4)

步驟304:接入路由器AR1收到請求消息后,查看地址表中當前節(jié)點ID域值等于接收到的請求消息的源地址的節(jié)點ID的地址表項,然后利用該地址表項的當前秘鑰域值kc解密請求消息負載中的加密數(shù)據(jù)塊E2從而獲取節(jié)點ID IDn和秘鑰kn;接入路由器AR1查看自己的地址表判斷是否存在當前節(jié)點ID等于IDn的地址表項,如果存在,執(zhí)行步驟308,否則執(zhí)行步驟305;

步驟305:接入路由器AR1隨機產(chǎn)生兩個正整數(shù)w4和n4,將變量k0的值設(shè)置為秘鑰kn,將變量ID0的值設(shè)置為節(jié)點ID值IDn,將變量j和p的值設(shè)置為1;接入路由器AR1執(zhí)行w4次下述兩個操作產(chǎn)生kw4:先執(zhí)行kj=H(kj-1,xAR1,yAR1,n4,w4),然后將j的值遞增1;接入路由器AR1執(zhí)行w4次下述兩個操作產(chǎn)生IDw4:先執(zhí)行IDp=H(IDp-1,xAR1,yAR1,n4,w4),然后將p的值遞增1;

步驟306:接入路由器AR1查看自己的地址表判斷是否存在當前節(jié)點ID等于IDw4的地址表項,如果有,執(zhí)行步驟305,否則執(zhí)行步驟307;

步驟307:接入路由器AR1根據(jù)公式(4)創(chuàng)建加密數(shù)據(jù)塊E2,本步驟中變量Key的值為kn,變量I的值為IDw4,變量k的值為kw4;接入路由器AR1構(gòu)建一個單播地址,該單播地址的網(wǎng)絡(luò)前綴為GRP1,橫坐標和縱坐標分別為接收到的請求消息的源地址的橫坐標和縱坐標,節(jié)點ID為IDn;接入路由器AR1將接收到的請求消息的源地址更新為構(gòu)建的單播地址,將請求消息負載中的加密數(shù)據(jù)塊E2更新為新構(gòu)建的加密數(shù)據(jù)塊E2;接入路由器AR1發(fā)送該請求消息;接入路由器AR1更新當前節(jié)點ID域值為IDc的地址表項,即將該地址表項的當前節(jié)點ID和當前秘鑰分別設(shè)置為IDw4和kw4,執(zhí)行步驟311;

步驟308:接入路由器AR1隨機產(chǎn)生兩個正整數(shù)w4和n4,將變量k0的值設(shè)置為秘鑰kc,將變量ID0的值設(shè)置為節(jié)點ID IDc,將變量j和p的值設(shè)置為1;接入路由器AR1執(zhí)行w4次下述兩個操作產(chǎn)生kw4:先執(zhí)行kj=H(kj-1,xAR1,yAR1,n4,w4),然后將j的值遞增1;接入路由器AR1執(zhí)行w4次下述兩個操作產(chǎn)生IDw4:先執(zhí)行IDp=H(IDp-1,xAR1,yAR1,n4,w4),然后將p的值遞增1;

步驟309:接入路由器AR1查看自己的地址表判斷是否存在當前節(jié)點ID等于IDw4的地址表項,如果有,執(zhí)行步驟308,否則執(zhí)行步驟310;

步驟310:接入路由器AR1根據(jù)公式(4)創(chuàng)建加密數(shù)據(jù)塊E2,本步驟中變量Key的值為kc,變量I的值為IDw4,變量k的值為kw4;接入路由器AR1構(gòu)建一個單播地址,該單播地址的網(wǎng)絡(luò)前綴為GRP1,橫坐標和縱坐標分別為接收到的請求消息的源地址的橫坐標和縱坐標,節(jié)點ID為IDc;接入路由器AR1將接收到的請求消息的源地址更新為構(gòu)建的單播地址,將請求消息負載中的加密數(shù)據(jù)塊E2更新為新構(gòu)建的加密數(shù)據(jù)塊E2;接入路由器AR1發(fā)送該請求消息;接入路由器AR1更新當前節(jié)點ID域值為IDc的地址表項,即將該地址表項的當前節(jié)點ID和當前秘鑰分別設(shè)置為IDw4和kw4;

步驟311:接入路由器AR2接收到請求消息后,將該請求消息轉(zhuǎn)發(fā)給遠程服務(wù)器S1,遠程服務(wù)器S1接收到請求消息后,利用秘鑰kS1解密加密消息負載中的加密數(shù)據(jù)塊E1獲取消息類型,然后根據(jù)公式(5)獲取加密數(shù)據(jù)塊E3,公式(5)中,變量Msg的值為4,變量Data的值為響應(yīng)數(shù)據(jù),變量Key的值為kS1;接入路由器AR2發(fā)送一個響應(yīng)消息,該響應(yīng)消息的目的地址為接收到的請求消息的源地址,源地址為接收到請求消息的目的地址,負載為接收到的請求消息負載中的加密數(shù)據(jù)塊E2和加密數(shù)據(jù)塊E3;

E3=Encrypt1[Msg,Data]Key (5)

步驟312:接入路由器AR1接收到響應(yīng)消息后,將該響應(yīng)消息轉(zhuǎn)發(fā)給節(jié)點V4,節(jié)點V4接收到響應(yīng)消息后,利用秘鑰kS1解密消息負載中的數(shù)據(jù)塊E3以獲取響應(yīng)數(shù)據(jù),如果響應(yīng)消息的目的地址的節(jié)點ID為當前節(jié)點ID為IDc,則使用秘鑰kc解密消息負載中的數(shù)據(jù)塊E2以獲取節(jié)點ID值IDw4和秘鑰kw4,否則使用秘鑰kn解密消息負載中的數(shù)據(jù)塊E2以獲取節(jié)點ID值IDw4和秘鑰kw4;節(jié)點V4將當前節(jié)點ID IDc的值設(shè)置為IDw4,將當前秘鑰kc的值設(shè)置為kw4;

步驟313:結(jié)束。

上述切換過程可以確保節(jié)點通信的連續(xù)性和安全性

有益效果:本發(fā)明提供了一種安全的無線網(wǎng)絡(luò)通信方法,所述節(jié)點通過本發(fā)明所提供的實現(xiàn)方法可安全獲取網(wǎng)絡(luò)提供的數(shù)據(jù)服務(wù),同時能夠確保安全性,縮短數(shù)據(jù)獲取延遲和代價,提高服務(wù)質(zhì)量,本發(fā)明可應(yīng)用于重要信息的傳輸,例如私人信息監(jiān)測、醫(yī)療健康等領(lǐng)域,具有廣泛的應(yīng)用前景。

附圖說明

下面結(jié)合附圖和具體實施方式對本發(fā)明做更進一步的具體說明,本發(fā)明的上述和/或其他方面的優(yōu)點將會變得更加清楚。

圖1為本發(fā)明所述的注冊流程示意圖。

圖2為本發(fā)明所述的切換流程示意圖。

圖3為本發(fā)明所述的通信流程示意圖。

具體實施方式:

本發(fā)明提供了一種安全的無線網(wǎng)絡(luò)通信方法,所述節(jié)點通過本發(fā)明所提供的實現(xiàn)方法可安全獲取網(wǎng)絡(luò)提供的數(shù)據(jù)服務(wù),同時能夠確保安全性,縮短數(shù)據(jù)獲取延遲和代價,提高服務(wù)質(zhì)量,本發(fā)明可應(yīng)用于重要信息的傳輸,例如私人信息監(jiān)測、醫(yī)療健康等領(lǐng)域,具有廣泛的應(yīng)用前景。

圖1為本發(fā)明所述的注冊流程示意圖。包括遠程服務(wù)器和第三方認證數(shù)據(jù)中心,所述無線網(wǎng)絡(luò)包括接入路由器和節(jié)點;接入路由器包括一個無線接口和兩個以上的有線接口,有線接口用于連接路由骨干網(wǎng),無線接口用于與節(jié)點通信;節(jié)點通過距離自己最近的接入路由器實現(xiàn)通信,一個接入路由器以及通過該接入路由器實現(xiàn)通信的所有節(jié)點構(gòu)成一個子網(wǎng);一個子網(wǎng)內(nèi)的所有節(jié)點具有相同網(wǎng)絡(luò)前綴,一個節(jié)點通過所在子網(wǎng)的接入路由器從遠程服務(wù)器獲取數(shù)據(jù);

遠程服務(wù)器S1向第三方認證數(shù)據(jù)中心進行注冊后,第三方認證數(shù)據(jù)中心向服務(wù)器S1簽發(fā)一個秘鑰kS1,同時保存遠程服務(wù)器S1的地址以及簽發(fā)的秘鑰;

節(jié)點具有唯一的ID,例如硬件ID,節(jié)點向第三方認證數(shù)據(jù)中心進行注冊后,第三方認證數(shù)據(jù)中心向遠程服務(wù)器簽發(fā)一個秘鑰kV和單向哈希函數(shù)H,秘鑰kV用于實現(xiàn)與接入路由器的安全通信,單向哈希函數(shù)H用于產(chǎn)生秘鑰;

接入路由器具有唯一的網(wǎng)絡(luò)前綴,該網(wǎng)絡(luò)前綴預(yù)先設(shè)置,例如3EFC:1:1:1::/64,接入路由器向第三方認證數(shù)據(jù)中心進行注冊后,第三方認證數(shù)據(jù)中心向服節(jié)點簽發(fā)秘鑰kV和單向哈希函數(shù)H,秘鑰kV用于實現(xiàn)與節(jié)點的安全通信,單向哈希函數(shù)H用于產(chǎn)生秘鑰;

如果節(jié)點為有權(quán)限訪問遠程服務(wù)器S1的授權(quán)用戶設(shè)備,則第三方認證數(shù)據(jù)中心向該節(jié)點提供遠程服務(wù)器S1的秘鑰kS1;

節(jié)點或者接入路由器的單播地址包括網(wǎng)絡(luò)前綴和鏈路地址兩個部分,鏈路地址包括橫坐標、縱坐標和節(jié)點ID三個部分,接入路由器的節(jié)點ID為0;

無線網(wǎng)絡(luò)中消息負載的第一個字節(jié)定義消息的類型;注冊消息由消息類型值1定義;注冊響應(yīng)消息由消息類型值2定義;請求消息由消息類型值3定義;響應(yīng)消息由消息類型值4定義;切換消息由消息類型值5定義;切換響應(yīng)消息由消息類型值6定義;

接入路由器維護一個地址表,用于記錄所在子網(wǎng)中所有節(jié)點的信息,一個地址表項由3個域構(gòu)成,包括當前節(jié)點ID,當前秘鑰以及生命周期,生命周期設(shè)置時間一般設(shè)置為24小時;

如果接入路由器檢測到一個地址表項的生命周期衰減為0,則刪除該地址表項;

接入路由器定期廣播信標幀,信標幀的源地址為該接入路由器的鏈路地址,該鏈路地址的橫坐標和縱坐標為該接入路由器的橫坐標和縱坐標,節(jié)點ID為0;節(jié)點接收到接入路由器的信標幀后,判斷自己是否距離該接入路由器最近,如果是,則保存該接入路由器的鏈路地址并向鄰居節(jié)點轉(zhuǎn)發(fā)該信標幀,否則,則丟棄該信標幀;

每個節(jié)點保存當前節(jié)點ID值IDc,當前秘鑰kc,下一個節(jié)點ID值IDn以及下一個秘鑰kn。IDc,kc,IDn,kn是變量名稱,下標c是current的首字母,下標n是next的首字母。

本發(fā)明所述方法中,在節(jié)點V4具有唯一的ID值IDV,最近的接入路由器為AR1,接入路由器AR1的地理坐標為(xAR1,yAR1),節(jié)點V4向第三方認證數(shù)據(jù)中心進行注冊后獲取了秘鑰kV和單向哈希函數(shù)H,節(jié)點V4將當前節(jié)點ID IDc的值設(shè)置為IDV,將當前秘鑰kc的值設(shè)置為kV的條件下,如果節(jié)點V4的當前地理坐標為(x1,y1),那么通過下述步驟向接入路由器AR1執(zhí)行注冊操作:

步驟101:開始;

步驟102:節(jié)點V4隨機產(chǎn)生兩個正整數(shù)w1和n1,將變量k0的值設(shè)置為kc,將變量ID0的值設(shè)置為IDc,將變量j和p的值設(shè)置為1,節(jié)點V4執(zhí)行w1次下述兩個操作產(chǎn)生kw1:先執(zhí)行kj=H(kj-1,x1,y1,n1,w1),然后將j的值遞增1,H是單項哈希函數(shù),kj-1,x1,y1,n1,w1為H的輸入?yún)?shù),H(kj-1,x1,y1,n1,w1)的哈希值賦給變量kj;節(jié)點V4執(zhí)行w1次下述兩個操作產(chǎn)生IDw1:先執(zhí)行IDp=H(IDp-1,x1,y1,n1,w1),然后將p的值遞增1,H是單項哈希函數(shù),IDp-1,x1,y1,n1,w1為H的輸入?yún)?shù),H(IDp-1,x1,y1,n1,w1)的哈希值賦給變量IDp;最后,節(jié)點V4將變量kn的值設(shè)置為kw1,將變量IDn的值設(shè)置為IDw1

步驟103:節(jié)點V4創(chuàng)建一個自己的單播地址和接入路由器AR1的單播地址,在自己的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為x1,縱坐標為y1,節(jié)點ID為IDc;在接入路由器的單播地址中,網(wǎng)絡(luò)前綴為0,鏈路地址為接入路由器AR1的鏈路地址;節(jié)點V4根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Msg的值為1,變量Key的值為kc,變量I的值為IDn,變量k的值為kn,Encrypt1為對稱加密算法;然后節(jié)點V4構(gòu)建一個注冊消息,該注冊消息的源地址為自己的單播地址,目的地址為接入路由器AR1的單播地址,負載為加密數(shù)據(jù)塊E,最后節(jié)點V4發(fā)送該注冊消息;

E=Encrypt1[Msg,I,k]Key (1)

步驟104:接入路由器AR1收到注冊消息后,利用秘鑰kV解密注冊消息負載中的加密數(shù)據(jù)塊E并獲取了節(jié)點ID值IDn和秘鑰kn,查看自己的地址表判斷是否存在當前節(jié)點ID等于節(jié)點ID IDn的地址表項,如果存在,則執(zhí)行步驟105,否則執(zhí)行步驟106;

步驟105:接入路由器AR1根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Msg的值為2,變量Key的值為kc,變量I的值為IDn,變量k的值為kn;接入路由器AR1構(gòu)建一個注冊響應(yīng)消息,該注冊響應(yīng)消息的源地址為收到的注冊消息的目的地址,目的地址為收到的注冊消息的源地址,負載為構(gòu)建的加密數(shù)據(jù)塊E,然后發(fā)送該注冊響應(yīng)消息,執(zhí)行步驟109;

步驟106:接入路由器AR1隨機產(chǎn)生兩個正整數(shù)w2和n2,將變量k0的值設(shè)置為秘鑰kn,將變量ID0的值設(shè)置為節(jié)點ID值IDn,將變量j和p的值設(shè)置為1,接入路由器AR1執(zhí)行w2次下述兩個操作產(chǎn)生kw2:先執(zhí)行kj=H(kj-1,xAR1,yAR1,n2,w2),然后將j的值遞增1;接入路由器AR1執(zhí)行w2次下述兩個操作產(chǎn)生IDw2:先執(zhí)行IDp=H(IDp-1,xAR1,yAR1,n2,w2),然后將p的值遞增1;

步驟107:接入路由器AR1查看自己的地址表判斷是否存在當前節(jié)點ID等于IDw2的地址表項,如果有,執(zhí)行步驟106,否則執(zhí)行步驟108;

步驟108:接入路由器AR1根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Msg的值為2,變量Key的值為kn,變量I的值為IDw2,變量k的值為kw2;接入路由器AR1構(gòu)建一個單播地址,該地址的網(wǎng)絡(luò)前綴為0,橫坐標和縱坐標分別為接收到的注冊消息的源地址的橫坐標和縱坐標,節(jié)點ID為IDn;接入路由器AR1構(gòu)建一個注冊響應(yīng)消息,該注冊響應(yīng)消息的源地址為收到的注冊消息的目的地址,目的地址為構(gòu)建的單播地址,負載為構(gòu)建的加密數(shù)據(jù)塊E;接入路由器AR1發(fā)送該注冊響應(yīng)消息,同時在地址表中創(chuàng)建一個地址表項,該地址表項的當前節(jié)點ID和秘鑰為IDw2和kw2;

步驟109:節(jié)點V4收到注冊響應(yīng)消息后,判斷該注冊響應(yīng)消息的目的地址是否與自己發(fā)送的注冊消息的源地址相同,如果是,執(zhí)行步驟110,否則執(zhí)行步驟111;

步驟110:節(jié)點V4執(zhí)行步驟102;

步驟111:節(jié)點V4利用秘鑰kn解密注冊響應(yīng)消息負載中的加密數(shù)據(jù)塊E獲取節(jié)點ID值IDw2和秘鑰kw2,然后將當前節(jié)點ID值IDc設(shè)置為IDw2,將當前秘鑰kc設(shè)置為kw2;

步驟112:結(jié)束。

通過上述過程,節(jié)點可以獲取秘鑰從而進行安全通信。

圖2為本發(fā)明所述的切換流程示意圖。每個接入路由器保存一個路由器表,每個路由器表項包括兩個域:接入路由器的網(wǎng)絡(luò)前綴集合和接入路由器的地理坐標;路由器表為預(yù)先設(shè)置,例如接入路由器AR1的坐標為(x1,y1),網(wǎng)絡(luò)前綴集合為{3EFC:1:1:1,3EFC:1:1:2};

如果節(jié)點V4從子網(wǎng)S1向子網(wǎng)S2進行移動,節(jié)點V4的地理坐標為(x4,y4),子網(wǎng)S1的接入路由器為AR1,地理坐標為(xAR1,yAR1),網(wǎng)絡(luò)前綴為GRP1,子網(wǎng)S2的接入路由器為AR2,地理坐標為(xAR2,yAR2),網(wǎng)絡(luò)前綴為GRP2,那么節(jié)點V4執(zhí)行下述切換操作:

步驟201:開始;

步驟202:節(jié)點V4隨機產(chǎn)生兩個正整數(shù)w5和n5,將變量k0的值設(shè)置為當前秘鑰kc,將變量ID0的值設(shè)置為當前節(jié)點ID值IDc,將變量j和p的值設(shè)置為1,節(jié)點V4執(zhí)行w5次下述兩個操作產(chǎn)生kw5:先執(zhí)行kj=H(kj-1,x4,y4,n5,w5),然后將j的值遞增1;節(jié)點V4執(zhí)行w5次下述兩個操作產(chǎn)生IDw5:先執(zhí)行IDp=H(IDp-1,x4,y4,n5,w5),然后將p的值遞增1;最后,節(jié)點V4將下一個秘鑰kn的值設(shè)置為kw5,將下一個節(jié)點ID值IDn的值設(shè)置為IDw5

步驟203:節(jié)點V4創(chuàng)建一個自己的單播地址,接入路由器AR1的單播地址以及接入路由器AR2的單播地址;在節(jié)點V4自己的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為x4,縱坐標為y4,節(jié)點ID為IDc,在接入路由器AR1的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為xAR1,縱坐標為yAR1,節(jié)點ID為0;在接入路由器AR2的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為xAR2,縱坐標為yAR2,節(jié)點ID為0;然后根據(jù)公式(2)創(chuàng)建加密數(shù)據(jù)塊E4,本步驟中變量Msg的值為5,變量Addr的值為接入路由器AR2的單播地址,變量Key的值為kc,Encrypt1為對稱加密算法,變量I的值為IDn,變量k的值為kn;節(jié)點V4構(gòu)建一個切換消息,該切換消息的源地址為自己的單播地址,目的地址為接入路由器AR1的單播地址,負載為加密數(shù)據(jù)塊E4,最后節(jié)點V4發(fā)送該切換消息;

E4=Encrypt1[Msg,Addr,I,k]Key (2)

步驟204:接入路由器AR1收到切換消息后,查看地址表中當前節(jié)點ID域值等于接收到的切換消息的源地址的節(jié)點ID的地址表項;接入路由器AR1利用該地址表項的當前秘鑰域值kc解密請求消息負載中的加密數(shù)據(jù)塊E4從而獲取節(jié)點ID IDn和秘鑰kn以及接入路由器AR2的單播地址;接入路由器AR1刪除該地址表項,同時查看路由器表通過接入路由器AR2的地理坐標獲取接入路由器AR2的網(wǎng)絡(luò)前綴集合,并從中選取一個網(wǎng)絡(luò)前綴GRP2重建接入路由器AR2的單播地址,該單播地址中,網(wǎng)絡(luò)前綴為GRP2,橫坐標為xAR2,縱坐標為yAR2,節(jié)點ID為0;接入路由器AR1利用公式(1)產(chǎn)生加密數(shù)據(jù)塊E,本步驟中變量key的值為秘鑰kV,變量Msg的類型為5,變量I的值為IDn,變量k的值為kn;接入路由器構(gòu)建一個單播地址,該單播地址的網(wǎng)絡(luò)前綴為GRP1,橫坐標和縱坐標分別為x4和y4,節(jié)點ID為IDc;接入路由器發(fā)送一個切換消息,該切換消息的源地址為構(gòu)建的單播地址,目的地址為接入路由器AR2的單播地址,負載為構(gòu)建的數(shù)據(jù)塊E,然后發(fā)送該切換消息;

步驟205:接入路由器AR2收到切換消息后,利用秘鑰kV解密消息負載中的加密數(shù)據(jù)塊E從而獲取節(jié)點ID IDn和秘鑰kn,接入路由器AR2隨機產(chǎn)生兩個正整數(shù)w6和n6,將變量ID0的值設(shè)置為節(jié)點ID值IDn,將變量p的值設(shè)置為1,接入路由器AR2執(zhí)行w6次下述兩個操作產(chǎn)生IDw6:先執(zhí)行IDp=H(IDp-1,xAR2,yAR2,n6,w6),然后將p的值遞增1;然后執(zhí)行kw6=H(kV,xAR2,yAR2,n6,w6);

步驟206:接入路由器AR2查看自己的地址表判斷是否存在當前節(jié)點ID等于IDw6的地址表項,如果有,執(zhí)行步驟205,否則執(zhí)行步驟207;

步驟207:接入路由器AR2查看地址表是否存在當前節(jié)點ID為IDn的地址表項,如果是,執(zhí)行步驟209,否則執(zhí)行步驟208;

步驟208:接入路由器AR2創(chuàng)建一個地址表項,當前節(jié)點ID和當前秘鑰分別設(shè)置為IDw6和kw6,然后根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Key的值為kV,變量Msg的值為6,變量I的值為IDw,6,變量k的值為kw6;接入路由器AR2構(gòu)建一個單播地址,該單播地址的網(wǎng)絡(luò)前綴為0,橫坐標和縱坐標分別為接收到的切換消息的源地址的橫坐標和縱坐標,節(jié)點ID為IDn;接入路由器AR2發(fā)送一個切換響應(yīng)消息,該切換響應(yīng)消息的目的地址為構(gòu)建的單播地址,源地址為接收到的切換消息的目的地址,切換響應(yīng)消息負載為數(shù)據(jù)塊E,然后發(fā)送該切換響應(yīng)消息,執(zhí)行步驟210;

步驟209:接入路由器AR2創(chuàng)建一個地址表項,當前節(jié)點ID和當前秘鑰分別設(shè)置為IDw6和kw6,根據(jù)公式(1)創(chuàng)建加密數(shù)據(jù)塊E,本步驟中變量Key的值為kV,變量Msg的值為6,變量I的值為IDw,6,變量k的值為kw6;接入路由器AR2發(fā)送一個切換響應(yīng)消息,該切換響應(yīng)消息的目的地址為接收到的切換消息的源地址,源地址為接收到的切換消息的目的地址,消息負載為數(shù)據(jù)塊E,然后發(fā)送該切換響應(yīng)消息;

步驟210:節(jié)點V4接收到切換響應(yīng)消息后,根據(jù)響應(yīng)消息的目的地址的網(wǎng)絡(luò)前綴GRP2,使用秘鑰kV解密消息負載中的數(shù)據(jù)塊E獲取節(jié)點ID IDw6和秘鑰kw6,將當前節(jié)點ID的IDc的值設(shè)置為IDw6,將當前秘鑰kc的值設(shè)置為kw6

步驟211:結(jié)束。

上述切換過程可以確保節(jié)點在移動過程中通信的連續(xù)性和安全性。

圖3為本發(fā)明所述的通信流程示意圖。節(jié)點V4位于子網(wǎng)S1中,當前的地理坐標為(x3,y3),子網(wǎng)S1的接入路由器為AR1,接入路由器AR1的網(wǎng)絡(luò)前綴為GRP1,地理坐標為(xAR1,yAR1),節(jié)點V4有權(quán)限訪問遠程服務(wù)器S1并從第三方認證數(shù)據(jù)中心獲取秘鑰kS1;遠程服務(wù)器S1的單播地址為Addr1且位于子網(wǎng)S2內(nèi),子網(wǎng)S2的接入路由器為AR2,接入路由器AR2的網(wǎng)絡(luò)前綴為GRP2,節(jié)點V4通過下述步驟實現(xiàn)與遠程服務(wù)器的安全通信:

步驟301:開始;

步驟302:節(jié)點V4隨機產(chǎn)生兩個正整數(shù)w3和n3,將變量k0的值設(shè)置為當前秘鑰kc,將變量ID0的值設(shè)置為當前節(jié)點ID IDc,將變量j和p的值設(shè)置為1,節(jié)點V4執(zhí)行w3次下述兩個操作產(chǎn)生kw3:先執(zhí)行kj=H(kj-1,x3,y3,n3,w3),然后將j的值遞增1;節(jié)點V4執(zhí)行w3次下述兩個操作產(chǎn)生IDw3:先執(zhí)行IDp=H(IDp-1,x3,y3,n3,w3),然后將p的值遞增1;最后,節(jié)點V4將下一個秘鑰kn的值設(shè)置為kw3,將下一個節(jié)點ID IDn的值設(shè)置為IDw3;

步驟303:節(jié)點V4創(chuàng)建一個自己的單播地址,在自己的單播地址中,網(wǎng)絡(luò)前綴為0,橫坐標為x3,縱坐標為y3,節(jié)點ID為IDc,然后根據(jù)公式(3)和公式(4)創(chuàng)建加密數(shù)據(jù)塊E1和E2;公式(3)中,變量Msg的值為3,變量Key的值為kS1,Encrypt1為對稱加密算法;公式(4)中,變量I的值為IDn,變量k的值為kn,變量Key的值為kc;然后節(jié)點V4構(gòu)建一個請求消息,該請求消息的源地址為自己的單播地址,目的地址為單播地址Addr1,負載為加密數(shù)據(jù)塊E1和E2,最后節(jié)點V4發(fā)送該請求消息,該請求消息首先到達接入路由器AR1;

E1=Encrypt1[Msg]Key (3)

E2=Encrypt1[I,k]Key (4)

步驟304:接入路由器AR1收到請求消息后,查看地址表中當前節(jié)點ID域值等于接收到的請求消息的源地址的節(jié)點ID的地址表項,然后利用該地址表項的當前秘鑰域值kc解密請求消息負載中的加密數(shù)據(jù)塊E2從而獲取節(jié)點ID IDn和秘鑰kn;接入路由器AR1查看自己的地址表判斷是否存在當前節(jié)點ID等于IDn的地址表項,如果存在,執(zhí)行步驟308,否則執(zhí)行步驟305;

步驟305:接入路由器AR1隨機產(chǎn)生兩個正整數(shù)w4和n4,將變量k0的值設(shè)置為秘鑰kn,將變量ID0的值設(shè)置為節(jié)點ID值IDn,將變量j和p的值設(shè)置為1;接入路由器AR1執(zhí)行w4次下述兩個操作產(chǎn)生kw4:先執(zhí)行kj=H(kj-1,xAR1,yAR1,n4,w4),然后將j的值遞增1;接入路由器AR1執(zhí)行w4次下述兩個操作產(chǎn)生IDw4:先執(zhí)行IDp=H(IDp-1,xAR1,yAR1,n4,w4),然后將p的值遞增1;

步驟306:接入路由器AR1查看自己的地址表判斷是否存在當前節(jié)點ID等于IDw4的地址表項,如果有,執(zhí)行步驟305,否則執(zhí)行步驟307;

步驟307:接入路由器AR1根據(jù)公式(4)創(chuàng)建加密數(shù)據(jù)塊E2,本步驟中變量Key的值為kn,變量I的值為IDw4,變量k的值為kw4;接入路由器AR1構(gòu)建一個單播地址,該單播地址的網(wǎng)絡(luò)前綴為GRP1,橫坐標和縱坐標分別為接收到的請求消息的源地址的橫坐標和縱坐標,節(jié)點ID為IDn;接入路由器AR1將接收到的請求消息的源地址更新為構(gòu)建的單播地址,將請求消息負載中的加密數(shù)據(jù)塊E2更新為新構(gòu)建的加密數(shù)據(jù)塊E2;接入路由器AR1發(fā)送該請求消息;接入路由器AR1更新當前節(jié)點ID域值為IDc的地址表項,即將該地址表項的當前節(jié)點ID和當前秘鑰分別設(shè)置為IDw4和kw4,執(zhí)行步驟311;

步驟308:接入路由器AR1隨機產(chǎn)生兩個正整數(shù)w4和n4,將變量k0的值設(shè)置為秘鑰kc,將變量ID0的值設(shè)置為節(jié)點ID IDc,將變量j和p的值設(shè)置為1;接入路由器AR1執(zhí)行w4次下述兩個操作產(chǎn)生kw4:先執(zhí)行kj=H(kj-1,xAR1,yAR1,n4,w4),然后將j的值遞增1;接入路由器AR1執(zhí)行w4次下述兩個操作產(chǎn)生IDw4:先執(zhí)行IDp=H(IDp-1,xAR1,yAR1,n4,w4),然后將p的值遞增1;

步驟309:接入路由器AR1查看自己的地址表判斷是否存在當前節(jié)點ID等于IDw4的地址表項,如果有,執(zhí)行步驟308,否則執(zhí)行步驟310;

步驟310:接入路由器AR1根據(jù)公式(4)創(chuàng)建加密數(shù)據(jù)塊E2,本步驟中變量Key的值為kc,變量I的值為IDw4,變量k的值為kw4;接入路由器AR1構(gòu)建一個單播地址,該單播地址的網(wǎng)絡(luò)前綴為GRP1,橫坐標和縱坐標分別為接收到的請求消息的源地址的橫坐標和縱坐標,節(jié)點ID為IDc;接入路由器AR1將接收到的請求消息的源地址更新為構(gòu)建的單播地址,將請求消息負載中的加密數(shù)據(jù)塊E2更新為新構(gòu)建的加密數(shù)據(jù)塊E2;接入路由器AR1發(fā)送該請求消息;接入路由器AR1更新當前節(jié)點ID域值為IDc的地址表項,即將該地址表項的當前節(jié)點ID和當前秘鑰分別設(shè)置為IDw4和kw4

步驟311:接入路由器AR2接收到請求消息后,將該請求消息轉(zhuǎn)發(fā)給遠程服務(wù)器S1,遠程服務(wù)器S1接收到請求消息后,利用秘鑰kS1解密加密消息負載中的加密數(shù)據(jù)塊E1獲取消息類型,然后根據(jù)公式(5)獲取加密數(shù)據(jù)塊E3,公式(5)中,變量Msg的值為4,變量Data的值為響應(yīng)數(shù)據(jù),變量Key的值為kS1;接入路由器AR2發(fā)送一個響應(yīng)消息,該響應(yīng)消息的目的地址為接收到的請求消息的源地址,源地址為接收到請求消息的目的地址,負載為接收到的請求消息負載中的加密數(shù)據(jù)塊E2和加密數(shù)據(jù)塊E3;

E3=Encrypt1[Msg,Data]Key (5)

步驟312:接入路由器AR1接收到響應(yīng)消息后,將該響應(yīng)消息轉(zhuǎn)發(fā)給節(jié)點V4,節(jié)點V4接收到響應(yīng)消息后,利用秘鑰kS1解密消息負載中的數(shù)據(jù)塊E3以獲取響應(yīng)數(shù)據(jù),如果響應(yīng)消息的目的地址的節(jié)點ID為當前節(jié)點ID為IDc,則使用秘鑰kc解密消息負載中的數(shù)據(jù)塊E2以獲取節(jié)點ID值IDw4和秘鑰kw4,否則使用秘鑰kn解密消息負載中的數(shù)據(jù)塊E2以獲取節(jié)點ID值IDw4和秘鑰kw4;節(jié)點V4將當前節(jié)點ID IDc的值設(shè)置為IDw4,將當前秘鑰kc的值設(shè)置為kw4;

步驟313:結(jié)束。

上述切換過程可以確保節(jié)點通信的連續(xù)性和安全性。

實施例1

基于表1的仿真參數(shù),本實施例模擬了本發(fā)明中的無線網(wǎng)絡(luò)通信方法,性能分析如下:當網(wǎng)絡(luò)面積和節(jié)點數(shù)量不變,數(shù)據(jù)負載越大,通信延遲和功耗越大,節(jié)點與接入路由器的距離越遠,通信延遲和功耗也越大。安全通信的平均延遲為100毫秒,平均功耗為2.8mJ。

表1仿真參數(shù)

本發(fā)明提供了一種安全的無線網(wǎng)絡(luò)通信方法的思路,具體實現(xiàn)該技術(shù)方案的方法和途徑很多,以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。本實施例中未明確的各組成部份均可用現(xiàn)有技術(shù)加以實現(xiàn)。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1